<?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>223453</bug_id>
          
          <creation_ts>2021-03-18 10:56:04 -0700</creation_ts>
          <short_desc>[ macOS wk2 ARM 64 ] storage/indexeddb/IDBObject-leak.html is a flakey text failure</short_desc>
          <delta_ts>2021-07-30 23:41:42 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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 name="Robert Jenner">jenner</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jsbell</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1741259</commentid>
    <comment_count>0</comment_count>
    <who name="Robert Jenner">jenner</who>
    <bug_when>2021-03-18 10:56:04 -0700</bug_when>
    <thetext>storage/indexeddb/IDBObject-leak.html

is a flakey text failure in macOS BigSur Release wk2 in Apple Silicon only. 

HISTORY URL:
https://results.webkit.org/?suite=layout-tests&amp;test=storage%2Findexeddb%2FIDBObject-leak.html

TEXT DIFF:
--- /Volumes/Data/worker/bigsur-release-applesilicon-tests-wk2/build/layout-test-results/storage/indexeddb/IDBObject-leak-expected.txt
+++ /Volumes/Data/worker/bigsur-release-applesilicon-tests-wk2/build/layout-test-results/storage/indexeddb/IDBObject-leak-actual.txt
@@ -3,8 +3,9 @@
 On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
 
 
-PASS internals.numberOfIDBTransactions() is 0
+FAIL internals.numberOfIDBTransactions() should be 0. Was 1.
 PASS successfullyParsed is true
+Some tests failed.
 
 TEST COMPLETE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741260</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-18 10:56:56 -0700</bug_when>
    <thetext>&lt;rdar://problem/75580609&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741270</commentid>
    <comment_count>2</comment_count>
    <who name="Robert Jenner">jenner</who>
    <bug_when>2021-03-18 11:12:09 -0700</bug_when>
    <thetext>Updated test expectations to Pass Failure here:
https://trac.webkit.org/changeset/274651/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741271</commentid>
    <comment_count>3</comment_count>
    <who name="Robert Jenner">jenner</who>
    <bug_when>2021-03-18 11:13:24 -0700</bug_when>
    <thetext>The test only appears to be flakey failing on Apple Silicon as of lately. As it is only occurring on Apple Silicon Macs, I cannot reproduce the failure as I do not have access to one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747725</commentid>
    <comment_count>4</comment_count>
      <attachid>425341</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-04-06 18:18:39 -0700</bug_when>
    <thetext>Created attachment 425341
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780696</commentid>
    <comment_count>5</comment_count>
      <attachid>434602</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-07-29 21:24:04 -0700</bug_when>
    <thetext>Created attachment 434602
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780771</commentid>
    <comment_count>6</comment_count>
      <attachid>434602</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-07-30 07:36:37 -0700</bug_when>
    <thetext>Comment on attachment 434602
Patch

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

&gt; LayoutTests/ChangeLog:12
&gt; +        IDBTransaction. 

Do we really need more than one transaction? If we call GC multiple times asynchronously, I would hope one single transaction would be ok.

Also, should we make the test stress compatible?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780871</commentid>
    <comment_count>7</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-07-30 10:31:14 -0700</bug_when>
    <thetext>(In reply to youenn fablet from comment #6)
&gt; Comment on attachment 434602 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=434602&amp;action=review
&gt; 
&gt; &gt; LayoutTests/ChangeLog:12
&gt; &gt; +        IDBTransaction. 
&gt; 
&gt; Do we really need more than one transaction? If we call GC multiple times
&gt; asynchronously, I would hope one single transaction would be ok.
&gt; 
&gt; Also, should we make the test stress compatible?

I will investigate why the stress test fails.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780911</commentid>
    <comment_count>8</comment_count>
      <attachid>434652</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-07-30 12:39:35 -0700</bug_when>
    <thetext>Created attachment 434652
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780954</commentid>
    <comment_count>9</comment_count>
      <attachid>434665</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-07-30 14:45:13 -0700</bug_when>
    <thetext>Created attachment 434665
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1780984</commentid>
    <comment_count>10</comment_count>
      <attachid>434670</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-07-30 16:14:28 -0700</bug_when>
    <thetext>Created attachment 434670
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781055</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-30 23:41:41 -0700</bug_when>
    <thetext>Committed r280510 (240142@main): &lt;https://commits.webkit.org/240142@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 434670.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425341</attachid>
            <date>2021-04-06 18:18:39 -0700</date>
            <delta_ts>2021-07-29 21:24:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223453-20210406181838.patch</filename>
            <type>text/plain</type>
            <size>10871</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NTM2CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYjBkMzFmYjc4NGUxMTYzZWFmYjUy
YjE4Y2I2ZGM4MDY4YTYwZmQ4Ni4uOTNlMzc0ZmM4OWQ0Y2ZhYTBhNWQyNWE2ZTNmNGNlZjQ5ZWI3
NWQ1NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTA0LTA2ICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFsgbWFjT1Mgd2syIEFSTSA2NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgaXMgYSBmbGFrZXkgdGV4dCBmYWlsdXJlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NTMKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1NTgwNjA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFzIEphdmFTY3JpcHRDb3JlIHVzZXMgY29uc2VydmF0
aXZlIEdDLCB0cmFuc2FjdGlvbiBtYXkgYmUgc3RpbGwgYmUgYWxpdmUgYWZ0ZXIgb25lIGdjIGNh
bGwsIHNvIHdlIHNob3VsZCBpbnZva2UKKyAgICAgICAgZ2MgbXVsdGlwbGUgdGltZXMuIFRvIGlu
Y3JlYXNlIHRoZSBwcm9iYWJpbGl0eSBvZiB0cmFuc2FjdGlvbiBiZWluZyBjb2xsZWN0ZWQsIHdl
IHNob3VsZCB0ZXN0IG9uIG11bHRpcGxlCisgICAgICAgIHRyYW5zYWN0aW9ucy4gT25lIHRyYW5z
YWN0aW9uIGJlaW5nIGNvbGxlY3RlZCBpcyBlbm91Z2ggZm9yIHByb3Zpbmcgbm8gcmVmZXJlbmNl
IGN5Y2xlIGJldHdlZW4gSURCRGF0YWJhc2UgYW5kIAorICAgICAgICBJREJUcmFuc2FjdGlvbi4g
CisKKyAgICAgICAgQWxzbywgdGhpcyBwYXRjaCByZW5hbWVzIElEQk9iamVjdC1sZWFrLmh0bWwg
dG8gZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRtbCB0byBiZXR0ZXIgaW5kaWNhdGUgd2hh
dCBpdCBpcworICAgICAgICB0ZXN0aW5nLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxl
YWstZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL0lE
Qk9iamVjdC1sZWFrLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIv
ZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBzdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNh
Y3Rpb24tY3ljbGUtaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDIxLTA0LTA2ICBKaWV3ZW4gVGFu
ICA8amlld2VuX3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViQ3J5cHRvIGluIFNhZmFyaSB3
aWxsIG5vdCBBRVMtR0NNIGVuY3J5cHQgMCBieXRlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMTli
MmJkOTY5ZGJjMDA2MzFhNzg0OWNjMmQ3NWRjNzQzMjNhMjU5OS4uNjU5YTYwNWIzMGM2MGFkNTlj
MmQ3ZmFhZDFhY2MyZGIyOTU5YWU2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xODMsNyArMTgz
LDYgQEAgaHR0cC90ZXN0cy9zdG9yYWdlQWNjZXNzLyBbIFNraXAgXQogaHR0cC90ZXN0cy9uYXZp
Z2F0aW9uL3Byb2Nlc3Mtc3dhcC13aW5kb3ctb3Blbi5odG1sIFsgU2tpcCBdCiBodHRwL3Rlc3Rz
L25hdmlnYXRpb24vdXNlcmFnZW50LXJlbG9hZC5weSBbIFNraXAgXQogc3RvcmFnZS9pbmRleGVk
ZGIvbW9kZXJuL29wZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0bWwgWyBTa2lwIF0K
LXN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lwIF0KIGZhc3QvZm9y
bXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGluZy5odG1sIFsg
U2tpcCBdCiBodHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsgU2tpcCBdCiBmYXN0
L3NwZWVjaHJlY29nbml0aW9uL3Blcm1pc3Npb24tZXJyb3IuaHRtbCBbIFNraXAgXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxNThhZWFhNzdiYzc2MzQw
ZmZiOTA2ZDU4OGE2OTJiYjNlZmIyNjk2Li5mN2VmOGRjYzg5ZDgxMmZiYTc3NDRiYmNlNGY5MWUy
ZTNlMjYzYjJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVj
dGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtMTcxNSw4ICsxNzE1LDYgQEAgd2Via2l0Lm9yZy9iLzE5MzYzNSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9yZXNvdXJjZV90aW0KIAogd2Via2l0Lm9y
Zy9iLzEzNzMxMSBtZWRpYS92aWRlby1mdWxsc2NyZWVuLW9ubHktcGxheWJhY2suaHRtbCBbIFRp
bWVvdXQgQ3Jhc2ggXQogCi13ZWJraXQub3JnL2IvMTk1MTM1IHN0b3JhZ2UvaW5kZXhlZGRiL0lE
Qk9iamVjdC1sZWFrLmh0bWwgWyBUaW1lb3V0IEZhaWx1cmUgUGFzcyBdCi0KIHdlYmtpdC5vcmcv
Yi8xOTYxOTggWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS92aWRlby1wbGF5LXN0YWxsLXNl
ZWsuaHRtbCBbIFRpbWVvdXQgRmFpbHVyZSBQYXNzIF0KIHdlYmtpdC5vcmcvYi8xOTYxOTggWyBE
ZWJ1ZyBdIGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8tcGxheS1zdGFsbC1zZWVrLmh0bWwgWyBUaW1l
b3V0IEZhaWx1cmUgXQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sy
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggZjIxMjQyNDE2ZDIyMjE5Yjk2ZDNmMGVmYTM4MDdjMjk1NDNiNzFjMy4u
Y2MzNWE2MzQ0MjhhNGNmZWM4ZmU1ODZmODQ3OGEzZjIzMDNiMDVhMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTM1MSw4ICsxMzUxLDYg
QEAgd2Via2l0Lm9yZy9iLzIyMzM4NyBtZWRpYS90cmFjay90cmFjay1jdWUtY3NzLmh0bWwgWyBQ
YXNzIEltYWdlT25seUZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMjIzMzgzIGNvbXBvc2l0aW5n
L3ZpZGVvL3ZpZGVvLWJvcmRlci1yYWRpdXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBd
CiAKLXdlYmtpdC5vcmcvYi8yMjM0NTMgWyBhcm02NCBdIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9i
amVjdC1sZWFrLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQotCiB3ZWJraXQub3JnL2IvMjIzNDYyIFsg
RGVidWcgYXJtNjQgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhY2FwdHVy
ZS1zdHJlYW1zL0dVTS1vcHRpb25hbC1jb25zdHJhaW50Lmh0dHBzLmh0bWwgWyBQYXNzIENyYXNo
IF0KIAogd2Via2l0Lm9yZy9iLzIyMzQ2OSBbIGFybTY0IF0gZmFzdC9pbWFnZXMvYXN5bmMtaW1h
Z2UtYmFja2dyb3VuZC1jaGFuZ2UuaHRtbCBbIFBhc3MgVGltZW91dCBdCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDI2MzIyMGQ2MmI0MDU5Y2Q3MDgyNmZl
MDEzNTAyMmVmMTU4ZTFhOTguLjU4OWVmZDVhYTM5YTViMTIyOWM3ZjM3MGM0MzFhNjBjZmQzMDg0
MjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCkBAIC03OTcs
NyArNzk3LDYgQEAgaHR0cC93cHQvY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeS8gWyBQYXNz
IF0KIAogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxvYWQucHkgWyBQYXNzIF0K
IHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFz
aC5odG1sIFsgUGFzcyBdCi1zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsg
UGFzcyBdCiAKIGZhc3QvZm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13
aGVuLXR5cGluZy5odG1sIFsgUGFzcyBdCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggYjI4NjU5NWE1YmRiMGY3YjA5ODI4ODBiMWY5ZjMxNzA0MjA1Mzlj
OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay1leHBlY3RlZC50eHQKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMCArMCwwIEBACi1UaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFu
c2FjdGlvbiBvYmplY3RzIGFyZSBmcmVlZC4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgot
Ci0KLVBBU1MgaW50ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkgaXMgMAotUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA2YWE4YWI2MTAzODIzYjdjOTdiZmE3N2VmNTU2ZDgxOWM5YWFh
MGNjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw0NSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL3No
YXJlZC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oJ1RoaXMgdGVzdCB2ZXJp
ZmllcyB0aGF0IElEQlRyYW5zYWN0aW9uIG9iamVjdHMgYXJlIGZyZWVkLicpOwotCi1qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKLQotZnVuY3Rpb24gdGVzdCgpIHsKLSAgICBpZiAoIXdpbmRvdy5pbnRl
cm5hbHMgfHwgIWludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucykgewotICAgICAgICB0
ZXN0RmFpbGVkKCdUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHRoZSBJbnRlcm5hbHMgb2Jq
ZWN0Jyk7Ci0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQot
Ci0gICAgaWYgKGxvY2FsU3RvcmFnZS5kb25lRmlyc3RMb2FkKSB7Ci0gICAgICAgIGdjKCk7Ci0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb051bWJlcigiaW50ZXJuYWxzLm51bWJlck9mSURCVHJhbnNh
Y3Rpb25zKCkiLCAwKTsKLSAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgIHJldHVybjsK
LSAgICB9Ci0KLSAgICB2YXIgZGJuYW1lID0gc2V0REJOYW1lRnJvbVBhdGgoKSArIERhdGUoKTsK
LSAgICB2YXIgcmVxdWVzdCA9ICB3aW5kb3cuaW5kZXhlZERCLm9wZW4oZGJuYW1lKTsKLSAgICBy
ZXF1ZXN0Lm9udXBncmFkZW5lZWRlZCA9IGZ1bmN0aW9uKGV2dCkgewotICAgICAgICBsb2NhbFN0
b3JhZ2UuZG9uZUZpcnN0TG9hZCA9IHRydWU7Ci0gICAgICAgIGlmICghd2luZG93LnRlc3RSdW5u
ZXIgfHwgIXRlc3RSdW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MpIHsKLSAgICAgICAgICAg
IHRlc3RGYWlsZWQoJ1RoaXMgdGVzdCByZXF1aXJlcyBhY2Nlc3MgdG8gdGhlIFRlc3RSdW5uZXIg
b2JqZWN0IGFuZCB0ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpIGZ1bmN0aW9uJyk7Ci0gICAgICAg
ICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfSAKLQot
ICAgICAgICAvLyBNYWtlIHN1cmUgbG9jYWxTdG9yYWdlIGlzIGZsdXNoZWQgdG8gZGlzayBiZWZv
cmUgY3Jhc2hpbmcgbmV0d29yayBwcm9jZXNzLgotICAgICAgICB0ZXN0UnVubmVyLnN5bmNMb2Nh
bFN0b3JhZ2UoKTsKLSAgICAgICAgdGVzdFJ1bm5lci50ZXJtaW5hdGVOZXR3b3JrUHJvY2Vzcygp
OwotICAgICAgICBldnQudGFyZ2V0LnJlc3VsdC5vbmVycm9yID0gZnVuY3Rpb24oZSkgewotICAg
ICAgICAgICAgc2V0VGltZW91dCgoKCk9PiB7Ci0gICAgICAgICAgICAgICAgbG9jYXRpb24ucmVs
b2FkKCk7Ci0gICAgICAgICAgICB9KSwgMCk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXRlc3Qo
KTsKLTwvc2NyaXB0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5z
YWN0aW9uLWN5Y2xlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZDliOTBlOWQxMWIzOTc1MGMy
NzdlNGRkNzE1ZGU3ZGIzYjQwMmE2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTEgQEAKK1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IElEQlRyYW5zYWN0aW9uIG9i
amVjdHMgYXJlIGNvbGxlY3RlZCB3aGVuIGNvbm5lY3Rpb24gdG8gc2VydmVyIGlzIGxvc3QuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGludGVybmFscy5udW1iZXJPZklE
QlRyYW5zYWN0aW9ucygpIGlzIDIwCitQQVNTIEF0IGxlYXN0IG9uZSBJREJUcmFuc2FjdGlvbiBv
YmplY3RzIGlzIGNvbGxlY3RlZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkZjk5
NTZkNDU2MGViYjAzYWQ3NjU4MWI4MjhmZjhhMjg0NmQyNDcKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5o
dG1sCkBAIC0wLDAgKzEsNzIgQEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
c2hhcmVkLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignVGhpcyB0ZXN0IHZl
cmlmaWVzIHRoYXQgSURCVHJhbnNhY3Rpb24gb2JqZWN0cyBhcmUgY29sbGVjdGVkIHdoZW4gY29u
bmVjdGlvbiB0byBzZXJ2ZXIgaXMgbG9zdC4nKTsKK2pzVGVzdElzQXN5bmMgPSB0cnVlOworCitj
b25zdCBnY0ludGVydmFsID0gNTA7Citjb25zdCBmcmFtZUNvdW50ID0gMjA7Cit2YXIgZ2NDb3Vu
dGRvd24gPSA1MDsKK3ZhciBkYXRhYmFzZUNvdW50ID0gMDsKK3ZhciBlcnJvckNvdW50ID0gMDsK
K3ZhciBmcmFtZU51bWJlciA9IDA7Cit2YXIgZnJhbWVzID0gW107CisKK2Z1bmN0aW9uIGZyYW1l
U3VmZml4KCkgIAoreworICAgIHJldHVybiArK2ZyYW1lTnVtYmVyOworfQorCitmdW5jdGlvbiBm
cmFtZURhdGFiYXNlT3BlbmVkKCkgCit7CisgICAgaWYgKCsrZGF0YWJhc2VDb3VudCA9PSBmcmFt
ZUNvdW50KSB7CisgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvTnVtYmVyKCJpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSIsIGZy
YW1lQ291bnQpOworICAgICAgICAgICAgdGVzdFJ1bm5lci50ZXJtaW5hdGVOZXR3b3JrUHJvY2Vz
cygpOworICAgICAgICB9LCAwKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIGZyYW1lRGF0YWJhc2VF
cnJvcigpIAoreworICAgIGlmICgrK2Vycm9yQ291bnQgPT0gZnJhbWVDb3VudCkgeworICAgICAg
ICBmb3IgKGxldCBpID0gMDsgaSA8IGZyYW1lQ291bnQ7ICsraSkKKyAgICAgICAgICAgIGZyYW1l
c1tpXS5zcmMgPSAiYWJvdXQ6OmJsYW5rIjsKKworICAgICAgICBnY0NoZWNrKCk7CisgICAgfQor
fQorCitmdW5jdGlvbiBnY0NoZWNrKCkgCit7CisgICAgaWYgKCFnY0NvdW50ZG93bikgeworICAg
ICAgICB0ZXN0RmFpbGVkKCJOb25lIG9mIElEQlRyYW5zYWN0aW9uIG9iamVjdHMgaXMgY29sbGVj
dGVkIik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgaWYgKGludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIDwgZnJhbWVDb3Vu
dCkgeworICAgICAgICB0ZXN0UGFzc2VkKCJBdCBsZWFzdCBvbmUgSURCVHJhbnNhY3Rpb24gb2Jq
ZWN0cyBpcyBjb2xsZWN0ZWQiKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICAtLWdjQ291bnRkb3duOworICAgIGdjKCk7CisKKyAgICBzZXRU
aW1lb3V0KGdjQ2hlY2ssIGdjSW50ZXJ2YWwpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgCit7Cisg
ICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmcmFtZUNvdW50OyArK2kpIHsKKyAgICAgICAgbGV0IGZy
YW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAgICAgIGZyYW1lLnNy
YyA9ICJyZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwiOwor
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTsKKyAgICAgICAgZnJhbWVz
LnB1c2goZnJhbWUpOworICAgIH0KK30KKword2luZG93Lm9ubG9hZCA9IHRlc3Q7Cis8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9k
YXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5mOTM2M2I5NGI2Mjg1NmFlZDliMDBlZGFhMTExMzkyMGE1MTNkYmE0
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3Vy
Y2VzL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjgg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHNjcmlwdD4KKwordmFyIG9iamVjdFN0b3JlID0gbnVsbDsK
K3ZhciBwdXRSZXF1ZXN0ID0gbnVsbDsKKworZnVuY3Rpb24ga2VlcFRyYW5zYWN0aW9uQWxpdmUo
KSB7CisgICAgcHV0UmVxdWVzdCA9IG9iamVjdFN0b3JlLnB1dCgidmFsdWUiLCAia2V5Iik7Cisg
ICAgcHV0UmVxdWVzdC5vbnN1Y2Nlc3MgPSBrZWVwVHJhbnNhY3Rpb25BbGl2ZTsKK30KKworZnVu
Y3Rpb24gb3BlbkRhdGFiYXNlKCkgeworICAgIHZhciBkYm5hbWUgPSAiaWZyYW1lLSIgKyBwYXJl
bnQuZnJhbWVTdWZmaXgoKTsKKyAgICB3aW5kb3cuaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGRi
bmFtZSk7CisgICAgdmFyIG9wZW5SZXF1ZXN0ID0gd2luZG93LmluZGV4ZWREQi5vcGVuKGRibmFt
ZSk7CisgICAgb3BlblJlcXVlc3Qub251cGdyYWRlbmVlZGVkID0gKGV2ZW50KSA9PiB7CisgICAg
ICAgIHZhciByZXF1ZXN0ID0gZXZlbnQudGFyZ2V0OworICAgICAgICB2YXIgZGIgPSByZXF1ZXN0
LnJlc3VsdDsKKyAgICAgICAgZGIub25lcnJvciA9ICgpID0+IHBhcmVudC5mcmFtZURhdGFiYXNl
RXJyb3IoKTsKKyAgICAgICAgb2JqZWN0U3RvcmUgPSBkYi5jcmVhdGVPYmplY3RTdG9yZSgib2Jq
ZWN0U3RvcmUiKTsKKyAgICAgICAga2VlcFRyYW5zYWN0aW9uQWxpdmUoKTsKKworICAgICAgICBw
YXJlbnQuZnJhbWVEYXRhYmFzZU9wZW5lZCgpOworICAgIH07Cit9CisKK29wZW5EYXRhYmFzZSgp
OworPC9zY3JpcHQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434602</attachid>
            <date>2021-07-29 21:24:04 -0700</date>
            <delta_ts>2021-07-30 12:39:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223453-20210729212403.patch</filename>
            <type>text/plain</type>
            <size>11093</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNDQ3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNzRlZWQ1OTk4OTVkODczMzk0MWZi
OGYwZTQ1MDRiMzE1YWM5NmFmZi4uYjY3NjRhMmRhOTRkZjlmNzYwN2JkZGFjMTRlM2QxZDI1YWZh
YmZkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTA3LTI5ICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFsgbWFjT1Mgd2syIEFSTSA2NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgaXMgYSBmbGFrZXkgdGV4dCBmYWlsdXJlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NTMKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1NTgwNjA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFzIEphdmFTY3JpcHRDb3JlIHVzZXMgY29uc2VydmF0
aXZlIEdDLCB0cmFuc2FjdGlvbiBtYXkgYmUgc3RpbGwgYmUgYWxpdmUgYWZ0ZXIgb25lIGdjIGNh
bGwsIHNvIHdlIHNob3VsZCBpbnZva2UKKyAgICAgICAgZ2MgbXVsdGlwbGUgdGltZXMuIFRvIGlu
Y3JlYXNlIHRoZSBwcm9iYWJpbGl0eSBvZiB0cmFuc2FjdGlvbiBiZWluZyBjb2xsZWN0ZWQsIHdl
IHNob3VsZCB0ZXN0IG9uIG11bHRpcGxlCisgICAgICAgIHRyYW5zYWN0aW9ucy4gT25lIHRyYW5z
YWN0aW9uIGJlaW5nIGNvbGxlY3RlZCBpcyBlbm91Z2ggZm9yIHByb3Zpbmcgbm8gcmVmZXJlbmNl
IGN5Y2xlIGJldHdlZW4gSURCRGF0YWJhc2UgYW5kIAorICAgICAgICBJREJUcmFuc2FjdGlvbi4g
CisKKyAgICAgICAgQWxzbywgdGhpcyBwYXRjaCByZW5hbWVzIElEQk9iamVjdC1sZWFrLmh0bWwg
dG8gZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRtbCB0byBiZXR0ZXIgaW5kaWNhdGUgd2hh
dCBpdCBpcworICAgICAgICB0ZXN0aW5nLgorCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9U
ZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLWV4cGVjdGVkLnR4
dDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5z
YWN0aW9uLWN5Y2xlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRl
eGVkZGIvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRtbDogQWRkZWQuCisgICAgICAgICog
c3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWlm
cmFtZS5odG1sOiBBZGRlZC4KKwogMjAyMS0wNy0yOSAgQXl1bWkgS29qaW1hICA8YXl1bWlfa29q
aW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBbIGlPUyBdIDIgaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZSB0ZXN0cyBhcmUgZmxha3kgdGltaW5nIG91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IGQ5NzZlYjgyOGFlYzQ1NjIyZWM2MDM2YzBlODdmZjVkMWUxODc0MjkuLjlkMjg4MTJlODYyNGE3
YjEzMDc1ZjAzOGQ2NGEyNDlhNGNjODRmNzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTg2LDcg
KzE4Niw3IEBAIGh0dHAvdGVzdHMvc3RvcmFnZUFjY2Vzcy8gWyBTa2lwIF0KIGh0dHAvdGVzdHMv
bmF2aWdhdGlvbi9wcm9jZXNzLXN3YXAtd2luZG93LW9wZW4uaHRtbCBbIFNraXAgXQogaHR0cC90
ZXN0cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxvYWQucHkgWyBTa2lwIF0KIHN0b3JhZ2UvaW5k
ZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tp
cCBdCi1zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgU2tpcCBdCitzdG9y
YWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIFsgU2tpcCBdCiBm
YXN0L2Zvcm1zL2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcu
aHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAg
XQogZmFzdC9zcGVlY2hyZWNvZ25pdGlvbi9wZXJtaXNzaW9uLWVycm9yLmh0bWwgWyBTa2lwIF0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAx
OTA0NjMxMTNhMzE1NTczZTA3OTJjMjYwNGMzZTZkYzk2MGZkMDAwLi40NjI0NmU1YTA0YjIxODJm
MTlmZTI0OGEzNzFjMjc2YWQzYjJjZDhlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMTEsNiArMTExLDggQEAgZmFzdC9hbmltYXRpb24v
cmVxdWVzdC1hbmltYXRpb24tZnJhbWUtaW4tdHdvLXBhZ2VzLmh0bWwgWyBQYXNzIF0KIGZhc3Qv
Zm9ybXMvZmlsZS9lbnRyaWVzLWFwaS9pbWFnZS10cmFuc2NvZGUtb3Blbi1wYW5lbC5odG1sIFsg
UGFzcyBdCiBmYXN0L2Zvcm1zL2ZpbGUvZW50cmllcy1hcGkvaW1hZ2Utbm8tdHJhbnNjb2RlLW9w
ZW4tcGFuZWwuaHRtbCBbIFBhc3MgXQogCitzdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFu
c2FjdGlvbi1jeWNsZS5odG1sIFsgUGFzcyBdCisKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8KICMgRW5kIHBsYXRmb3JtLXNwZWNpZmljIGRpcmVjdG9yaWVzLgogIy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpAQCAtMTQ0MSw4ICsxNDQzLDYgQEAgd2Via2l0Lm9y
Zy9iLzIyMzM4NyBtZWRpYS90cmFjay90cmFjay1jdWUtY3NzLmh0bWwgWyBQYXNzIEltYWdlT25s
eUZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMjIzMzgzIGNvbXBvc2l0aW5nL3ZpZGVvL3ZpZGVv
LWJvcmRlci1yYWRpdXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKLXdlYmtpdC5v
cmcvYi8yMjM0NTMgWyBhcm02NCBdIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0
bWwgWyBQYXNzIEZhaWx1cmUgXQotCiB3ZWJraXQub3JnL2IvMjIzNDYyIFsgRGVidWcgYXJtNjQg
XSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhY2FwdHVyZS1zdHJlYW1zL0dV
TS1vcHRpb25hbC1jb25zdHJhaW50Lmh0dHBzLmh0bWwgWyBQYXNzIENyYXNoIF0KIAogd2Via2l0
Lm9yZy9iLzIyMzQ4NiBbIGFybTY0IF0gaW5zcGVjdG9yL2Nzcy9tb2RpZnktaW5saW5lLXN0eWxl
Lmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCA2NTYxZjA2YzU0NmU4MGU3OWFmMTE3YWI0MDIwZDUzYTZmY2JjNzVmLi5j
ZWE0OWViYTdmNWJiZjJjZTBmNTdiMjUzMzhiZjBmOTMwODEyOTllIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNzkzLDcgKzc5Myw2IEBAIGh0dHAvd3B0
L2Nyb3NzLW9yaWdpbi1yZXNvdXJjZS1wb2xpY3kvIFsgUGFzcyBdCiAKIGh0dHAvdGVzdHMvbmF2
aWdhdGlvbi91c2VyYWdlbnQtcmVsb2FkLnB5IFsgUGFzcyBdCiBzdG9yYWdlL2luZGV4ZWRkYi9t
b2Rlcm4vb3BlbmRhdGFiYXNlLWFmdGVyLXN0b3JhZ2UtY3Jhc2guaHRtbCBbIFBhc3MgXQotc3Rv
cmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbCBbIFBhc3MgXQogCiBmYXN0L2Zvcm1z
L2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFBh
c3MgXQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmpl
Y3QtbGVhay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJP
YmplY3QtbGVhay1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIy
ODY1OTVhNWJkYjBmN2IwOTgyODgwYjFmOWYzMTcwNDIwNTM5YzguLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvSURCT2JqZWN0LWxlYWstZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAs
MCBAQAotVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgSURCVHJhbnNhY3Rpb24gb2JqZWN0cyBhcmUg
ZnJlZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGludGVybmFscy5u
dW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGlzIDAKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NmFhOGFiNjEwMzgyM2I3Yzk3YmZhNzdlZjU1NmQ4MTljOWFhYTBjYy4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9JREJPYmplY3QtbGVhay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9zaGFyZWQuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2Fj
dGlvbiBvYmplY3RzIGFyZSBmcmVlZC4nKTsKLQotanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1
bmN0aW9uIHRlc3QoKSB7Ci0gICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzIHx8ICFpbnRlcm5hbHMu
bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMpIHsKLSAgICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0
IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUgSW50ZXJuYWxzIG9iamVjdCcpOwotICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGlmIChsb2NhbFN0b3Jh
Z2UuZG9uZUZpcnN0TG9hZCkgewotICAgICAgICBnYygpOwotICAgICAgICBzaG91bGRCZUVxdWFs
VG9OdW1iZXIoImludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIiwgMCk7Ci0gICAg
ICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgdmFyIGRi
bmFtZSA9IHNldERCTmFtZUZyb21QYXRoKCkgKyBEYXRlKCk7Ci0gICAgdmFyIHJlcXVlc3QgPSAg
d2luZG93LmluZGV4ZWREQi5vcGVuKGRibmFtZSk7Ci0gICAgcmVxdWVzdC5vbnVwZ3JhZGVuZWVk
ZWQgPSBmdW5jdGlvbihldnQpIHsKLSAgICAgICAgbG9jYWxTdG9yYWdlLmRvbmVGaXJzdExvYWQg
PSB0cnVlOwotICAgICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnRl
cm1pbmF0ZU5ldHdvcmtQcm9jZXNzKSB7Ci0gICAgICAgICAgICB0ZXN0RmFpbGVkKCdUaGlzIHRl
c3QgcmVxdWlyZXMgYWNjZXNzIHRvIHRoZSBUZXN0UnVubmVyIG9iamVjdCBhbmQgdGVybWluYXRl
TmV0d29ya1Byb2Nlc3MoKSBmdW5jdGlvbicpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7
Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0gCi0KLSAgICAgICAgLy8gTWFrZSBzdXJl
IGxvY2FsU3RvcmFnZSBpcyBmbHVzaGVkIHRvIGRpc2sgYmVmb3JlIGNyYXNoaW5nIG5ldHdvcmsg
cHJvY2Vzcy4KLSAgICAgICAgdGVzdFJ1bm5lci5zeW5jTG9jYWxTdG9yYWdlKCk7Ci0gICAgICAg
IHRlc3RSdW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKTsKLSAgICAgICAgZXZ0LnRhcmdl
dC5yZXN1bHQub25lcnJvciA9IGZ1bmN0aW9uKGUpIHsKLSAgICAgICAgICAgIHNldFRpbWVvdXQo
KCgpPT4gewotICAgICAgICAgICAgICAgIGxvY2F0aW9uLnJlbG9hZCgpOwotICAgICAgICAgICAg
fSksIDApOwotICAgICAgICB9Ci0gICAgfQotfQotCi10ZXN0KCk7Ci08L3NjcmlwdD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uN2Q5YjkwZTlkMTFiMzk3NTBjMjc3ZTRkZDcxNWRlN2RiM2I0MDJh
NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFi
YXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUaGlz
IHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlvbiBvYmplY3RzIGFyZSBjb2xsZWN0ZWQg
d2hlbiBjb25uZWN0aW9uIHRvIHNlcnZlciBpcyBsb3N0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSBpcyAy
MAorUEFTUyBBdCBsZWFzdCBvbmUgSURCVHJhbnNhY3Rpb24gb2JqZWN0cyBpcyBjb2xsZWN0ZWQK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlv
bi1jeWNsZS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtdHJh
bnNhY3Rpb24tY3ljbGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZjg2NTVjZjVkNGE4MjlhMzZkM2EzYWI5
OTIzNjA1MWM4NTlmYmJjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRtbApAQCAtMCwwICsxLDg1IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NoYXJlZC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IElEQlRyYW5z
YWN0aW9uIG9iamVjdHMgYXJlIGNvbGxlY3RlZCB3aGVuIGNvbm5lY3Rpb24gdG8gc2VydmVyIGlz
IGxvc3QuJyk7Citqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworY29uc3QgZ2NJbnRlcnZhbCA9IDUw
OworY29uc3QgZnJhbWVDb3VudCA9IDIwOwordmFyIGdjQ291bnRkb3duID0gNTA7Cit2YXIgZGF0
YWJhc2VDb3VudCA9IDA7Cit2YXIgZXJyb3JDb3VudCA9IDA7Cit2YXIgZnJhbWVOdW1iZXIgPSAw
OwordmFyIGZyYW1lcyA9IFtdOworCitmdW5jdGlvbiBmcmFtZVN1ZmZpeCgpICAKK3sKKyAgICBy
ZXR1cm4gKytmcmFtZU51bWJlcjsKK30KKworZnVuY3Rpb24gZnJhbWVEYXRhYmFzZU9wZW5lZCgp
IAoreworICAgIGlmICgrK2RhdGFiYXNlQ291bnQgPT0gZnJhbWVDb3VudCkgeworICAgICAgICBz
ZXRUaW1lb3V0KCgpID0+IHsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb051bWJlcigiaW50
ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkiLCBmcmFtZUNvdW50KTsKKyAgICAgICAg
ICAgIHRlc3RSdW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKTsKKyAgICAgICAgfSwgMCk7
CisgICAgfQorfQorCitmdW5jdGlvbiBmcmFtZURhdGFiYXNlRXJyb3IoKSAKK3sKKyAgICBpZiAo
KytlcnJvckNvdW50ID09IGZyYW1lQ291bnQpIHsKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkg
PCBmcmFtZUNvdW50OyArK2kpCisgICAgICAgICAgICBmcmFtZXNbaV0uc3JjID0gImFib3V0Ojpi
bGFuayI7CisKKyAgICAgICAgZ2NDaGVjaygpOworICAgIH0KK30KKworZnVuY3Rpb24gZ2NDaGVj
aygpIAoreworICAgIGlmICghZ2NDb3VudGRvd24pIHsKKyAgICAgICAgdGVzdEZhaWxlZCgiTm9u
ZSBvZiBJREJUcmFuc2FjdGlvbiBvYmplY3RzIGlzIGNvbGxlY3RlZCIpOworICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChpbnRlcm5hbHMu
bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSA8IGZyYW1lQ291bnQpIHsKKyAgICAgICAgdGVzdFBh
c3NlZCgiQXQgbGVhc3Qgb25lIElEQlRyYW5zYWN0aW9uIG9iamVjdHMgaXMgY29sbGVjdGVkIik7
CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAg
LS1nY0NvdW50ZG93bjsKKyAgICBnYygpOworCisgICAgc2V0VGltZW91dChnY0NoZWNrLCBnY0lu
dGVydmFsKTsKK30KKworZnVuY3Rpb24gdGVzdCgpIAoreworICAgIGlmICghd2luZG93LmludGVy
bmFscyB8fCAhaW50ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKSB7CisgICAgICAgIHRl
c3RGYWlsZWQoJ1RoaXMgdGVzdCByZXF1aXJlcyBhY2Nlc3MgdG8gdGhlIEludGVybmFscyBvYmpl
Y3QgYW5kIG51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkgZnVuY3Rpb24nKTsKKyAgICAgICAgZmlu
aXNoSlNUZXN0KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIXdpbmRvdy50
ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNzKSB7CisgICAg
ICAgIHRlc3RGYWlsZWQoJ1RoaXMgdGVzdCByZXF1aXJlcyBhY2Nlc3MgdG8gdGhlIFRlc3RSdW5u
ZXIgb2JqZWN0IGFuZCB0ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpIGZ1bmN0aW9uJyk7CisgICAg
ICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICByZXR1cm47CisgICAgfSAKKworCisgICAgZm9y
IChsZXQgaSA9IDA7IGkgPCBmcmFtZUNvdW50OyArK2kpIHsKKyAgICAgICAgbGV0IGZyYW1lID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAgICAgIGZyYW1lLnNyYyA9ICJy
ZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwiOworICAgICAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTsKKyAgICAgICAgZnJhbWVzLnB1c2go
ZnJhbWUpOworICAgIH0KK30KKword2luZG93Lm9ubG9hZCA9IHRlc3Q7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFz
ZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mOTM2M2I5NGI2Mjg1NmFlZDliMDBlZGFhMTExMzkyMGE1MTNkYmE0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2Rh
dGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwh
RE9DVFlQRSBodG1sPgorPHNjcmlwdD4KKwordmFyIG9iamVjdFN0b3JlID0gbnVsbDsKK3ZhciBw
dXRSZXF1ZXN0ID0gbnVsbDsKKworZnVuY3Rpb24ga2VlcFRyYW5zYWN0aW9uQWxpdmUoKSB7Cisg
ICAgcHV0UmVxdWVzdCA9IG9iamVjdFN0b3JlLnB1dCgidmFsdWUiLCAia2V5Iik7CisgICAgcHV0
UmVxdWVzdC5vbnN1Y2Nlc3MgPSBrZWVwVHJhbnNhY3Rpb25BbGl2ZTsKK30KKworZnVuY3Rpb24g
b3BlbkRhdGFiYXNlKCkgeworICAgIHZhciBkYm5hbWUgPSAiaWZyYW1lLSIgKyBwYXJlbnQuZnJh
bWVTdWZmaXgoKTsKKyAgICB3aW5kb3cuaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGRibmFtZSk7
CisgICAgdmFyIG9wZW5SZXF1ZXN0ID0gd2luZG93LmluZGV4ZWREQi5vcGVuKGRibmFtZSk7Cisg
ICAgb3BlblJlcXVlc3Qub251cGdyYWRlbmVlZGVkID0gKGV2ZW50KSA9PiB7CisgICAgICAgIHZh
ciByZXF1ZXN0ID0gZXZlbnQudGFyZ2V0OworICAgICAgICB2YXIgZGIgPSByZXF1ZXN0LnJlc3Vs
dDsKKyAgICAgICAgZGIub25lcnJvciA9ICgpID0+IHBhcmVudC5mcmFtZURhdGFiYXNlRXJyb3Io
KTsKKyAgICAgICAgb2JqZWN0U3RvcmUgPSBkYi5jcmVhdGVPYmplY3RTdG9yZSgib2JqZWN0U3Rv
cmUiKTsKKyAgICAgICAga2VlcFRyYW5zYWN0aW9uQWxpdmUoKTsKKworICAgICAgICBwYXJlbnQu
ZnJhbWVEYXRhYmFzZU9wZW5lZCgpOworICAgIH07Cit9CisKK29wZW5EYXRhYmFzZSgpOworPC9z
Y3JpcHQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434652</attachid>
            <date>2021-07-30 12:39:35 -0700</date>
            <delta_ts>2021-07-30 14:45:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223453-20210730123934.patch</filename>
            <type>text/plain</type>
            <size>10633</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNDgwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDczMDE0Mjk2MDMwNmMyMDZjYzcz
OTBjMDI2NmQ5NGE0NTNmMmU2Yy4uYWU2ZDU0ODZhNmQzMzYwZGQ1ZDc4NDc4YjRjODkzZjk0NmVj
MGJmNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTA3LTMwICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFsgbWFjT1Mgd2syIEFSTSA2NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgaXMgYSBmbGFrZXkgdGV4dCBmYWlsdXJlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NTMKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1NTgwNjA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlv
dWVubiBGYWJsZXQuCisKKyAgICAgICAgQXMgSmF2YVNjcmlwdENvcmUgdXNlcyBjb25zZXJ2YXRp
dmUgR0MsIHRyYW5zYWN0aW9uIG1heSBiZSBzdGlsbCBiZSBhbGl2ZSBhZnRlciBvbmUgZ2MgY2Fs
bCwgc28gd2Ugc2hvdWxkIGludm9rZQorICAgICAgICBnYyBtdWx0aXBsZSB0aW1lcy4KKworICAg
ICAgICBBbHNvLCB0aGlzIHBhdGNoIHJlbmFtZXMgSURCT2JqZWN0LWxlYWsuaHRtbCB0byBkYXRh
YmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIHRvIGJldHRlciBpbmRpY2F0ZSB3aGF0IGl0IGlz
CisgICAgICAgIHRlc3RpbmcuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9y
bS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9JREJP
YmplY3QtbGVhay1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRl
eGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL2lu
ZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFz
ZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMjEtMDctMzAgIFNp
aHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CiAKICAgICAgICAgTGF5b3V0IFRlc3QgaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9JbmRleGVkREIvZmlyZS1lcnJvci1ldmVudC1l
eGNlcHRpb24uaHRtbCBpcyBhIEZsYWt5IEZhaWx1cmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYz
NDIyYmJiOGJlOWY2YzA3NDkxOWQyOTY1YjQ4MDk3ZDAwZjM1Y2EuLmQ2ODE4NmI3NmVhYTg3MWVl
NDI2NTM4MThiMTRhMjAzZDkzZTE1N2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTg2LDcgKzE4
Niw3IEBAIGh0dHAvdGVzdHMvc3RvcmFnZUFjY2Vzcy8gWyBTa2lwIF0KIGh0dHAvdGVzdHMvbmF2
aWdhdGlvbi9wcm9jZXNzLXN3YXAtd2luZG93LW9wZW4uaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0
cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxvYWQucHkgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tpcCBd
Ci1zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgU2tpcCBdCitzdG9yYWdl
L2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIFsgU2tpcCBdCiBmYXN0
L2Zvcm1zL2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRt
bCBbIFNraXAgXQogaHR0cC90ZXN0cy9pbi1hcHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAgXQog
ZmFzdC9zcGVlY2hyZWNvZ25pdGlvbi9wZXJtaXNzaW9uLWVycm9yLmh0bWwgWyBTa2lwIF0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA5MzI5
Zjg0ZjhjOTRkN2VlMmYyNDdkMzg2YTFmOWNkOGI4YWExMmU5Li5mNTgwMzQ0MGUwZDFiNDI4YzNl
ZGZlNTI2NTAyNjMwODRiYmQzYjAyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
Mi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMTEsNiArMTExLDggQEAgZmFzdC9hbmltYXRpb24vcmVx
dWVzdC1hbmltYXRpb24tZnJhbWUtaW4tdHdvLXBhZ2VzLmh0bWwgWyBQYXNzIF0KIGZhc3QvZm9y
bXMvZmlsZS9lbnRyaWVzLWFwaS9pbWFnZS10cmFuc2NvZGUtb3Blbi1wYW5lbC5odG1sIFsgUGFz
cyBdCiBmYXN0L2Zvcm1zL2ZpbGUvZW50cmllcy1hcGkvaW1hZ2Utbm8tdHJhbnNjb2RlLW9wZW4t
cGFuZWwuaHRtbCBbIFBhc3MgXQogCitzdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2Fj
dGlvbi1jeWNsZS5odG1sIFsgUGFzcyBdCisKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8KICMgRW5kIHBsYXRmb3JtLXNwZWNpZmljIGRpcmVjdG9yaWVzLgogIy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLwpAQCAtMTM4Miw4ICsxMzg0LDYgQEAgd2Via2l0Lm9yZy9i
LzIyMzM4NyBtZWRpYS90cmFjay90cmFjay1jdWUtY3NzLmh0bWwgWyBQYXNzIEltYWdlT25seUZh
aWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMjIzMzgzIGNvbXBvc2l0aW5nL3ZpZGVvL3ZpZGVvLWJv
cmRlci1yYWRpdXMuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcv
Yi8yMjM0NTMgWyBhcm02NCBdIHN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwg
WyBQYXNzIEZhaWx1cmUgXQotCiB3ZWJraXQub3JnL2IvMjIzNDYyIFsgRGVidWcgYXJtNjQgXSBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhY2FwdHVyZS1zdHJlYW1zL0dVTS1v
cHRpb25hbC1jb25zdHJhaW50Lmh0dHBzLmh0bWwgWyBQYXNzIENyYXNoIF0KIAogd2Via2l0Lm9y
Zy9iLzIyMzQ4NiBbIGFybTY0IF0gaW5zcGVjdG9yL2Nzcy9tb2RpZnktaW5saW5lLXN0eWxlLmh0
bWwgWyBQYXNzIEZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0
aW9ucwppbmRleCA2NTYxZjA2YzU0NmU4MGU3OWFmMTE3YWI0MDIwZDUzYTZmY2JjNzVmLi5jZWE0
OWViYTdmNWJiZjJjZTBmNTdiMjUzMzhiZjBmOTMwODEyOTllIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNzkzLDcgKzc5Myw2IEBAIGh0dHAvd3B0L2Ny
b3NzLW9yaWdpbi1yZXNvdXJjZS1wb2xpY3kvIFsgUGFzcyBdCiAKIGh0dHAvdGVzdHMvbmF2aWdh
dGlvbi91c2VyYWdlbnQtcmVsb2FkLnB5IFsgUGFzcyBdCiBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rl
cm4vb3BlbmRhdGFiYXNlLWFmdGVyLXN0b3JhZ2UtY3Jhc2guaHRtbCBbIFBhc3MgXQotc3RvcmFn
ZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbCBbIFBhc3MgXQogCiBmYXN0L2Zvcm1zL2Nh
bGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFBhc3Mg
XQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3Qt
bGVhay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmpl
Y3QtbGVhay1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyODY1
OTVhNWJkYjBmN2IwOTgyODgwYjFmOWYzMTcwNDIwNTM5YzguLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
SURCT2JqZWN0LWxlYWstZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBA
QAotVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgSURCVHJhbnNhY3Rpb24gb2JqZWN0cyBhcmUgZnJl
ZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGludGVybmFscy5udW1i
ZXJPZklEQlRyYW5zYWN0aW9ucygpIGlzIDAKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvSURCT2JqZWN0LWxlYWsuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmFh
OGFiNjEwMzgyM2I3Yzk3YmZhNzdlZjU1NmQ4MTljOWFhYTBjYy4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9JREJPYmplY3QtbGVhay5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9zaGFyZWQuanMiPjwvc2NyaXB0PgotPHNj
cmlwdD4KLWRlc2NyaXB0aW9uKCdUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlv
biBvYmplY3RzIGFyZSBmcmVlZC4nKTsKLQotanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1bmN0
aW9uIHRlc3QoKSB7Ci0gICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzIHx8ICFpbnRlcm5hbHMubnVt
YmVyT2ZJREJUcmFuc2FjdGlvbnMpIHsKLSAgICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0IHJl
cXVpcmVzIGFjY2VzcyB0byB0aGUgSW50ZXJuYWxzIG9iamVjdCcpOwotICAgICAgICBmaW5pc2hK
U1Rlc3QoKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGlmIChsb2NhbFN0b3JhZ2Uu
ZG9uZUZpcnN0TG9hZCkgewotICAgICAgICBnYygpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9O
dW1iZXIoImludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIiwgMCk7Ci0gICAgICAg
IGZpbmlzaEpTVGVzdCgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgdmFyIGRibmFt
ZSA9IHNldERCTmFtZUZyb21QYXRoKCkgKyBEYXRlKCk7Ci0gICAgdmFyIHJlcXVlc3QgPSAgd2lu
ZG93LmluZGV4ZWREQi5vcGVuKGRibmFtZSk7Ci0gICAgcmVxdWVzdC5vbnVwZ3JhZGVuZWVkZWQg
PSBmdW5jdGlvbihldnQpIHsKLSAgICAgICAgbG9jYWxTdG9yYWdlLmRvbmVGaXJzdExvYWQgPSB0
cnVlOwotICAgICAgICBpZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnRlcm1p
bmF0ZU5ldHdvcmtQcm9jZXNzKSB7Ci0gICAgICAgICAgICB0ZXN0RmFpbGVkKCdUaGlzIHRlc3Qg
cmVxdWlyZXMgYWNjZXNzIHRvIHRoZSBUZXN0UnVubmVyIG9iamVjdCBhbmQgdGVybWluYXRlTmV0
d29ya1Byb2Nlc3MoKSBmdW5jdGlvbicpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0g
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0gCi0KLSAgICAgICAgLy8gTWFrZSBzdXJlIGxv
Y2FsU3RvcmFnZSBpcyBmbHVzaGVkIHRvIGRpc2sgYmVmb3JlIGNyYXNoaW5nIG5ldHdvcmsgcHJv
Y2Vzcy4KLSAgICAgICAgdGVzdFJ1bm5lci5zeW5jTG9jYWxTdG9yYWdlKCk7Ci0gICAgICAgIHRl
c3RSdW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKTsKLSAgICAgICAgZXZ0LnRhcmdldC5y
ZXN1bHQub25lcnJvciA9IGZ1bmN0aW9uKGUpIHsKLSAgICAgICAgICAgIHNldFRpbWVvdXQoKCgp
PT4gewotICAgICAgICAgICAgICAgIGxvY2F0aW9uLnJlbG9hZCgpOwotICAgICAgICAgICAgfSks
IDApOwotICAgICAgICB9Ci0gICAgfQotfQotCi10ZXN0KCk7Ci08L3NjcmlwdD4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNGQ3NTgwODkzNDE4ZjY5YWVlMDY2OTNhZDgyNmMzN2RiNTFkY2Y1NQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNl
LXRyYW5zYWN0aW9uLWN5Y2xlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitUaGlzIHRl
c3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlvbiBvYmplY3RzIGFyZSBjb2xsZWN0ZWQgd2hl
biBjb25uZWN0aW9uIHRvIHNlcnZlciBpcyBsb3N0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworCitmcmFtZURhdGFiYXNlT3BlbmVkKCk6CitQQVNTIGludGVybmFscy5udW1iZXJP
ZklEQlRyYW5zYWN0aW9ucygpIGlzIDEKKworZnJhbWVUcmFuc2FjdGlvbkFib3J0ZWQoKToKK1BB
U1MgSURCVHJhbnNhY3Rpb24gaXMgY29sbGVjdGVkCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRtbCBiL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZDJhYmIxZmQzNzIzYmU3YTFiZjNlMGE2ZmM3YmY3NDg5NTAwMDZiYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0
aW9uLWN5Y2xlLmh0bWwKQEAgLTAsMCArMSw3NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy9zaGFyZWQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdU
aGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlvbiBvYmplY3RzIGFyZSBjb2xsZWN0
ZWQgd2hlbiBjb25uZWN0aW9uIHRvIHNlcnZlciBpcyBsb3N0LicpOworCitjb25zdCBnY0ludGVy
dmFsID0gNTA7Cit2YXIgZ2NDb3VudGRvd24gPSA1MDsKK3ZhciBmcmFtZSA9IG51bGw7CisKK2Z1
bmN0aW9uIGRhdGFiYXNlTmFtZSgpCit7CisgICAgcmV0dXJuIHNldERCTmFtZUZyb21QYXRoKCk7
Cit9CisKK2Z1bmN0aW9uIGZyYW1lRGF0YWJhc2VPcGVuZWQoZXZlbnQpIAoreworICAgIHByZWFt
YmxlKGV2ZW50KTsKKworICAgIGdjKCk7CisgICAgc2V0VGltZW91dCgoKSA9PiB7CisgICAgICAg
IHNob3VsZEJlRXF1YWxUb051bWJlcigiaW50ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25z
KCkiLCAxKTsKKyAgICAgICAgdGVzdFJ1bm5lci50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwor
ICAgIH0sIGdjSW50ZXJ2YWwpOworfQorCitmdW5jdGlvbiBmcmFtZVRyYW5zYWN0aW9uQWJvcnRl
ZChldmVudCkgCit7CisgICAgcHJlYW1ibGUoZXZlbnQpOworCisgICAgZnJhbWUuc3JjID0gImFi
b3V0OjpibGFuayI7CisgICAgZ2NDaGVjaygpOworfQorCitmdW5jdGlvbiBnY0NoZWNrKCkgCit7
CisgICAgaWYgKCFnY0NvdW50ZG93bikgeworICAgICAgICB0ZXN0RmFpbGVkKCJJREJUcmFuc2Fj
dGlvbiBjYW5ub3QgYmUgY29sbGVjdGVkIik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAg
ICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCFpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFu
c2FjdGlvbnMoKSkgeworICAgICAgICB0ZXN0UGFzc2VkKCJJREJUcmFuc2FjdGlvbiBpcyBjb2xs
ZWN0ZWQiKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisKKyAgICAtLWdjQ291bnRkb3duOworICAgIGdjKCk7CisKKyAgICBzZXRUaW1lb3V0KGdjQ2hl
Y2ssIGdjSW50ZXJ2YWwpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgCit7CisgICAgaWYgKCF3aW5k
b3cuaW50ZXJuYWxzIHx8ICFpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMpIHsKKyAg
ICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUgSW50ZXJu
YWxzIG9iamVjdCBhbmQgbnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSBmdW5jdGlvbicpOworICAg
ICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICgh
d2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3Mp
IHsKKyAgICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUg
VGVzdFJ1bm5lciBvYmplY3QgYW5kIHRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNzKCkgZnVuY3Rpb24n
KTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpOworICAgIGZyYW1lLnNy
YyA9ICJyZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwiOwor
ICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWUpOworfQorCit3aW5kb3cub25sb2Fk
ID0gdGVzdDsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvcmVzb3VyY2VzL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWlmcmFtZS5odG1sIGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RhdGFiYXNlLXRyYW5zYWN0
aW9uLWN5Y2xlLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM4M2UwOTg1ZmM3OTc0YWFiMTc5YmNh
Yjg5ZGFhOWU4MDU3YzRhNWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9yZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0
bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0PgorCit2YXIgb2Jq
ZWN0U3RvcmUgPSBudWxsOwordmFyIHB1dFJlcXVlc3QgPSBudWxsOworCitmdW5jdGlvbiBrZWVw
VHJhbnNhY3Rpb25BbGl2ZSgpIHsKKyAgICBwdXRSZXF1ZXN0ID0gb2JqZWN0U3RvcmUucHV0KCJ2
YWx1ZSIsICJrZXkiKTsKKyAgICBwdXRSZXF1ZXN0Lm9uc3VjY2VzcyA9IGtlZXBUcmFuc2FjdGlv
bkFsaXZlOworfQorCitmdW5jdGlvbiBvcGVuRGF0YWJhc2UoKSB7CisgICAgdmFyIGRhdGFiYXNl
TmFtZSA9ICJkYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUiOworICAgIHdpbmRvdy5p
bmRleGVkREIuZGVsZXRlRGF0YWJhc2UoZGF0YWJhc2VOYW1lKTsKKyAgICB2YXIgb3BlblJlcXVl
c3QgPSB3aW5kb3cuaW5kZXhlZERCLm9wZW4oZGF0YWJhc2VOYW1lKTsKKyAgICBvcGVuUmVxdWVz
dC5vbnVwZ3JhZGVuZWVkZWQgPSAoZXZlbnQpID0+IHsKKyAgICAgICAgdmFyIGRhdGFiYXNlID0g
ZXZlbnQudGFyZ2V0LnJlc3VsdDsKKyAgICAgICAgb2JqZWN0U3RvcmUgPSBkYXRhYmFzZS5jcmVh
dGVPYmplY3RTdG9yZSgib2JqZWN0U3RvcmUiKTsKKyAgICAgICAgZXZlbnQudGFyZ2V0LnRyYW5z
YWN0aW9uLm9uYWJvcnQgPSAoKSA9PiBwYXJlbnQuZnJhbWVUcmFuc2FjdGlvbkFib3J0ZWQoKTsK
KworICAgICAgICBrZWVwVHJhbnNhY3Rpb25BbGl2ZSgpOworCisgICAgICAgIHBhcmVudC5mcmFt
ZURhdGFiYXNlT3BlbmVkKCk7CisgICAgfTsKK30KKworb3BlbkRhdGFiYXNlKCk7Cis8L3Njcmlw
dD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434665</attachid>
            <date>2021-07-30 14:45:13 -0700</date>
            <delta_ts>2021-07-30 16:14:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223453-20210730144512.patch</filename>
            <type>text/plain</type>
            <size>10713</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNDk2CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYmE1NmQ2OGIyYTcxZGNhYzU4NDNm
ZTUwN2RhYmE0ZTAwNjRiMTFmZS4uZDVlMjRlZjEwOWIxYTA3ZDNjNDRiZTg2M2YxYjQzZGM4YjQy
NDFhYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTA3LTMwICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFsgbWFjT1Mgd2syIEFSTSA2NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgaXMgYSBmbGFrZXkgdGV4dCBmYWlsdXJlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NTMKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1NTgwNjA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlv
dWVubiBGYWJsZXQuCisKKyAgICAgICAgQXMgSmF2YVNjcmlwdENvcmUgdXNlcyBjb25zZXJ2YXRp
dmUgR0MsIHRyYW5zYWN0aW9uIG1heSBiZSBzdGlsbCBiZSBhbGl2ZSBhZnRlciBvbmUgZ2MgY2Fs
bCwgc28gd2Ugc2hvdWxkIGludm9rZQorICAgICAgICBnYyBtdWx0aXBsZSB0aW1lcy4KKworICAg
ICAgICBBbHNvLCB0aGlzIHBhdGNoIHJlbmFtZXMgSURCT2JqZWN0LWxlYWsuaHRtbCB0byBkYXRh
YmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIHRvIGJldHRlciBpbmRpY2F0ZSB3aGF0IGl0IGlz
CisgICAgICAgIHRlc3RpbmcuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9y
bS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9JREJP
YmplY3QtbGVhay1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRl
eGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL2lu
ZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFz
ZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMjEtMDctMzAgIEF5
dW1pIEtvamltYSAgPGF5dW1pX2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lP
TiAocjI3NTY0MSk6IFsgaVBhZCBEZWJ1ZyBdIGFjY2Vzc2liaWxpdHkvaW9zLXNpbXVsYXRvci9z
Y3JvbGwtaW4tb3ZlcmZsb3ctZGl2Lmh0bWwgaXMgYXNzZXJ0aW5nLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMK
aW5kZXggZjM0MjJiYmI4YmU5ZjZjMDc0OTE5ZDI5NjViNDgwOTdkMDBmMzVjYS4uZDY4MTg2Yjc2
ZWFhODcxZWU0MjY1MzgxOGIxNGEyMDNkOTNlMTU3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0x
ODYsNyArMTg2LDcgQEAgaHR0cC90ZXN0cy9zdG9yYWdlQWNjZXNzLyBbIFNraXAgXQogaHR0cC90
ZXN0cy9uYXZpZ2F0aW9uL3Byb2Nlc3Mtc3dhcC13aW5kb3ctb3Blbi5odG1sIFsgU2tpcCBdCiBo
dHRwL3Rlc3RzL25hdmlnYXRpb24vdXNlcmFnZW50LXJlbG9hZC5weSBbIFNraXAgXQogc3RvcmFn
ZS9pbmRleGVkZGIvbW9kZXJuL29wZW5kYXRhYmFzZS1hZnRlci1zdG9yYWdlLWNyYXNoLmh0bWwg
WyBTa2lwIF0KLXN0b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBTa2lwIF0K
K3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwgWyBTa2lw
IF0KIGZhc3QvZm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5
cGluZy5odG1sIFsgU2tpcCBdCiBodHRwL3Rlc3RzL2luLWFwcC1icm93c2VyLXByaXZhY3kvIFsg
U2tpcCBdCiBmYXN0L3NwZWVjaHJlY29nbml0aW9uL3Blcm1pc3Npb24tZXJyb3IuaHRtbCBbIFNr
aXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0
YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IDkzMjlmODRmOGM5NGQ3ZWUyZjI0N2QzODZhMWY5Y2Q4YjhhYTEyZTkuLmY1ODAzNDQwZTBk
MWI0MjhjM2VkZmU1MjY1MDI2MzA4NGJiZDNiMDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTExMSw2ICsxMTEsOCBAQCBmYXN0L2FuaW1h
dGlvbi9yZXF1ZXN0LWFuaW1hdGlvbi1mcmFtZS1pbi10d28tcGFnZXMuaHRtbCBbIFBhc3MgXQog
ZmFzdC9mb3Jtcy9maWxlL2VudHJpZXMtYXBpL2ltYWdlLXRyYW5zY29kZS1vcGVuLXBhbmVsLmh0
bWwgWyBQYXNzIF0KIGZhc3QvZm9ybXMvZmlsZS9lbnRyaWVzLWFwaS9pbWFnZS1uby10cmFuc2Nv
ZGUtb3Blbi1wYW5lbC5odG1sIFsgUGFzcyBdCiAKK3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNl
LXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwgWyBQYXNzIF0KKwogIy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLwogIyBFbmQgcGxhdGZvcm0tc3BlY2lmaWMgZGlyZWN0b3JpZXMuCiAjLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCkBAIC0xMzgyLDggKzEzODQsNiBAQCB3ZWJr
aXQub3JnL2IvMjIzMzg3IG1lZGlhL3RyYWNrL3RyYWNrLWN1ZS1jc3MuaHRtbCBbIFBhc3MgSW1h
Z2VPbmx5RmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8yMjMzODMgY29tcG9zaXRpbmcvdmlkZW8v
dmlkZW8tYm9yZGVyLXJhZGl1cy5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIAotd2Vi
a2l0Lm9yZy9iLzIyMzQ1MyBbIGFybTY0IF0gc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxl
YWsuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCi0KIHdlYmtpdC5vcmcvYi8yMjM0NjIgWyBEZWJ1ZyBh
cm02NCBdIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJlLXN0cmVh
bXMvR1VNLW9wdGlvbmFsLWNvbnN0cmFpbnQuaHR0cHMuaHRtbCBbIFBhc3MgQ3Jhc2ggXQogCiB3
ZWJraXQub3JnL2IvMjIzNDg2IFsgYXJtNjQgXSBpbnNwZWN0b3IvY3NzL21vZGlmeS1pbmxpbmUt
c3R5bGUuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0
RXhwZWN0YXRpb25zCmluZGV4IDY1NjFmMDZjNTQ2ZTgwZTc5YWYxMTdhYjQwMjBkNTNhNmZjYmM3
NWYuLmNlYTQ5ZWJhN2Y1YmJmMmNlMGY1N2IyNTMzOGJmMGY5MzA4MTI5OWUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCkBAIC03OTMsNyArNzkzLDYgQEAgaHR0
cC93cHQvY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeS8gWyBQYXNzIF0KIAogaHR0cC90ZXN0
cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxvYWQucHkgWyBQYXNzIF0KIHN0b3JhZ2UvaW5kZXhl
ZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgUGFzcyBd
Ci1zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sIFsgUGFzcyBdCiAKIGZhc3Qv
Zm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGluZy5odG1s
IFsgUGFzcyBdCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL0lE
Qk9iamVjdC1sZWFrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L0lEQk9iamVjdC1sZWFrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggYjI4NjU5NWE1YmRiMGY3YjA5ODI4ODBiMWY5ZjMxNzA0MjA1MzljOC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9JREJPYmplY3QtbGVhay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwx
MCArMCwwIEBACi1UaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlvbiBvYmplY3Rz
IGFyZSBmcmVlZC4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgaW50ZXJu
YWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkgaXMgMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA2YWE4YWI2MTAzODIzYjdjOTdiZmE3N2VmNTU2ZDgxOWM5YWFhMGNjLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCww
IEBACi08IURPQ1RZUEUgaHRtbD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NoYXJlZC5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oJ1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IElEQlRy
YW5zYWN0aW9uIG9iamVjdHMgYXJlIGZyZWVkLicpOwotCi1qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
LQotZnVuY3Rpb24gdGVzdCgpIHsKLSAgICBpZiAoIXdpbmRvdy5pbnRlcm5hbHMgfHwgIWludGVy
bmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucykgewotICAgICAgICB0ZXN0RmFpbGVkKCdUaGlz
IHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHRoZSBJbnRlcm5hbHMgb2JqZWN0Jyk7Ci0gICAgICAg
IGZpbmlzaEpTVGVzdCgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgaWYgKGxvY2Fs
U3RvcmFnZS5kb25lRmlyc3RMb2FkKSB7Ci0gICAgICAgIGdjKCk7Ci0gICAgICAgIHNob3VsZEJl
RXF1YWxUb051bWJlcigiaW50ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkiLCAwKTsK
LSAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICB2
YXIgZGJuYW1lID0gc2V0REJOYW1lRnJvbVBhdGgoKSArIERhdGUoKTsKLSAgICB2YXIgcmVxdWVz
dCA9ICB3aW5kb3cuaW5kZXhlZERCLm9wZW4oZGJuYW1lKTsKLSAgICByZXF1ZXN0Lm9udXBncmFk
ZW5lZWRlZCA9IGZ1bmN0aW9uKGV2dCkgewotICAgICAgICBsb2NhbFN0b3JhZ2UuZG9uZUZpcnN0
TG9hZCA9IHRydWU7Ci0gICAgICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5u
ZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MpIHsKLSAgICAgICAgICAgIHRlc3RGYWlsZWQoJ1Ro
aXMgdGVzdCByZXF1aXJlcyBhY2Nlc3MgdG8gdGhlIFRlc3RSdW5uZXIgb2JqZWN0IGFuZCB0ZXJt
aW5hdGVOZXR3b3JrUHJvY2VzcygpIGZ1bmN0aW9uJyk7Ci0gICAgICAgICAgICBmaW5pc2hKU1Rl
c3QoKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfSAKLQotICAgICAgICAvLyBNYWtl
IHN1cmUgbG9jYWxTdG9yYWdlIGlzIGZsdXNoZWQgdG8gZGlzayBiZWZvcmUgY3Jhc2hpbmcgbmV0
d29yayBwcm9jZXNzLgotICAgICAgICB0ZXN0UnVubmVyLnN5bmNMb2NhbFN0b3JhZ2UoKTsKLSAg
ICAgICAgdGVzdFJ1bm5lci50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwotICAgICAgICBldnQu
dGFyZ2V0LnJlc3VsdC5vbmVycm9yID0gZnVuY3Rpb24oZSkgewotICAgICAgICAgICAgc2V0VGlt
ZW91dCgoKCk9PiB7Ci0gICAgICAgICAgICAgICAgbG9jYXRpb24ucmVsb2FkKCk7Ci0gICAgICAg
ICAgICB9KSwgMCk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXRlc3QoKTsKLTwvc2NyaXB0Pgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZDc1ODA4OTM0MThmNjlhZWUwNjY5M2FkODI2YzM3ZGI1
MWRjZjU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
ZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAK
K1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IElEQlRyYW5zYWN0aW9uIG9iamVjdHMgYXJlIGNvbGxl
Y3RlZCB3aGVuIGNvbm5lY3Rpb24gdG8gc2VydmVyIGlzIGxvc3QuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCisKK2ZyYW1lRGF0YWJhc2VPcGVuZWQoKToKK1BBU1MgaW50ZXJuYWxz
Lm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkgaXMgMQorCitmcmFtZVRyYW5zYWN0aW9uQWJvcnRl
ZCgpOgorUEFTUyBJREJUcmFuc2FjdGlvbiBpcyBjb2xsZWN0ZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5kMmFiYjFmZDM3MjNiZTdhMWJmM2UwYTZmYzdiZjc0ODk1MDAwNmJiCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2Ut
dHJhbnNhY3Rpb24tY3ljbGUuaHRtbApAQCAtMCwwICsxLDc1IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0icmVzb3VyY2VzL3NoYXJlZC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oJ1RoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IElEQlRyYW5zYWN0aW9uIG9iamVjdHMgYXJl
IGNvbGxlY3RlZCB3aGVuIGNvbm5lY3Rpb24gdG8gc2VydmVyIGlzIGxvc3QuJyk7CisKK2NvbnN0
IGdjSW50ZXJ2YWwgPSA1MDsKK3ZhciBnY0NvdW50ZG93biA9IDUwOwordmFyIGZyYW1lID0gbnVs
bDsKKworZnVuY3Rpb24gZGF0YWJhc2VOYW1lKCkKK3sKKyAgICByZXR1cm4gc2V0REJOYW1lRnJv
bVBhdGgoKTsKK30KKworZnVuY3Rpb24gZnJhbWVEYXRhYmFzZU9wZW5lZChldmVudCkgCit7Cisg
ICAgcHJlYW1ibGUoZXZlbnQpOworCisgICAgZ2MoKTsKKyAgICBzZXRUaW1lb3V0KCgpID0+IHsK
KyAgICAgICAgc2hvdWxkQmVFcXVhbFRvTnVtYmVyKCJpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFu
c2FjdGlvbnMoKSIsIDEpOworICAgICAgICB0ZXN0UnVubmVyLnRlcm1pbmF0ZU5ldHdvcmtQcm9j
ZXNzKCk7CisgICAgfSwgZ2NJbnRlcnZhbCk7Cit9CisKK2Z1bmN0aW9uIGZyYW1lVHJhbnNhY3Rp
b25BYm9ydGVkKGV2ZW50KSAKK3sKKyAgICBwcmVhbWJsZShldmVudCk7CisKKyAgICBmcmFtZS5z
cmMgPSAiYWJvdXQ6OmJsYW5rIjsKKyAgICBnY0NoZWNrKCk7Cit9CisKK2Z1bmN0aW9uIGdjQ2hl
Y2soKSAKK3sKKyAgICBpZiAoIWdjQ291bnRkb3duKSB7CisgICAgICAgIHRlc3RGYWlsZWQoIklE
QlRyYW5zYWN0aW9uIGNhbm5vdCBiZSBjb2xsZWN0ZWQiKTsKKyAgICAgICAgZmluaXNoSlNUZXN0
KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWludGVybmFscy5udW1iZXJP
ZklEQlRyYW5zYWN0aW9ucygpKSB7CisgICAgICAgIHRlc3RQYXNzZWQoIklEQlRyYW5zYWN0aW9u
IGlzIGNvbGxlY3RlZCIpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC0tZ2NDb3VudGRvd247CisgICAgZ2MoKTsKKworICAgIHNldFRpbWVv
dXQoZ2NDaGVjaywgZ2NJbnRlcnZhbCk7Cit9CisKK2Z1bmN0aW9uIHRlc3QoKSAKK3sKKyAgICBp
ZiAoIXdpbmRvdy5pbnRlcm5hbHMgfHwgIWludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9u
cykgeworICAgICAgICB0ZXN0RmFpbGVkKCdUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHRo
ZSBJbnRlcm5hbHMgb2JqZWN0IGFuZCBudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGZ1bmN0aW9u
Jyk7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgaWYgKCF3aW5kb3cudGVzdFJ1bm5lciB8fCAhdGVzdFJ1bm5lci50ZXJtaW5hdGVOZXR3b3Jr
UHJvY2VzcykgeworICAgICAgICB0ZXN0RmFpbGVkKCdUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNz
IHRvIHRoZSBUZXN0UnVubmVyIG9iamVjdCBhbmQgdGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKSBm
dW5jdGlvbicpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIGZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CisgICAg
ZnJhbWUuc3JjID0gInJlc291cmNlcy9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUu
aHRtbCI7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmcmFtZSk7Cit9CisKK3dpbmRv
dy5vbmxvYWQgPSB0ZXN0OworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGF0YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGF0YWJhc2Ut
dHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2U1MGEzMjJlMTMwNTZh
ZDQ4M2M3NThkNGEwYThhYWI5MDZiMDk5NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1p
ZnJhbWUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQ+CisK
K3ZhciBvYmplY3RTdG9yZSA9IG51bGw7Cit2YXIgcHV0UmVxdWVzdCA9IG51bGw7CisKK2Z1bmN0
aW9uIGtlZXBUcmFuc2FjdGlvbkFsaXZlKCkgeworICAgIHRyeSB7CisgICAgICAgIHB1dFJlcXVl
c3QgPSBvYmplY3RTdG9yZS5wdXQoInZhbHVlIiwgImtleSIpOworICAgICAgICBwdXRSZXF1ZXN0
Lm9uc3VjY2VzcyA9IGtlZXBUcmFuc2FjdGlvbkFsaXZlOworICAgIH0gY2F0Y2ggKCkgeworICAg
ICAgICBwdXRSZXF1ZXN0ID0gbnVsbDsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIG9wZW5EYXRhYmFz
ZSgpIHsKKyAgICB2YXIgZGF0YWJhc2VOYW1lID0gImRhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xl
LWlmcmFtZSI7CisgICAgd2luZG93LmluZGV4ZWREQi5kZWxldGVEYXRhYmFzZShkYXRhYmFzZU5h
bWUpOworICAgIHZhciBvcGVuUmVxdWVzdCA9IHdpbmRvdy5pbmRleGVkREIub3BlbihkYXRhYmFz
ZU5hbWUpOworICAgIG9wZW5SZXF1ZXN0Lm9udXBncmFkZW5lZWRlZCA9IChldmVudCkgPT4gewor
ICAgICAgICB2YXIgZGF0YWJhc2UgPSBldmVudC50YXJnZXQucmVzdWx0OworICAgICAgICBvYmpl
Y3RTdG9yZSA9IGRhdGFiYXNlLmNyZWF0ZU9iamVjdFN0b3JlKCJvYmplY3RTdG9yZSIpOworICAg
ICAgICBldmVudC50YXJnZXQudHJhbnNhY3Rpb24ub25hYm9ydCA9ICgpID0+IHBhcmVudC5mcmFt
ZVRyYW5zYWN0aW9uQWJvcnRlZCgpOworCisgICAgICAgIGtlZXBUcmFuc2FjdGlvbkFsaXZlKCk7
CisKKyAgICAgICAgcGFyZW50LmZyYW1lRGF0YWJhc2VPcGVuZWQoKTsKKyAgICB9OworfQorCitv
cGVuRGF0YWJhc2UoKTsKKzwvc2NyaXB0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434670</attachid>
            <date>2021-07-30 16:14:28 -0700</date>
            <delta_ts>2021-07-30 23:41:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223453-20210730161427.patch</filename>
            <type>text/plain</type>
            <size>10736</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTAxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODA5ODk4NmQ4OTQ5YWUwODBjYjFj
ZDVjYjJmM2I2NmJhZmI0MDk2Yy4uMzYyODg1MGNhN2RiMWNjNDE0MWMxNDc0NDE2ZWZkMWYxNTk1
NjQyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTA3LTMwICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFsgbWFjT1Mgd2syIEFSTSA2NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgaXMgYSBmbGFrZXkgdGV4dCBmYWlsdXJlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM0NTMKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc1NTgwNjA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlv
dWVubiBGYWJsZXQuCisKKyAgICAgICAgQXMgSmF2YVNjcmlwdENvcmUgdXNlcyBjb25zZXJ2YXRp
dmUgR0MsIHRyYW5zYWN0aW9uIG1heSBiZSBzdGlsbCBiZSBhbGl2ZSBhZnRlciBvbmUgZ2MgY2Fs
bCwgc28gd2Ugc2hvdWxkIGludm9rZQorICAgICAgICBnYyBtdWx0aXBsZSB0aW1lcy4KKworICAg
ICAgICBBbHNvLCB0aGlzIHBhdGNoIHJlbmFtZXMgSURCT2JqZWN0LWxlYWsuaHRtbCB0byBkYXRh
YmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIHRvIGJldHRlciBpbmRpY2F0ZSB3aGF0IGl0IGlz
CisgICAgICAgIHRlc3RpbmcuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9y
bS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9JREJP
YmplY3QtbGVhay1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRl
eGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL2lu
ZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kYXRhYmFz
ZS10cmFuc2FjdGlvbi1jeWNsZS1pZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMjEtMDctMzAgIEpl
YW4tWXZlcyBBdmVuYXJkICA8anlhQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChy
Mjc0NDYwPyk6IEluZmluaXRlIHJlY3Vyc2lvbiBvbiBmdWxsc2NyZWVuL2Z1bGwtc2NyZWVuLXJl
bW92ZS1hbmNlc3Rvci5odG1sIGluIFdUUjo6SW5qZWN0ZWRCdW5kbGVQYWdlOjpjbG9zZUZ1bGxT
Y3JlZW4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYzNDIyYmJiOGJlOWY2YzA3NDkxOWQyOTY1YjQ4
MDk3ZDAwZjM1Y2EuLmQ2ODE4NmI3NmVhYTg3MWVlNDI2NTM4MThiMTRhMjAzZDkzZTE1N2QgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtMTg2LDcgKzE4Niw3IEBAIGh0dHAvdGVzdHMvc3RvcmFnZUFj
Y2Vzcy8gWyBTa2lwIF0KIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9wcm9jZXNzLXN3YXAtd2luZG93
LW9wZW4uaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3VzZXJhZ2VudC1yZWxv
YWQucHkgWyBTa2lwIF0KIHN0b3JhZ2UvaW5kZXhlZGRiL21vZGVybi9vcGVuZGF0YWJhc2UtYWZ0
ZXItc3RvcmFnZS1jcmFzaC5odG1sIFsgU2tpcCBdCi1zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmpl
Y3QtbGVhay5odG1sIFsgU2tpcCBdCitzdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2Fj
dGlvbi1jeWNsZS5odG1sIFsgU2tpcCBdCiBmYXN0L2Zvcm1zL2NhbGwtdGV4dC1kaWQtY2hhbmdl
LWluLXRleHQtZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9pbi1h
cHAtYnJvd3Nlci1wcml2YWN5LyBbIFNraXAgXQogZmFzdC9zcGVlY2hyZWNvZ25pdGlvbi9wZXJt
aXNzaW9uLWVycm9yLmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13
azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAyZTQyNGYxYTQzOTY4Y2VlM2RiMjg0MjU2YmUxNGVk
ODJmYWYwMzEzLi45OWYyYWVhMzE3NzY2YTE0OTg5YTcyOTQzZTNmOTc2OGRhMWFhZGJiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMTEs
NiArMTExLDggQEAgZmFzdC9hbmltYXRpb24vcmVxdWVzdC1hbmltYXRpb24tZnJhbWUtaW4tdHdv
LXBhZ2VzLmh0bWwgWyBQYXNzIF0KIGZhc3QvZm9ybXMvZmlsZS9lbnRyaWVzLWFwaS9pbWFnZS10
cmFuc2NvZGUtb3Blbi1wYW5lbC5odG1sIFsgUGFzcyBdCiBmYXN0L2Zvcm1zL2ZpbGUvZW50cmll
cy1hcGkvaW1hZ2Utbm8tdHJhbnNjb2RlLW9wZW4tcGFuZWwuaHRtbCBbIFBhc3MgXQogCitzdG9y
YWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1jeWNsZS5odG1sIFsgUGFzcyBdCisK
ICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICMgRW5kIHBsYXRmb3JtLXNwZWNp
ZmljIGRpcmVjdG9yaWVzLgogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpAQCAt
MTM4Miw4ICsxMzg0LDYgQEAgd2Via2l0Lm9yZy9iLzIyMzM4NyBtZWRpYS90cmFjay90cmFjay1j
dWUtY3NzLmh0bWwgWyBQYXNzIEltYWdlT25seUZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMjIz
MzgzIGNvbXBvc2l0aW5nL3ZpZGVvL3ZpZGVvLWJvcmRlci1yYWRpdXMuaHRtbCBbIFBhc3MgSW1h
Z2VPbmx5RmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcvYi8yMjM0NTMgWyBhcm02NCBdIHN0b3JhZ2Uv
aW5kZXhlZGRiL0lEQk9iamVjdC1sZWFrLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQotCiB3ZWJraXQu
b3JnL2IvMjIzNDYyIFsgRGVidWcgYXJtNjQgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL21lZGlhY2FwdHVyZS1zdHJlYW1zL0dVTS1vcHRpb25hbC1jb25zdHJhaW50Lmh0dHBzLmh0
bWwgWyBQYXNzIENyYXNoIF0KIAogd2Via2l0Lm9yZy9iLzIyMzQ4NiBbIGFybTY0IF0gaW5zcGVj
dG9yL2Nzcy9tb2RpZnktaW5saW5lLXN0eWxlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA2NTYxZjA2YzU0NmU4MGU3
OWFmMTE3YWI0MDIwZDUzYTZmY2JjNzVmLi5jZWE0OWViYTdmNWJiZjJjZTBmNTdiMjUzMzhiZjBm
OTMwODEyOTllIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVj
dGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtNzkzLDcgKzc5Myw2IEBAIGh0dHAvd3B0L2Nyb3NzLW9yaWdpbi1yZXNvdXJjZS1wb2xpY3kv
IFsgUGFzcyBdCiAKIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi91c2VyYWdlbnQtcmVsb2FkLnB5IFsg
UGFzcyBdCiBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4vb3BlbmRhdGFiYXNlLWFmdGVyLXN0b3Jh
Z2UtY3Jhc2guaHRtbCBbIFBhc3MgXQotc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWsu
aHRtbCBbIFBhc3MgXQogCiBmYXN0L2Zvcm1zL2NhbGwtdGV4dC1kaWQtY2hhbmdlLWluLXRleHQt
ZmllbGQtd2hlbi10eXBpbmcuaHRtbCBbIFBhc3MgXQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyODY1OTVhNWJkYjBmN2IwOTgyODgwYjFmOWYzMTcw
NDIwNTM5YzguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWstZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQg
SURCVHJhbnNhY3Rpb24gb2JqZWN0cyBhcmUgZnJlZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KLQotCi1QQVNTIGludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGlzIDAK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1s
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvSURCT2JqZWN0LWxlYWsuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmFhOGFiNjEwMzgyM2I3Yzk3YmZhNzdlZjU1NmQ4
MTljOWFhYTBjYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9JREJPYmplY3QtbGVhay5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291
cmNlcy9zaGFyZWQuanMiPjwvc2NyaXB0PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdUaGlzIHRl
c3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2FjdGlvbiBvYmplY3RzIGFyZSBmcmVlZC4nKTsKLQot
anNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1bmN0aW9uIHRlc3QoKSB7Ci0gICAgaWYgKCF3aW5k
b3cuaW50ZXJuYWxzIHx8ICFpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMpIHsKLSAg
ICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUgSW50ZXJu
YWxzIG9iamVjdCcpOwotICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgcmV0dXJuOwot
ICAgIH0KLQotICAgIGlmIChsb2NhbFN0b3JhZ2UuZG9uZUZpcnN0TG9hZCkgewotICAgICAgICBn
YygpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9OdW1iZXIoImludGVybmFscy5udW1iZXJPZklE
QlRyYW5zYWN0aW9ucygpIiwgMCk7Ci0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICBy
ZXR1cm47Ci0gICAgfQotCi0gICAgdmFyIGRibmFtZSA9IHNldERCTmFtZUZyb21QYXRoKCkgKyBE
YXRlKCk7Ci0gICAgdmFyIHJlcXVlc3QgPSAgd2luZG93LmluZGV4ZWREQi5vcGVuKGRibmFtZSk7
Ci0gICAgcmVxdWVzdC5vbnVwZ3JhZGVuZWVkZWQgPSBmdW5jdGlvbihldnQpIHsKLSAgICAgICAg
bG9jYWxTdG9yYWdlLmRvbmVGaXJzdExvYWQgPSB0cnVlOwotICAgICAgICBpZiAoIXdpbmRvdy50
ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNzKSB7Ci0gICAg
ICAgICAgICB0ZXN0RmFpbGVkKCdUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHRoZSBUZXN0
UnVubmVyIG9iamVjdCBhbmQgdGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKSBmdW5jdGlvbicpOwot
ICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
IH0gCi0KLSAgICAgICAgLy8gTWFrZSBzdXJlIGxvY2FsU3RvcmFnZSBpcyBmbHVzaGVkIHRvIGRp
c2sgYmVmb3JlIGNyYXNoaW5nIG5ldHdvcmsgcHJvY2Vzcy4KLSAgICAgICAgdGVzdFJ1bm5lci5z
eW5jTG9jYWxTdG9yYWdlKCk7Ci0gICAgICAgIHRlc3RSdW5uZXIudGVybWluYXRlTmV0d29ya1By
b2Nlc3MoKTsKLSAgICAgICAgZXZ0LnRhcmdldC5yZXN1bHQub25lcnJvciA9IGZ1bmN0aW9uKGUp
IHsKLSAgICAgICAgICAgIHNldFRpbWVvdXQoKCgpPT4gewotICAgICAgICAgICAgICAgIGxvY2F0
aW9uLnJlbG9hZCgpOwotICAgICAgICAgICAgfSksIDApOwotICAgICAgICB9Ci0gICAgfQotfQot
Ci10ZXN0KCk7Ci08L3NjcmlwdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS10cmFuc2FjdGlvbi1j
eWNsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFz
ZS10cmFuc2FjdGlvbi1jeWNsZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGQ3NTgwODkzNDE4
ZjY5YWVlMDY2OTNhZDgyNmMzN2RiNTFkY2Y1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDE1IEBACitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJUcmFuc2Fj
dGlvbiBvYmplY3RzIGFyZSBjb2xsZWN0ZWQgd2hlbiBjb25uZWN0aW9uIHRvIHNlcnZlciBpcyBs
b3N0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitmcmFtZURhdGFiYXNlT3Bl
bmVkKCk6CitQQVNTIGludGVybmFscy5udW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGlzIDEKKwor
ZnJhbWVUcmFuc2FjdGlvbkFib3J0ZWQoKToKK1BBU1MgSURCVHJhbnNhY3Rpb24gaXMgY29sbGVj
dGVkCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtdHJhbnNh
Y3Rpb24tY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNl
LXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDJhYmIxZmQzNzIzYmU3YTFiZjNl
MGE2ZmM3YmY3NDg5NTAwMDZiYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLmh0bWwKQEAgLTAsMCArMSw3
NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9zaGFyZWQuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBJREJU
cmFuc2FjdGlvbiBvYmplY3RzIGFyZSBjb2xsZWN0ZWQgd2hlbiBjb25uZWN0aW9uIHRvIHNlcnZl
ciBpcyBsb3N0LicpOworCitjb25zdCBnY0ludGVydmFsID0gNTA7Cit2YXIgZ2NDb3VudGRvd24g
PSA1MDsKK3ZhciBmcmFtZSA9IG51bGw7CisKK2Z1bmN0aW9uIGRhdGFiYXNlTmFtZSgpCit7Cisg
ICAgcmV0dXJuIHNldERCTmFtZUZyb21QYXRoKCk7Cit9CisKK2Z1bmN0aW9uIGZyYW1lRGF0YWJh
c2VPcGVuZWQoZXZlbnQpIAoreworICAgIHByZWFtYmxlKGV2ZW50KTsKKworICAgIGdjKCk7Cisg
ICAgc2V0VGltZW91dCgoKSA9PiB7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb051bWJlcigiaW50
ZXJuYWxzLm51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkiLCAxKTsKKyAgICAgICAgdGVzdFJ1bm5l
ci50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOworICAgIH0sIGdjSW50ZXJ2YWwpOworfQorCitm
dW5jdGlvbiBmcmFtZVRyYW5zYWN0aW9uQWJvcnRlZChldmVudCkgCit7CisgICAgcHJlYW1ibGUo
ZXZlbnQpOworCisgICAgZnJhbWUuc3JjID0gImFib3V0OjpibGFuayI7CisgICAgZ2NDaGVjaygp
OworfQorCitmdW5jdGlvbiBnY0NoZWNrKCkgCit7CisgICAgaWYgKCFnY0NvdW50ZG93bikgewor
ICAgICAgICB0ZXN0RmFpbGVkKCJJREJUcmFuc2FjdGlvbiBjYW5ub3QgYmUgY29sbGVjdGVkIik7
CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAg
aWYgKCFpbnRlcm5hbHMubnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSkgeworICAgICAgICB0ZXN0
UGFzc2VkKCJJREJUcmFuc2FjdGlvbiBpcyBjb2xsZWN0ZWQiKTsKKyAgICAgICAgZmluaXNoSlNU
ZXN0KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAtLWdjQ291bnRkb3duOworICAg
IGdjKCk7CisKKyAgICBzZXRUaW1lb3V0KGdjQ2hlY2ssIGdjSW50ZXJ2YWwpOworfQorCitmdW5j
dGlvbiB0ZXN0KCkgCit7CisgICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzIHx8ICFpbnRlcm5hbHMu
bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMpIHsKKyAgICAgICAgdGVzdEZhaWxlZCgnVGhpcyB0ZXN0
IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUgSW50ZXJuYWxzIG9iamVjdCBhbmQgbnVtYmVyT2ZJREJU
cmFuc2FjdGlvbnMoKSBmdW5jdGlvbicpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RS
dW5uZXIudGVybWluYXRlTmV0d29ya1Byb2Nlc3MpIHsKKyAgICAgICAgdGVzdEZhaWxlZCgnVGhp
cyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byB0aGUgVGVzdFJ1bm5lciBvYmplY3QgYW5kIHRlcm1p
bmF0ZU5ldHdvcmtQcm9jZXNzKCkgZnVuY3Rpb24nKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoJ2lmcmFtZScpOworICAgIGZyYW1lLnNyYyA9ICJyZXNvdXJjZXMvZGF0YWJhc2UtdHJh
bnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwiOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQoZnJhbWUpOworfQorCit3aW5kb3cub25sb2FkID0gdGVzdDsKKzwvc2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RhdGFiYXNlLXRy
YW5zYWN0aW9uLWN5Y2xlLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2RhdGFiYXNlLXRyYW5zYWN0aW9uLWN5Y2xlLWlmcmFtZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjcwNTVhZGVlMzcxNmMzODVmZDc0MjY0YmIxY2Q2MTNlNDM0YjU1MGYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGF0YWJh
c2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFET0NU
WVBFIGh0bWw+Cis8c2NyaXB0PgorCit2YXIgb2JqZWN0U3RvcmUgPSBudWxsOwordmFyIHB1dFJl
cXVlc3QgPSBudWxsOworCitmdW5jdGlvbiBrZWVwVHJhbnNhY3Rpb25BbGl2ZSgpIHsKKyAgICB0
cnkgeworICAgICAgICBwdXRSZXF1ZXN0ID0gb2JqZWN0U3RvcmUucHV0KCJ2YWx1ZSIsICJrZXki
KTsKKyAgICAgICAgcHV0UmVxdWVzdC5vbnN1Y2Nlc3MgPSBrZWVwVHJhbnNhY3Rpb25BbGl2ZTsK
KyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIHB1dFJlcXVlc3QgPSBudWxsOworICAgIH0KK30K
KworZnVuY3Rpb24gb3BlbkRhdGFiYXNlKCkgeworICAgIHZhciBkYXRhYmFzZU5hbWUgPSAiZGF0
YWJhc2UtdHJhbnNhY3Rpb24tY3ljbGUtaWZyYW1lIjsKKyAgICB3aW5kb3cuaW5kZXhlZERCLmRl
bGV0ZURhdGFiYXNlKGRhdGFiYXNlTmFtZSk7CisgICAgdmFyIG9wZW5SZXF1ZXN0ID0gd2luZG93
LmluZGV4ZWREQi5vcGVuKGRhdGFiYXNlTmFtZSk7CisgICAgb3BlblJlcXVlc3Qub251cGdyYWRl
bmVlZGVkID0gKGV2ZW50KSA9PiB7CisgICAgICAgIHZhciBkYXRhYmFzZSA9IGV2ZW50LnRhcmdl
dC5yZXN1bHQ7CisgICAgICAgIG9iamVjdFN0b3JlID0gZGF0YWJhc2UuY3JlYXRlT2JqZWN0U3Rv
cmUoIm9iamVjdFN0b3JlIik7CisgICAgICAgIGV2ZW50LnRhcmdldC50cmFuc2FjdGlvbi5vbmFi
b3J0ID0gKCkgPT4gcGFyZW50LmZyYW1lVHJhbnNhY3Rpb25BYm9ydGVkKCk7CisKKyAgICAgICAg
a2VlcFRyYW5zYWN0aW9uQWxpdmUoKTsKKworICAgICAgICBwYXJlbnQuZnJhbWVEYXRhYmFzZU9w
ZW5lZCgpOworICAgIH07Cit9CisKK29wZW5EYXRhYmFzZSgpOworPC9zY3JpcHQ+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>