<?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>220967</bug_id>
          
          <creation_ts>2021-01-26 01:43:48 -0800</creation_ts>
          <short_desc>Use WebRTC GPU process flag for MediaRecorder</short_desc>
          <delta_ts>2021-02-02 04:31:12 -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>WebRTC</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221161</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>221132</dependson>
    
    <dependson>221195</dependson>
    
    <dependson>221197</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</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>1722425</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-01-26 01:43:48 -0800</bug_when>
    <thetext>Use WebRTC GPU process flag for MediaRecorder</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1722426</commentid>
    <comment_count>1</comment_count>
      <attachid>418381</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-01-26 01:48:40 -0800</bug_when>
    <thetext>Created attachment 418381
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1722452</commentid>
    <comment_count>2</comment_count>
      <attachid>418393</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-01-26 04:15:57 -0800</bug_when>
    <thetext>Created attachment 418393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1722511</commentid>
    <comment_count>3</comment_count>
      <attachid>418420</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-01-26 07:55:48 -0800</bug_when>
    <thetext>Created attachment 418420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1723650</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-29 00:53:19 -0800</bug_when>
    <thetext>Committed r272052: &lt;https://trac.webkit.org/changeset/272052&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 418420.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1723653</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-29 00:55:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/73745023&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1723698</commentid>
    <comment_count>6</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2021-01-29 07:06:04 -0800</bug_when>
    <thetext>(In reply to EWS from comment #4)
&gt; Committed r272052: &lt;https://trac.webkit.org/changeset/272052&gt;
This seems to be causing following wk2 test to fail (note that EWS didn&apos;t caught it probably because ews bots were on Mojave, and this failure is on Catalina. EWS bots are being updated to Catalina) 

https://results.webkit.org/?suite=layout-tests&amp;test=imported%2Fw3c%2Fweb-platform-tests%2Fmediacapture-record%2FMediaRecorder-stop.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1723700</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2021-01-29 07:09:19 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 221132</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724589</commentid>
    <comment_count>8</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-02-02 02:44:57 -0800</bug_when>
    <thetext>http/wpt/mediarecorder/mute-tracks.html is already flaky without this patch and will be fixed in https://bugs.webkit.org/show_bug.cgi?id=221195.
Relanding.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724590</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-02 02:45:43 -0800</bug_when>
    <thetext>ChangeLog entry in LayoutTests/ChangeLog contains OOPS!.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724593</commentid>
    <comment_count>10</comment_count>
      <attachid>418978</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-02-02 02:52:08 -0800</bug_when>
    <thetext>Created attachment 418978
Rebasing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724612</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-02 04:12:08 -0800</bug_when>
    <thetext>commit-queue failed to commit attachment 418978 to WebKit repository.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724617</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-02 04:31:10 -0800</bug_when>
    <thetext>Committed r272206: &lt;https://trac.webkit.org/changeset/272206&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 418978.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418381</attachid>
            <date>2021-01-26 01:48:40 -0800</date>
            <delta_ts>2021-01-26 04:15:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220967-20210126104839.patch</filename>
            <type>text/plain</type>
            <size>11412</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNzM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjQ3MjJhNGYzNTQwNTRk
ZmU0MDA4NWYyM2NhMjIzZDViOGVkMzk0OS4uYTZmYjQ2ZDYxNDM3ZTIyZDdhYjUxZmJmYTBmOGE2
ZTA2MGIyNzU4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAxLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgV2ViUlRDIEdQVSBw
cm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBJbnRlcm5hbHM6OnNldFVzZUdQVVByb2Nlc3NG
b3JXZWJSVEMgYW5kIHJlbHkgb24gV2ViUlRDIGNvZGVjIGZlYXR1cmUgZmxhZy4KKworICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJvdmlkZXIuaDoKKyAgICAg
ICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6
OnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMpOiBEZWxldGVkLgorICAgICAgICAqIHRlc3Rpbmcv
SW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIxLTAx
LTI1ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWFkYWJs
ZVN0cmVhbSBDKysgbWV0aG9kcyBzaG91bGQgY2hlY2sgZm9yIGV4Y2VwdGlvbgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRl
eCA5Nzg5MGViNWNjYWExMjg4YTFkYzY1Yzg3NTlkNWRmNWJjYTA5YTA5Li43NzViZDhlNDcyMDFl
M2EwOTQzZWE0ODJiZmIyMjZhYTA3ZWZjNzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisy
MDIxLTAxLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBV
c2UgV2ViUlRDIEdQVSBwcm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvd2Vi
cnRjL01lZGlhUmVjb3JkZXJQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhUmVj
b3JkZXJQcm92aWRlcjo6Y3JlYXRlTWVkaWFSZWNvcmRlclByaXZhdGUpOgorCiAyMDIxLTAxLTIx
ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAgUGlQIHZpZGVvIHN1
YnRpdGxlcyBzdG9wIHVwZGF0aW5nIHdoZW4gU2FmYXJpIGlzIGJhY2tncm91bmRlZApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQ
cm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVj
b3JkZXJQcm92aWRlci5oCmluZGV4IGQ3ZDkzNDA4ZmUzZDQ5YTE2NzQxNTllMjAxOTdjZDdjZjli
NWMxMTAuLjA5MjVlYzlmMjkyYzE4MWY2ZmEzODAxNmVjNmM0ZjI3OWM5YzQ5YTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJv
dmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFS
ZWNvcmRlclByb3ZpZGVyLmgKQEAgLTQzLDExICs0Myw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHN0ZDo6dW5pcXVlX3B0cjxNZWRpYVJlY29yZGVyUHJpdmF0ZT4gY3JlYXRlTWVkaWFSZWNvcmRl
clByaXZhdGUoTWVkaWFTdHJlYW1Qcml2YXRlJiwgY29uc3QgTWVkaWFSZWNvcmRlclByaXZhdGVP
cHRpb25zJik7CiAgICAgdmlydHVhbCBib29sIGlzU3VwcG9ydGVkKGNvbnN0IFN0cmluZyYpOwog
I2VuZGlmCi0KLSAgICB2b2lkIHNldFVzZUdQVVByb2Nlc3MoYm9vbCB2YWx1ZSkgeyBtX3VzZUdQ
VVByb2Nlc3MgPSB2YWx1ZTsgfQotCi1wcm90ZWN0ZWQ6Ci0gICAgYm9vbCBtX3VzZUdQVVByb2Nl
c3MgeyBmYWxzZSB9OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmlu
ZGV4IGZlNzIwZTkzNWVlOWYzMmFjYzdkOGQ4ZWNiNWY1MzFhY2IxZDlmMjEuLjk3MTcyYTM3OTZi
OTU2NTg2NWNkNmIxNDU5NDg0NDE5NTJlNmNjN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAKQEAgLTE2MDUsMTYgKzE2MDUsNiBAQCB2b2lkIEludGVybmFsczo6c2V0VXNlRFRM
UzEwKGJvb2wgdXNlRFRMUzEwKQogI2VuZGlmCiB9CiAKLXZvaWQgSW50ZXJuYWxzOjpzZXRVc2VH
UFVQcm9jZXNzRm9yV2ViUlRDKGJvb2wgdXNlR1BVUHJvY2VzcykKLXsKLSNpZiBVU0UoTElCV0VC
UlRDKQotICAgIGF1dG8qIGRvY3VtZW50ID0gY29udGV4dERvY3VtZW50KCk7Ci0gICAgaWYgKCFk
b2N1bWVudCB8fCAhZG9jdW1lbnQtPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgZG9j
dW1lbnQtPnBhZ2UoKS0+bWVkaWFSZWNvcmRlclByb3ZpZGVyKCkuc2V0VXNlR1BVUHJvY2Vzcyh1
c2VHUFVQcm9jZXNzKTsKLSNlbmRpZgotfQogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggZWU4ZTI2NzZhMWE3MjljYjdi
MjlkOTJiN2Q0NWZjMWU2MjZmNTIyOC4uNGQxOWQ5NmFjNDJmZjYxZTQyOGIzM2E2ODlmNGNmZDI4
NjM5NGJmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC02MTUsNyArNjE1LDYg
QEAgcHVibGljOgogICAgIHVpbnQ2NF90IHNmcmFtZUtleUlkKGNvbnN0IFJUQ1J0cFNGcmFtZVRy
YW5zZm9ybSYpOwogICAgIHZvaWQgc2V0RW5hYmxlV2ViUlRDRW5jcnlwdGlvbihib29sKTsKICAg
ICB2b2lkIHNldFVzZURUTFMxMChib29sKTsKLSAgICB2b2lkIHNldFVzZUdQVVByb2Nlc3NGb3JX
ZWJSVEMoYm9vbCk7CiAjZW5kaWYKIAogICAgIFN0cmluZyBnZXRJbWFnZVNvdXJjZVVSTChFbGVt
ZW50Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggODVhZmFmYzU5Zjcy
ODM2OTUyMGM4OTlmYTA2OWRjOWRlNTE2ZThjZC4uMWVkN2Q2MGQyZTkxODM4NTRmNjM5MzZhNGQ2
N2RhM2FiYzk3ODYwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtNzE3
LDcgKzcxNyw2IEBAIGVudW0gVHJlZVR5cGUgewogICAgIFtDb25kaXRpb25hbD1XRUJfUlRDXSB1
bmRlZmluZWQgY2xlYXJQZWVyQ29ubmVjdGlvbkZhY3RvcnkoKTsKICAgICBbQ29uZGl0aW9uYWw9
V0VCX1JUQ10gdW5kZWZpbmVkIHNldEVuYWJsZVdlYlJUQ0VuY3J5cHRpb24oYm9vbGVhbiBlbmFi
bGVkKTsKICAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQ10gdW5kZWZpbmVkIHNldFVzZURUTFMxMChi
b29sZWFuIHVzZSk7Ci0gICAgW0NvbmRpdGlvbmFsPVdFQl9SVENdIHVuZGVmaW5lZCBzZXRVc2VH
UFVQcm9jZXNzRm9yV2ViUlRDKGJvb2xlYW4gdXNlKTsKIAogICAgIFtDb25kaXRpb25hbD1WSURF
T10gdW5kZWZpbmVkIHNpbXVsYXRlU3lzdGVtU2xlZXAoKTsKICAgICBbQ29uZGl0aW9uYWw9VklE
RU9dIHVuZGVmaW5lZCBzaW11bGF0ZVN5c3RlbVdha2UoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQcm92aWRlci5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9NZWRpYVJlY29yZGVyUHJvdmlkZXIu
Y3BwCmluZGV4IDQwNDcxYmQ3MWU1NTc5OGMyNjQwZjU4NWE4YTRiZTkwNWQ2NmNmZTcuLmJiMzUy
ZTdkZWJkNjgyY2MwN2Y4OTZlY2ZkOTAzYTgzZTQ1YTQ0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQcm92aWRlci5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3Zp
ZGVyLmNwcApAQCAtMzAsNiArMzAsNyBAQAogCiAjaW5jbHVkZSAiTWVkaWFSZWNvcmRlclByaXZh
dGUuaCIKICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhUmVjb3JkZXJQcml2YXRlLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQg
ewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC0zNyw3ICszOCw3IEBAIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6Ok1lZGlhUmVjb3JkZXJQcml2
YXRlPiBNZWRpYVJlY29yZGVyUHJvdmlkZXI6OmNyZWF0ZU1lZGlhUmVjb3JkZXJQcml2YXRlKE1l
ZGlhU3RyZWFtUHJpdmF0ZSYgc3RyZWFtLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlv
bnMmIG9wdGlvbnMpCiB7CiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBIQVZFKEFWQVNTRVRX
UklURVJERUxFR0FURSkKLSAgICBpZiAobV91c2VHUFVQcm9jZXNzKQorICAgIGlmIChSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLndlYlJUQ1BsYXRmb3JtQ29kZWNzSW5H
UFVQcm9jZXNzRW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gbWFrZVVuaXF1ZTxNZWRpYVJlY29y
ZGVyUHJpdmF0ZT4oc3RyZWFtLCBvcHRpb25zKTsKICNlbmRpZgogICAgIHJldHVybiBXZWJDb3Jl
OjpNZWRpYVJlY29yZGVyUHJvdmlkZXI6OmNyZWF0ZU1lZGlhUmVjb3JkZXJQcml2YXRlKHN0cmVh
bSwgb3B0aW9ucyk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggNTdkMmZhM2RjMmU1OTkxOGQ1MTE1YmQ4NTI3MjUwMTUxYzI5NmViYS4uZTY1Y2Q0
Yjg5MDBjY2YzNzUzYjM4MmY5MzU1YzM4Mzk5YTNiZGZkNyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTAxLTI2
ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgV2ViUlRD
IEdQVSBwcm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJv
bGxlci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpyZXNldFByZWZlcmVuY2Vz
VG9Db25zaXN0ZW50VmFsdWVzKToKKwogMjAyMS0wMS0yMSAgQWFrYXNoIEphaW4gIDxhYWthc2hf
amFpbkBhcHBsZS5jb20+CiAKICAgICAgICAgW2V3c10gVXNlIGdpdGh1YiBpbnN0ZWFkIG9mIHN2
bi53ZWJraXQub3JnIHRvIGZldGNoIGNvbnRyaWJ1dG9ycy5qc29uCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDNmYzFkZTUxODkyZjNiODM2MWU3ODhlMDM5
MzZmZTUyMWUzNmM1NTUuLmQyY2JlZjQyNTNkZmU2NTEzMjg3MjNkNTc5ZGIzNDE0YmYxZGE3OGMg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisr
KyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC05MDIsNyAr
OTAyLDYgQEAgdm9pZCBUZXN0Q29udHJvbGxlcjo6cmVzZXRQcmVmZXJlbmNlc1RvQ29uc2lzdGVu
dFZhbHVlcyhjb25zdCBUZXN0T3B0aW9ucyYgb3B0aW8KICAgICBXS1ByZWZlcmVuY2VzU2V0SGlk
ZGVuUGFnZUNTU0FuaW1hdGlvblN1c3BlbnNpb25FbmFibGVkKHByZWZlcmVuY2VzLCBmYWxzZSk7
CiAgICAgV0tQcmVmZXJlbmNlc1NldFN0b3JhZ2VCbG9ja2luZ1BvbGljeShwcmVmZXJlbmNlcywg
a1dLQWxsb3dBbGxTdG9yYWdlKTsgLy8gRklYTUU6IFdlIHNob3VsZCBiZSB0ZXN0aW5nIHRoZSBk
ZWZhdWx0LgogICAgIFdLUHJlZmVyZW5jZXNTZXRJc05TVVJMU2Vzc2lvbldlYlNvY2tldEVuYWJs
ZWQocHJlZmVyZW5jZXMsIGZhbHNlKTsKLSAgICBXS1ByZWZlcmVuY2VzU2V0V2ViUlRDUGxhdGZv
cm1Db2RlY3NJbkdQVVByb2Nlc3NFbmFibGVkKHByZWZlcmVuY2VzLCBmYWxzZSk7CiAgICAgV0tQ
cmVmZXJlbmNlc1NldEZldGNoQVBJS2VlcEFsaXZlRW5hYmxlZChwcmVmZXJlbmNlcywgdHJ1ZSk7
CiAgICAgV0tQcmVmZXJlbmNlc1NldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQocHJlZmVyZW5jZXMs
IHRydWUpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRFeHBvc2VTcGVha2Vyc0VuYWJsZWQocHJlZmVy
ZW5jZXMsIHRydWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZiMGI4MTgxYzE5OTk5NTE2NmNjNjgxOTNmYzJjZjEwYTVk
MzE4NzcuLjY4OTZiZTE0ZmQxZDkzNzA3YTVkOTAxMTI0MjY0M2ZmYWNmNWQ5ODggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAyMS0wMS0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CisKKyAgICAgICAgVXNlIFdlYlJUQyBHUFUgcHJvY2VzcyBmbGFnIGZvciBNZWRpYVJlY29y
ZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA5
NjcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgdGVzdCB0byB1c2UgZmVhdHVyZSBmbGFnIGluc3RlYWQgb2YgaW50ZXJuYWxzIEFQSS4KKwor
ICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12
aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nlc3MuaHRtbDoKKyAgICAgICAgKiBodHRwL3dwdC9t
ZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS5o
dG1sOgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1yZXF1
ZXN0RGF0YS5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvbXV0ZS10cmFj
a3MuaHRtbDoKKyAgICAgICAgKiBodHRwL3dwdC9tZWRpYXJlY29yZGVyL3BhdXNlLXJlY29yZGlu
Zy5odG1sOgorCiAyMDIxLTAxLTI1ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZWFkYWJsZVN0cmVhbSBDKysgbWV0aG9kcyBzaG91bGQgY2hlY2sgZm9yIGV4
Y2VwdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9N
ZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUtZ3B1cHJvY2Vzcy5odG1s
IGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1
ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUtZ3B1cHJvY2Vzcy5odG1sCmluZGV4IDg4MDE0ODY1N2Uy
NWRkZTMzY2IxMDkzNDZkNmNiZWFhYjdmOWNlZmIuLjY1MDMyNWI1YzQ3YjI3NTU1NTc1NTIxOWE4
ZmM5ZDM1NGNhY2QxMzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVj
b3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nl
c3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVj
b3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1ncHVwcm9jZXNzLmh0bWwKQEAgLTIw
LDkgKzIwLDYgQEAKICAgICA8L2NhbnZhcz4KIDwvZGl2PgogPHNjcmlwdD4KLSAgICBpZiAod2lu
ZG93LmludGVybmFscykKLSAgICAgICAgd2luZG93LmludGVybmFscy5zZXRVc2VHUFVQcm9jZXNz
Rm9yV2ViUlRDKHRydWUpOwotCiAgICAgdmFyIGNvbnRleHQ7CiAgICAgdmFyIGRyYXdTdGFydFRp
bWU7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVk
aWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0
YWF2YWlsYWJsZS5odG1sCmluZGV4IDY3MmJjOWU2NDRiZTYyNzIxMWRlNzU5MGE4ZmNmZmNjZjI0
MmE0OWYuLmRiOWEyNWMxNzQ5NTQwNTIxNzJmZDEyYTgzN2Y2YWZmMDlhODQwNTMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1h
dWRpby12aWRlby1kYXRhYXZhaWxhYmxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQv
bWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUu
aHRtbApAQCAtMSwzICsxLDQgQEAKKzwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgV2ViUlRDUGxh
dGZvcm1Db2RlY3NJbkdQVVByb2Nlc3NFbmFibGVkPWZhbHNlIF0gLS0+CiA8IWRvY3R5cGUgaHRt
bD4KIDxodG1sPgogPGhlYWQ+CkBAIC0xOSw5ICsyMCw2IEBACiAgICAgPC9jYW52YXM+CiA8L2Rp
dj4KIDxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgIHdpbmRvdy5p
bnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyhmYWxzZSk7Ci0KICAgICB2YXIgY29u
dGV4dDsKICAgICB2YXIgZHJhd1N0YXJ0VGltZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItcmVxdWVzdERh
dGEuaHRtbAppbmRleCAwMWY5N2FhM2NjYWM1ZGY0NWVlMjk3N2YwMjJiYmEyZjMwYmUxZmY2Li44
N2Y2NDQ3OGEzYWVmM2JjMTllNDViYWRiZjIwYmNhM2U1ZDIwNWYyIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItcmVxdWVzdERhdGEu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3Jk
ZXItcmVxdWVzdERhdGEuaHRtbApAQCAtMjAsOSArMjAsNiBAQAogICAgIDwvY2FudmFzPgogPC9k
aXY+CiA8c2NyaXB0PgotICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICB3aW5kb3cu
aW50ZXJuYWxzLnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEModHJ1ZSk7Ci0KICAgICB2YXIgY29u
dGV4dDsKICAgICB2YXIgZHJhd1N0YXJ0VGltZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sCmluZGV4IDg3OGQxMzc5NGU3NTZi
MDBhYjkyZTM4NjcyMGQ1ZDBjZThlMjcyODEuLjA1ZmEwODAwMzFkOGE5ZTVjMDU1YThhZDE4M2M3
ZjQ1ZjcwNDUxOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3Jk
ZXIvbXV0ZS10cmFja3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29y
ZGVyL211dGUtdHJhY2tzLmh0bWwKQEAgLTEsMyArMSw0IEBACis8IS0tIHdlYmtpdC10ZXN0LXJ1
bm5lciBbIFdlYlJUQ1BsYXRmb3JtQ29kZWNzSW5HUFVQcm9jZXNzRW5hYmxlZD1mYWxzZSBdIC0t
PgogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgpAQCAtMTIsOSArMTMsNiBAQAogICAg
IDx2aWRlbyBpZD0idmlkZW8zIiBjb250cm9scz48L3ZpZGVvPgogICAgIDxjYW52YXMgaWQ9ImNh
bnZhczMiIHdpZHRoPSIzMjAiIGhlaWdodD0iMjQwIj48L2NhbnZhcz4KICAgICA8c2NyaXB0Pgot
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgd2luZG93LmludGVybmFscy5zZXRVc2VHUFVQcm9j
ZXNzRm9yV2ViUlRDKGZhbHNlKTsKLQogZnVuY3Rpb24gYW5hbHlzZUF1ZGlvKHN0cmVhbU9yVmlk
ZW8sIGR1cmF0aW9uLCBjb250ZXh0KQogewogICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2
ZSwgcmVqZWN0KSA9PiB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJl
Y29yZGVyL3BhdXNlLXJlY29yZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFy
ZWNvcmRlci9wYXVzZS1yZWNvcmRpbmcuaHRtbAppbmRleCAxYWM1NWJkMjU3NWYxYTQzOTk3MDI0
MWI5ZGQ3YjRiMTUwN2ZkOTEzLi5mOGE5ZjY5NDI2YTVkZTQ0NmVkMDVkODEyNDcwMTgzZDRkYmUw
MDQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3BhdXNl
LXJlY29yZGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIv
cGF1c2UtcmVjb3JkaW5nLmh0bWwKQEAgLTEsMyArMSw0IEBACis8IS0tIHdlYmtpdC10ZXN0LXJ1
bm5lciBbIFdlYlJUQ1BsYXRmb3JtQ29kZWNzSW5HUFVQcm9jZXNzRW5hYmxlZD1mYWxzZSBdIC0t
PgogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgpAQCAtOSw5ICsxMCw2IEBACiA8Ym9k
eT4KICAgICA8dmlkZW8gaWQ9InZpZGVvMSIgY29udHJvbHM+PC92aWRlbz4KICAgICA8c2NyaXB0
PgotaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgd2luZG93LmludGVybmFscy5zZXRVc2VHUFVQ
cm9jZXNzRm9yV2ViUlRDKGZhbHNlKTsKLQogZnVuY3Rpb24gd2FpdEZvcihkdXJhdGlvbikKIHsK
ICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwg
ZHVyYXRpb24pKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418393</attachid>
            <date>2021-01-26 04:15:57 -0800</date>
            <delta_ts>2021-01-26 07:55:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220967-20210126131555.patch</filename>
            <type>text/plain</type>
            <size>17624</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxODc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmY2OWMxODlhYmQ5ZTlj
ZWM0MjgwNzE4NzcwNjQzY2RlNjIxYTdhYi4uOTc4Y2U2OTMyZWMwZTNmYmZlNDQ3NWZhNWM3ZTg3
ZGMzYjM0MjM3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAxLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgV2ViUlRDIEdQVSBw
cm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBJbnRlcm5hbHM6OnNldFVzZUdQVVByb2Nlc3NG
b3JXZWJSVEMgYW5kIHJlbHkgb24gV2ViUlRDIGNvZGVjIGZlYXR1cmUgZmxhZy4KKworICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJvdmlkZXIuaDoKKyAgICAg
ICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6
OnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMpOiBEZWxldGVkLgorICAgICAgICAqIHRlc3Rpbmcv
SW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIxLTAx
LTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgc3Vw
cG9ydCBmb3IgUlRDUnRwUGFyYW1ldGVycy5ydGNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDY1NzY3MjY4YTMxNjEy
YmZmNjUwYTM1ZTdjZmIyYzNmMWU4ZmJjMTAuLjk0ZWY0YzI3NDc4YTIxN2QxYzQ5MTE3ZjJhZDY4
MTFhMTcxMmRhZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDEtMjYgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFVzZSBXZWJSVEMgR1BVIHBy
b2Nlc3MgZmxhZyBmb3IgTWVkaWFSZWNvcmRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwOTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRl
clByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFSZWNvcmRlclByb3ZpZGVyOjpj
cmVhdGVNZWRpYVJlY29yZGVyUHJpdmF0ZSk6CisKIDIwMjEtMDEtMjUgIEFsZXhleSBTaHZheWth
ICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyNzA4NzQp
OiBTb21lIFJlYWN0IE5hdGl2ZSBhcHBzIGFyZSByZXBvcnRlZCBicm9rZW4gb24gaU9TCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRl
clByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFS
ZWNvcmRlclByb3ZpZGVyLmgKaW5kZXggZDdkOTM0MDhmZTNkNDlhMTY3NDE1OWUyMDE5N2NkN2Nm
OWI1YzExMC4uMDkyNWVjOWYyOTJjMTgxZjZmYTM4MDE2ZWM2YzRmMjc5YzljNDlhNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQ
cm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRp
YVJlY29yZGVyUHJvdmlkZXIuaApAQCAtNDMsMTEgKzQzLDYgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgc3RkOjp1bmlxdWVfcHRyPE1lZGlhUmVjb3JkZXJQcml2YXRlPiBjcmVhdGVNZWRpYVJlY29y
ZGVyUHJpdmF0ZShNZWRpYVN0cmVhbVByaXZhdGUmLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0
ZU9wdGlvbnMmKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNTdXBwb3J0ZWQoY29uc3QgU3RyaW5nJik7
CiAjZW5kaWYKLQotICAgIHZvaWQgc2V0VXNlR1BVUHJvY2Vzcyhib29sIHZhbHVlKSB7IG1fdXNl
R1BVUHJvY2VzcyA9IHZhbHVlOyB9Ci0KLXByb3RlY3RlZDoKLSAgICBib29sIG1fdXNlR1BVUHJv
Y2VzcyB7IGZhbHNlIH07CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzY3M2VkZGE3ZjRkZmExYzZmMmQ2Yzk0NjRm
N2U4MWFlOTk2MTY1ZC4uMjc3OTlkOTIzMzQwN2UyNDQ1MDU1YzU3YTUwNTljODVjYzQ4MWMzNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMzQzMjIsNyArMzQzMjIsNiBAQAogCQkJCTQzNjcwOEQ1MTJEOUNBNEIwMDA0NDIzNCAv
KiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDM2NzA4RDcxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlR3JhZGllbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTQzNjcwOEQ5MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdS
ZXNvdXJjZUxpbmVhckdyYWRpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk0MTE0RkUzMjI1QkVC
RDE5MDA5RDlGMjAgLyogUlRDUnRjcFBhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTQz
NjcwOERCMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNDM2NzA4REQxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291
cmNlTWFza2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MzY3MDhERjEyRDlDQTRCMDAwNDQyMzQg
LyogUmVuZGVyU1ZHUmVzb3VyY2VQYXR0ZXJuLmggaW4gSGVhZGVycyAqLywKQEAgLTM0NDM2LDYg
KzM0NDM1LDcgQEAKIAkJCQkwNzhFMDk0MjE3RDE2RTFDMDA0MjBBQTEgLyogUlRDUGVlckNvbm5l
Y3Rpb25IYW5kbGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MTlFNkVDOTI1NjZEMjc4
MDAyQjUwMTAgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VFcnJvckV2ZW50LmggaW4gSGVhZGVycyAq
LywKIAkJCQkwNzhFMDkyNDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VF
dmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDExNEZFMzIyNUJFQkQxOTAwOUQ5RjIwIC8qIFJU
Q1J0Y3BQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLywKIAkJCQk0MTJERTRCODIxOTI4NUMwMDA3
NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1RTJDNDM2
MzFCQ0VFMzJCMDAwMUUyQkMgLyogUlRDUnRwUmVjZWl2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTQxM0M4QjM1MjU1MkYyN0QwMEU2NTA1NSAvKiBSVENSdHBSZWNlaXZlcldpdGhUcmFuc2Zvcm0u
aCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDdl
ZmQ2OGY2Zjg2NzI2Y2FjYjY1OWYwNDY1MjBjZjRkMWI1YTVjZGIuLmM4MzU1NWNmYmUxNWI0MDk5
NTA5M2Q4N2M2MGIwY2QzZjdmMzM4OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5j
cHAKQEAgLTE2MDYsMTYgKzE2MDYsNiBAQCB2b2lkIEludGVybmFsczo6c2V0VXNlRFRMUzEwKGJv
b2wgdXNlRFRMUzEwKQogI2VuZGlmCiB9CiAKLXZvaWQgSW50ZXJuYWxzOjpzZXRVc2VHUFVQcm9j
ZXNzRm9yV2ViUlRDKGJvb2wgdXNlR1BVUHJvY2VzcykKLXsKLSNpZiBVU0UoTElCV0VCUlRDKQot
ICAgIGF1dG8qIGRvY3VtZW50ID0gY29udGV4dERvY3VtZW50KCk7Ci0gICAgaWYgKCFkb2N1bWVu
dCB8fCAhZG9jdW1lbnQtPnBhZ2UoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgZG9jdW1lbnQt
PnBhZ2UoKS0+bWVkaWFSZWNvcmRlclByb3ZpZGVyKCkuc2V0VXNlR1BVUHJvY2Vzcyh1c2VHUFVQ
cm9jZXNzKTsKLSNlbmRpZgotfQogI2VuZGlmCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggZWU4ZTI2NzZhMWE3MjljYjdiMjlkOTJi
N2Q0NWZjMWU2MjZmNTIyOC4uNGQxOWQ5NmFjNDJmZjYxZTQyOGIzM2E2ODlmNGNmZDI4NjM5NGJm
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC02MTUsNyArNjE1LDYgQEAgcHVi
bGljOgogICAgIHVpbnQ2NF90IHNmcmFtZUtleUlkKGNvbnN0IFJUQ1J0cFNGcmFtZVRyYW5zZm9y
bSYpOwogICAgIHZvaWQgc2V0RW5hYmxlV2ViUlRDRW5jcnlwdGlvbihib29sKTsKICAgICB2b2lk
IHNldFVzZURUTFMxMChib29sKTsKLSAgICB2b2lkIHNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMo
Ym9vbCk7CiAjZW5kaWYKIAogICAgIFN0cmluZyBnZXRJbWFnZVNvdXJjZVVSTChFbGVtZW50Jik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggODVhZmFmYzU5ZjcyODM2OTUy
MGM4OTlmYTA2OWRjOWRlNTE2ZThjZC4uMWVkN2Q2MGQyZTkxODM4NTRmNjM5MzZhNGQ2N2RhM2Fi
Yzk3ODYwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtNzE3LDcgKzcx
Nyw2IEBAIGVudW0gVHJlZVR5cGUgewogICAgIFtDb25kaXRpb25hbD1XRUJfUlRDXSB1bmRlZmlu
ZWQgY2xlYXJQZWVyQ29ubmVjdGlvbkZhY3RvcnkoKTsKICAgICBbQ29uZGl0aW9uYWw9V0VCX1JU
Q10gdW5kZWZpbmVkIHNldEVuYWJsZVdlYlJUQ0VuY3J5cHRpb24oYm9vbGVhbiBlbmFibGVkKTsK
ICAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQ10gdW5kZWZpbmVkIHNldFVzZURUTFMxMChib29sZWFu
IHVzZSk7Ci0gICAgW0NvbmRpdGlvbmFsPVdFQl9SVENdIHVuZGVmaW5lZCBzZXRVc2VHUFVQcm9j
ZXNzRm9yV2ViUlRDKGJvb2xlYW4gdXNlKTsKIAogICAgIFtDb25kaXRpb25hbD1WSURFT10gdW5k
ZWZpbmVkIHNpbXVsYXRlU3lzdGVtU2xlZXAoKTsKICAgICBbQ29uZGl0aW9uYWw9VklERU9dIHVu
ZGVmaW5lZCBzaW11bGF0ZVN5c3RlbVdha2UoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQcm92aWRlci5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9NZWRpYVJlY29yZGVyUHJvdmlkZXIuY3BwCmlu
ZGV4IDQwNDcxYmQ3MWU1NTc5OGMyNjQwZjU4NWE4YTRiZTkwNWQ2NmNmZTcuLmJiMzUyZTdkZWJk
NjgyY2MwN2Y4OTZlY2ZkOTAzYTgzZTQ1YTQ0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQcm92aWRlci5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVyLmNw
cApAQCAtMzAsNiArMzAsNyBAQAogCiAjaW5jbHVkZSAiTWVkaWFSZWNvcmRlclByaXZhdGUuaCIK
ICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhUmVjb3JkZXJQcml2YXRlLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC0zNyw3ICszOCw3IEBAIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwogc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6Ok1lZGlhUmVjb3JkZXJQcml2YXRlPiBN
ZWRpYVJlY29yZGVyUHJvdmlkZXI6OmNyZWF0ZU1lZGlhUmVjb3JkZXJQcml2YXRlKE1lZGlhU3Ry
ZWFtUHJpdmF0ZSYgc3RyZWFtLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlvbnMmIG9w
dGlvbnMpCiB7CiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBIQVZFKEFWQVNTRVRXUklURVJE
RUxFR0FURSkKLSAgICBpZiAobV91c2VHUFVQcm9jZXNzKQorICAgIGlmIChSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLndlYlJUQ1BsYXRmb3JtQ29kZWNzSW5HUFVQcm9j
ZXNzRW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gbWFrZVVuaXF1ZTxNZWRpYVJlY29yZGVyUHJp
dmF0ZT4oc3RyZWFtLCBvcHRpb25zKTsKICNlbmRpZgogICAgIHJldHVybiBXZWJDb3JlOjpNZWRp
YVJlY29yZGVyUHJvdmlkZXI6OmNyZWF0ZU1lZGlhUmVjb3JkZXJQcml2YXRlKHN0cmVhbSwgb3B0
aW9ucyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggYTQ2NWIyNjYyYTEyOWMxZTQzMmNiNjM1MDM0Y2ZjMDI4ODhjOTgzNy4u
NWVhOTc0M2ZmNWJmYWNkMDRiZjI2OTIwMDg2NTI1NjFmZWZjMTY5YyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIyIEBACisyMDIxLTAxLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKwor
ICAgICAgICBVc2UgV2ViUlRDIEdQVSBwcm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0ZXN0
IHRvIHVzZSBmZWF0dXJlIGZsYWcgaW5zdGVhZCBvZiBpbnRlcm5hbHMgQVBJLgorICAgICAgICBS
ZW1vdmluZyB3ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy5odG1sIHNpbmNlIGl0IGlzIG5vdyBlcXVp
dmFsZW50IHRvIHdlYnJ0Yy92aWRlby5odG1sLgorCisgICAgICAgICogaHR0cC93cHQvbWVkaWFy
ZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUtZ3B1cHJv
Y2Vzcy5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRl
ci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLmh0bWw6CisgICAgICAgICogaHR0cC93cHQv
bWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWw6CisgICAgICAgICog
aHR0cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sOgorICAgICAgICAqIGh0dHAv
d3B0L21lZGlhcmVjb3JkZXIvcGF1c2UtcmVjb3JkaW5nLmh0bWw6CisgICAgICAgICogcGxhdGZv
cm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHdlYnJ0Yy92aWRlby1ncHVQcm9j
ZXNzLWV4cGVjdGVkLnR4dDogRGVsZXRlZC4KKyAgICAgICAgKiB3ZWJydGMvdmlkZW8tZ3B1UHJv
Y2Vzcy5odG1sOiBEZWxldGVkLgorCiAyMDIxLTAxLTI1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjcxNTE0IGFuZCBy
MjcxNTQ5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01l
ZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1ncHVwcm9jZXNzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVk
aW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1ncHVwcm9jZXNzLmh0bWwKaW5kZXggODgwMTQ4NjU3ZTI1
ZGRlMzNjYjEwOTM0NmQ2Y2JlYWFiN2Y5Y2VmYi4uNjUwMzI1YjVjNDdiMjc1NTU1NzU1MjE5YThm
YzlkMzU0Y2FjZDEzNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNv
cmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUtZ3B1cHJvY2Vz
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNv
cmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nlc3MuaHRtbApAQCAtMjAs
OSArMjAsNiBAQAogICAgIDwvY2FudmFzPgogPC9kaXY+CiA8c2NyaXB0PgotICAgIGlmICh3aW5k
b3cuaW50ZXJuYWxzKQotICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFVzZUdQVVByb2Nlc3NG
b3JXZWJSVEModHJ1ZSk7Ci0KICAgICB2YXIgY29udGV4dDsKICAgICB2YXIgZHJhd1N0YXJ0VGlt
ZTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRp
YVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUuaHRtbCBiL0xheW91dFRlc3Rz
L2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRh
YXZhaWxhYmxlLmh0bWwKaW5kZXggNjcyYmM5ZTY0NGJlNjI3MjExZGU3NTkwYThmY2ZmY2NmMjQy
YTQ5Zi4uZGI5YTI1YzE3NDk1NDA1MjE3MmZkMTJhODM3ZjZhZmYwOWE4NDA1MyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1
ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9t
ZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS5o
dG1sCkBAIC0xLDMgKzEsNCBAQAorPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBXZWJSVENQbGF0
Zm9ybUNvZGVjc0luR1BVUHJvY2Vzc0VuYWJsZWQ9ZmFsc2UgXSAtLT4KIDwhZG9jdHlwZSBodG1s
PgogPGh0bWw+CiA8aGVhZD4KQEAgLTE5LDkgKzIwLDYgQEAKICAgICA8L2NhbnZhcz4KIDwvZGl2
PgogPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgd2luZG93Lmlu
dGVybmFscy5zZXRVc2VHUFVQcm9jZXNzRm9yV2ViUlRDKGZhbHNlKTsKLQogICAgIHZhciBjb250
ZXh0OwogICAgIHZhciBkcmF3U3RhcnRUaW1lOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItcmVxdWVzdERhdGEuaHRtbCBiL0xh
eW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1yZXF1ZXN0RGF0
YS5odG1sCmluZGV4IDAxZjk3YWEzY2NhYzVkZjQ1ZWUyOTc3ZjAyMmJiYTJmMzBiZTFmZjYuLjg3
ZjY0NDc4YTNhZWYzYmMxOWU0NWJhZGJmMjBiY2EzZTVkMjA1ZjIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1yZXF1ZXN0RGF0YS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRl
ci1yZXF1ZXN0RGF0YS5odG1sCkBAIC0yMCw5ICsyMCw2IEBACiAgICAgPC9jYW52YXM+CiA8L2Rp
dj4KIDxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgIHdpbmRvdy5p
bnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyh0cnVlKTsKLQogICAgIHZhciBjb250
ZXh0OwogICAgIHZhciBkcmF3U3RhcnRUaW1lOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3dwdC9tZWRpYXJlY29yZGVyL211dGUtdHJhY2tzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3dwdC9tZWRpYXJlY29yZGVyL211dGUtdHJhY2tzLmh0bWwKaW5kZXggODc4ZDEzNzk0ZTc1NmIw
MGFiOTJlMzg2NzIwZDVkMGNlOGUyNzI4MS4uMDVmYTA4MDAzMWQ4YTllNWMwNTVhOGFkMTgzYzdm
NDVmNzA0NTE4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRl
ci9tdXRlLXRyYWNrcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3Jk
ZXIvbXV0ZS10cmFja3MuaHRtbApAQCAtMSwzICsxLDQgQEAKKzwhLS0gd2Via2l0LXRlc3QtcnVu
bmVyIFsgV2ViUlRDUGxhdGZvcm1Db2RlY3NJbkdQVVByb2Nlc3NFbmFibGVkPWZhbHNlIF0gLS0+
CiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+CkBAIC0xMiw5ICsxMyw2IEBACiAgICAg
PHZpZGVvIGlkPSJ2aWRlbzMiIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPGNhbnZhcyBpZD0iY2Fu
dmFzMyIgd2lkdGg9IjMyMCIgaGVpZ2h0PSIyNDAiPjwvY2FudmFzPgogICAgIDxzY3JpcHQ+Ci1p
ZiAod2luZG93LmludGVybmFscykKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFVzZUdQVVByb2Nl
c3NGb3JXZWJSVEMoZmFsc2UpOwotCiBmdW5jdGlvbiBhbmFseXNlQXVkaW8oc3RyZWFtT3JWaWRl
bywgZHVyYXRpb24sIGNvbnRleHQpCiB7CiAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZl
LCByZWplY3QpID0+IHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVj
b3JkZXIvcGF1c2UtcmVjb3JkaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJl
Y29yZGVyL3BhdXNlLXJlY29yZGluZy5odG1sCmluZGV4IDFhYzU1YmQyNTc1ZjFhNDM5OTcwMjQx
YjlkZDdiNGIxNTA3ZmQ5MTMuLmY4YTlmNjk0MjZhNWRlNDQ2ZWQwNWQ4MTI0NzAxODNkNGRiZTAw
NDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvcGF1c2Ut
cmVjb3JkaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9w
YXVzZS1yZWNvcmRpbmcuaHRtbApAQCAtMSwzICsxLDQgQEAKKzwhLS0gd2Via2l0LXRlc3QtcnVu
bmVyIFsgV2ViUlRDUGxhdGZvcm1Db2RlY3NJbkdQVVByb2Nlc3NFbmFibGVkPWZhbHNlIF0gLS0+
CiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+CkBAIC05LDkgKzEwLDYgQEAKIDxib2R5
PgogICAgIDx2aWRlbyBpZD0idmlkZW8xIiBjb250cm9scz48L3ZpZGVvPgogICAgIDxzY3JpcHQ+
Ci1pZiAod2luZG93LmludGVybmFscykKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFVzZUdQVVBy
b2Nlc3NGb3JXZWJSVEMoZmFsc2UpOwotCiBmdW5jdGlvbiB3YWl0Rm9yKGR1cmF0aW9uKQogewog
ICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBk
dXJhdGlvbikpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IGM5NmNkYzY1ZTUwZDU0NmE2ZjEyNzUxNzA5OWE4M2Q2M2VkMTMyNWIuLmVhMmY5YmFkNGZk
ODFjZThlY2FkZTY3NWQzYWQ3MTJkZDQ5Yjg1ZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
bGliL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTkzNSw5ICs5MzUsNiBAQCB3ZWJraXQub3JnL2IvMjE2
Nzc3IHdlYmtpdC5vcmcvYi8xOTEwMDkgd2VicnRjL3ZpZGVvLW11dGUtdnA4Lmh0bWwgWyBDcmFz
aCBUaW1lbwogd2Via2l0Lm9yZy9iLzIwNjQ2NCB3ZWJraXQub3JnL2IvMjE4Nzg3IHdlYnJ0Yy9w
ZWVyY29ubmVjdGlvbi1wYWdlLWNhY2hlLWxvbmcuaHRtbCBbIEZhaWx1cmUgUGFzcyBUaW1lb3V0
IF0KIHdlYmtpdC5vcmcvYi8yMDY0NjQgd2Via2l0Lm9yZy9iLzIxODc4NyB3ZWJydGMvcGVlcmNv
bm5lY3Rpb24tcGFnZS1jYWNoZS5odG1sIFsgRmFpbHVyZSBQYXNzIFRpbWVvdXQgXQogCi13ZWJr
aXQub3JnL2IvMjA2NTgzIFsgUmVsZWFzZSBdIHdlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMDY1ODMgWyBEZWJ1ZyBdIHdlYnJ0Yy92aWRlby1n
cHVQcm9jZXNzLmh0bWwgWyBUaW1lb3V0IF0KLQogd2Via2l0Lm9yZy9iLzIwODEyNSB3ZWJydGMv
cGVlcmNvbm5lY3Rpb24tbmV3LWNhbmRpZGF0ZS1wYWdlLWNhY2hlLmh0bWwgWyBGYWlsdXJlIFRp
bWVvdXQgXQogCiB3ZWJraXQub3JnL2IvMjA5MTYzIHdlYnJ0Yy9hdWRpby12aWRlby1lbGVtZW50
LXBsYXlpbmcuaHRtbCBbIENyYXNoIEZhaWx1cmUgUGFzcyBdCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93
ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDM5MjU2YjdmNDIzZDE4MzZlOGFjMjYwOTQzMTlkOTAxNTkxMjE1YzQuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvd2Vi
cnRjL3ZpZGVvLWdwdVByb2Nlc3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNiAr
MCwwIEBACi0KLQotUEFTUyBCYXNpYyB2aWRlbyBleGNoYW5nZQotUEFTUyBDYWxsIHNldFBhcmFt
ZXRlcnMgdG8gZGlzYWJsZSBzZW5kaW5nIGEgZ2l2ZW4gZW5jb2RpbmcKLVBBU1MgQ2FsbCBzZXRQ
YXJhbWV0ZXJzIHRvIHJlZW5hYmxlIHNlbmRpbmcgYSBnaXZlbiBlbmNvZGluZwotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy5odG1sIGIvTGF5b3V0VGVz
dHMvd2VicnRjL3ZpZGVvLWdwdVByb2Nlc3MuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZDdkZGZiMjgzYWNlNzY4MmE2OTM1NzQxMWE3ZmI0ZDE5ODI2ZDQ3OC4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMv
dmlkZW8tZ3B1UHJvY2Vzcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTI5ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KLSAgICAgICAgPHRpdGxlPlZpZGVvIGV4Y2hhbmdlIHVzaW5nIEdQVSBwcm9jZXNz
PC90aXRsZT4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAg
PHZpZGVvIGlkPSJ2aWRlbyIgYXV0b3BsYXk9IiI+PC92aWRlbz4KLSAgICAgICAgPGNhbnZhcyBp
ZD0iY2FudmFzIiB3aWR0aD0iNjQwIiBoZWlnaHQ9IjQ4MCI+PC9jYW52YXM+Ci0gICAgICAgIDxz
Y3JpcHQgc3JjID0icm91dGluZXMuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0PgotaWYg
KHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgaW50ZXJuYWxzLnNldFVzZUdQVVByb2Nlc3NGb3JXZWJS
VEModHJ1ZSk7Ci0KLXZpZGVvID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZpZGVvIik7Ci1j
YW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2FudmFzIik7Ci0KLWZ1bmN0aW9uIGdy
YWJGcmFtZURhdGEoeCwgeSwgdywgaCkKLXsKLSAgICBjYW52YXMud2lkdGggPSB2aWRlby52aWRl
b1dpZHRoOwotICAgIGNhbnZhcy5oZWlnaHQgPSB2aWRlby52aWRlb0hlaWdodDsKLQotICAgIGNh
bnZhcy5nZXRDb250ZXh0KCcyZCcpLmRyYXdJbWFnZSh2aWRlbywgeCwgeSwgdywgaCwgeCwgeSwg
dywgaCk7Ci0gICAgcmV0dXJuIGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpLmdldEltYWdlRGF0YSh4
LCB5LCB3LCBoKS5kYXRhOwotfQotCi1mdW5jdGlvbiB0ZXN0SW1hZ2UoKQotewotICAgIGNvbnN0
IGRhdGEgPSBncmFiRnJhbWVEYXRhKDEwLCAzMjUsIDI1MCwgMSk7Ci0KLSAgICB2YXIgaW5kZXgg
PSAyMDsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4XSA8IDEwMCk7Ci0gICAgYXNzZXJ0X3Ry
dWUoZGF0YVtpbmRleCArIDFdIDwgMTAwKTsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsg
Ml0gPCAxMDApOwotCi0gICAgaW5kZXggPSA4MDsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4
XSA+IDIwMCk7Ci0gICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDFdID4gMjAwKTsKLSAgICBh
c3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMl0gPiAyMDApOwotCi0gICAgaW5kZXggKz0gODA7Ci0g
ICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleF0gPiAyMDApOwotICAgIGFzc2VydF90cnVlKGRhdGFb
aW5kZXggKyAxXSA+IDIwMCk7Ci0gICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDJdIDwgMTAw
KTsKLX0KLQotdmFyIHBjMSwgcGMyOwotcHJvbWlzZV90ZXN0KGFzeW5jICh0ZXN0KSA9PiB7Ci0g
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICB0ZXN0UnVubmVyLnNldFVzZXJNZWRp
YVBlcm1pc3Npb24odHJ1ZSk7Ci0KLSAgICBjb25zdCBsb2NhbFN0cmVhbSA9IGF3YWl0IG5hdmln
YXRvci5tZWRpYURldmljZXMuZ2V0VXNlck1lZGlhKHt2aWRlbzoge2FkdmFuY2VkOiBbe3dpZHRo
OnttaW46NjQwfX0sIHtoZWlnaHQ6e21pbjo0ODB9IH0gXX19KTsKLSAgICBpZiAod2luZG93Lmlu
dGVybmFscykKLSAgICAgICAgYXNzZXJ0X3RydWUoaW50ZXJuYWxzLnBhZ2VNZWRpYVN0YXRlKCku
aW5jbHVkZXMoJ0hhc0FjdGl2ZVZpZGVvQ2FwdHVyZURldmljZScpLCAiVW5leHBlY3RlZCBIYXNB
Y3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UiKTsKLSAgICBjb25zdCBzdHJlYW0gPSBhd2FpdCBuZXcg
UHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgIGNyZWF0ZUNvbm5lY3Rpb25z
KChmaXJzdENvbm5lY3Rpb24pID0+IHsKLSAgICAgICAgICAgIHBjMSA9IGZpcnN0Q29ubmVjdGlv
bjsKLSAgICAgICAgICAgIGZpcnN0Q29ubmVjdGlvbi5hZGRUcmFjayhsb2NhbFN0cmVhbS5nZXRW
aWRlb1RyYWNrcygpWzBdLCBsb2NhbFN0cmVhbSk7Ci0gICAgICAgIH0sIChzZWNvbmRDb25uZWN0
aW9uKSA9PiB7Ci0gICAgICAgICAgICBwYzIgPSBzZWNvbmRDb25uZWN0aW9uOwotICAgICAgICAg
ICAgc2Vjb25kQ29ubmVjdGlvbi5vbnRyYWNrID0gKHRyYWNrRXZlbnQpID0+IHsKLSAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZSh0cmFja0V2ZW50LnRyYWNrIGluc3RhbmNlb2YgTWVkaWFTdHJl
YW1UcmFjayk7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodHJhY2tFdmVudC5yZWNlaXZl
ciBpbnN0YW5jZW9mIFJUQ1J0cFJlY2VpdmVyKTsKLSAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1
ZShBcnJheS5pc0FycmF5KHRyYWNrRXZlbnQuc3RyZWFtcyksICJBcnJheS5pc0FycmF5KCkgc2hv
dWxkIHJldHVybiB0cnVlIik7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoT2JqZWN0Lmlz
RnJvemVuKHRyYWNrRXZlbnQuc3RyZWFtcyksICJPYmplY3QuaXNGcm96ZW4oKSBzaG91bGQgcmV0
dXJuIHRydWUiKTsKLSAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZlbnQudHJh
Y2suaWQsIGxvY2FsU3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0uaWQpOwotICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHModHJhY2tFdmVudC50cmFjaywgdHJhY2tFdmVudC5zdHJlYW1zWzBd
LmdldFZpZGVvVHJhY2tzKClbMF0pOwotICAgICAgICAgICAgICAgIHJlc29sdmUodHJhY2tFdmVu
dC5zdHJlYW1zWzBdKTsKLSAgICAgICAgICAgIH07Ci0gICAgICAgIH0pOwotICAgICAgICBzZXRU
aW1lb3V0KCgpID0+IHJlamVjdCgiVGVzdCB0aW1lZCBvdXQiKSwgNTAwMCk7Ci0gICAgfSk7Ci0K
LSAgICB2aWRlby5zcmNPYmplY3QgPSBzdHJlYW07Ci0gICAgYXdhaXQgdmlkZW8ucGxheSgpOwot
Ci0gICAgdGVzdEltYWdlKCk7Ci19LCAiQmFzaWMgdmlkZW8gZXhjaGFuZ2UiKTsKLQotZnVuY3Rp
b24gZ2V0Q2lyY2xlSW1hZ2VEYXRhKCkKLXsKLSAgICByZXR1cm4gZ3JhYkZyYW1lRGF0YSg0NTAs
IDEwMCwgMTUwLCAxMDApOwotfQotCi1hc3luYyBmdW5jdGlvbiBjaGVja1ZpZGVvSXNVcGRhdGVk
KHNob3VsZEJlVXBkYXRlZCwgY291bnQsIHJlZmVyZW5jZURhdGEpCi17Ci0gICAgaWYgKGNvdW50
ID09PSB1bmRlZmluZWQpCi0gICAgICAgIGNvdW50ID0gMDsKLSAgICBlbHNlIGlmIChjb3VudCA+
PSAyMCkKLSAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCJjaGVja1ZpZGVvSXNVcGRhdGVk
IHRpbWVkIG91dCA6IiArIHNob3VsZEJlVXBkYXRlZCArICIgIiArIGNvdW50KTsKLQotICAgIGlm
IChyZWZlcmVuY2VEYXRhID09PSB1bmRlZmluZWQpCi0gICAgICAgIHJlZmVyZW5jZURhdGEgPSBn
ZXRDaXJjbGVJbWFnZURhdGEoKTsKLQotICAgIGF3YWl0IHdhaXRGb3IoMjAwKTsKLSAgICBjb25z
dCBuZXdEYXRhID0gZ2V0Q2lyY2xlSW1hZ2VEYXRhKCk7Ci0KLSAgICBpZiAoc2hvdWxkQmVVcGRh
dGVkID09PSAoSlNPTi5zdHJpbmdpZnkocmVmZXJlbmNlRGF0YSkgIT09IEpTT04uc3RyaW5naWZ5
KG5ld0RhdGEpKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgYXdhaXQgY2hlY2tWaWRlb0lzVXBk
YXRlZChzaG91bGRCZVVwZGF0ZWQsICsrY291bnQsIG5ld0RhdGEpOwotfQotCi1wcm9taXNlX3Rl
c3QoYXN5bmMgKHRlc3QpID0+IHsKLSAgICBjb25zdCBzZW5kZXIgPSBwYzEuZ2V0U2VuZGVycygp
WzBdOwotICAgIGxldCBwID0gc2VuZGVyLmdldFBhcmFtZXRlcnMoKTsKLSAgICBwLmVuY29kaW5n
c1swXS5hY3RpdmUgPSBmYWxzZTsKLSAgICBhd2FpdCBzZW5kZXIuc2V0UGFyYW1ldGVycyhwKTsK
LQotICAgIGFzc2VydF9mYWxzZShzZW5kZXIuZ2V0UGFyYW1ldGVycygpLmVuY29kaW5nc1swXS5h
Y3RpdmUsICJlbmNvZGluZ3NbMF0uYWN0aXZlIHNob3VsZCBiZSBmYWxzZSIpOwotCi0gICAgYXdh
aXQgY2hlY2tWaWRlb0lzVXBkYXRlZChmYWxzZSk7Ci19LCAiQ2FsbCBzZXRQYXJhbWV0ZXJzIHRv
IGRpc2FibGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5nIik7Ci0KLXByb21pc2VfdGVzdChhc3lu
YyAodGVzdCkgPT4gewotICAgIGNvbnN0IHNlbmRlciA9IHBjMS5nZXRTZW5kZXJzKClbMF07Ci0g
ICAgbGV0IHAgPSBzZW5kZXIuZ2V0UGFyYW1ldGVycygpOwotICAgIHAuZW5jb2RpbmdzWzBdLmFj
dGl2ZSA9IHRydWU7Ci0gICAgYXdhaXQgc2VuZGVyLnNldFBhcmFtZXRlcnMocCk7Ci0KLSAgICBh
c3NlcnRfdHJ1ZShzZW5kZXIuZ2V0UGFyYW1ldGVycygpLmVuY29kaW5nc1swXS5hY3RpdmUsICJl
bmNvZGluZ3NbMF0uYWN0aXZlIHNob3VsZCBiZSB0cnVlIik7Ci0KLSAgICBhd2FpdCBjaGVja1Zp
ZGVvSXNVcGRhdGVkKHRydWUpOwotfSwgIkNhbGwgc2V0UGFyYW1ldGVycyB0byByZWVuYWJsZSBz
ZW5kaW5nIGEgZ2l2ZW4gZW5jb2RpbmciKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5
PgotPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418420</attachid>
            <date>2021-01-26 07:55:48 -0800</date>
            <delta_ts>2021-02-02 02:52:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220967-20210126165547.patch</filename>
            <type>text/plain</type>
            <size>16207</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxODc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmY2OWMxODlhYmQ5ZTlj
ZWM0MjgwNzE4NzcwNjQzY2RlNjIxYTdhYi4uOTc4Y2U2OTMyZWMwZTNmYmZlNDQ3NWZhNWM3ZTg3
ZGMzYjM0MjM3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAxLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgV2ViUlRDIEdQVSBw
cm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBJbnRlcm5hbHM6OnNldFVzZUdQVVByb2Nlc3NG
b3JXZWJSVEMgYW5kIHJlbHkgb24gV2ViUlRDIGNvZGVjIGZlYXR1cmUgZmxhZy4KKworICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJvdmlkZXIuaDoKKyAgICAg
ICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6
OnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMpOiBEZWxldGVkLgorICAgICAgICAqIHRlc3Rpbmcv
SW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDIxLTAx
LTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgc3Vw
cG9ydCBmb3IgUlRDUnRwUGFyYW1ldGVycy5ydGNwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDY1NzY3MjY4YTMxNjEy
YmZmNjUwYTM1ZTdjZmIyYzNmMWU4ZmJjMTAuLjk0ZWY0YzI3NDc4YTIxN2QxYzQ5MTE3ZjJhZDY4
MTFhMTcxMmRhZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDEtMjYgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFVzZSBXZWJSVEMgR1BVIHBy
b2Nlc3MgZmxhZyBmb3IgTWVkaWFSZWNvcmRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwOTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRl
clByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFSZWNvcmRlclByb3ZpZGVyOjpj
cmVhdGVNZWRpYVJlY29yZGVyUHJpdmF0ZSk6CisKIDIwMjEtMDEtMjUgIEFsZXhleSBTaHZheWth
ICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyNzA4NzQp
OiBTb21lIFJlYWN0IE5hdGl2ZSBhcHBzIGFyZSByZXBvcnRlZCBicm9rZW4gb24gaU9TCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRl
clByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFS
ZWNvcmRlclByb3ZpZGVyLmgKaW5kZXggZDdkOTM0MDhmZTNkNDlhMTY3NDE1OWUyMDE5N2NkN2Nm
OWI1YzExMC4uMDkyNWVjOWYyOTJjMTgxZjZmYTM4MDE2ZWM2YzRmMjc5YzljNDlhNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQ
cm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFyZWNvcmRlci9NZWRp
YVJlY29yZGVyUHJvdmlkZXIuaApAQCAtNDMsMTEgKzQzLDYgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgc3RkOjp1bmlxdWVfcHRyPE1lZGlhUmVjb3JkZXJQcml2YXRlPiBjcmVhdGVNZWRpYVJlY29y
ZGVyUHJpdmF0ZShNZWRpYVN0cmVhbVByaXZhdGUmLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0
ZU9wdGlvbnMmKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNTdXBwb3J0ZWQoY29uc3QgU3RyaW5nJik7
CiAjZW5kaWYKLQotICAgIHZvaWQgc2V0VXNlR1BVUHJvY2Vzcyhib29sIHZhbHVlKSB7IG1fdXNl
R1BVUHJvY2VzcyA9IHZhbHVlOyB9Ci0KLXByb3RlY3RlZDoKLSAgICBib29sIG1fdXNlR1BVUHJv
Y2VzcyB7IGZhbHNlIH07CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
aW5kZXggN2VmZDY4ZjZmODY3MjZjYWNiNjU5ZjA0NjUyMGNmNGQxYjVhNWNkYi4uYzgzNTU1Y2Zi
ZTE1YjQwOTk1MDkzZDg3YzYwYjBjZDNmN2YzMzg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmNwcApAQCAtMTYwNiwxNiArMTYwNiw2IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRVc2VE
VExTMTAoYm9vbCB1c2VEVExTMTApCiAjZW5kaWYKIH0KIAotdm9pZCBJbnRlcm5hbHM6OnNldFVz
ZUdQVVByb2Nlc3NGb3JXZWJSVEMoYm9vbCB1c2VHUFVQcm9jZXNzKQotewotI2lmIFVTRShMSUJX
RUJSVEMpCi0gICAgYXV0byogZG9jdW1lbnQgPSBjb250ZXh0RG9jdW1lbnQoKTsKLSAgICBpZiAo
IWRvY3VtZW50IHx8ICFkb2N1bWVudC0+cGFnZSgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBk
b2N1bWVudC0+cGFnZSgpLT5tZWRpYVJlY29yZGVyUHJvdmlkZXIoKS5zZXRVc2VHUFVQcm9jZXNz
KHVzZUdQVVByb2Nlc3MpOwotI2VuZGlmCi19CiAjZW5kaWYKIAogI2lmIEVOQUJMRShNRURJQV9T
VFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBlZThlMjY3NmExYTcyOWNi
N2IyOWQ5MmI3ZDQ1ZmMxZTYyNmY1MjI4Li40ZDE5ZDk2YWM0MmZmNjFlNDI4YjMzYTY4OWY0Y2Zk
Mjg2Mzk0YmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTYxNSw3ICs2MTUs
NiBAQCBwdWJsaWM6CiAgICAgdWludDY0X3Qgc2ZyYW1lS2V5SWQoY29uc3QgUlRDUnRwU0ZyYW1l
VHJhbnNmb3JtJik7CiAgICAgdm9pZCBzZXRFbmFibGVXZWJSVENFbmNyeXB0aW9uKGJvb2wpOwog
ICAgIHZvaWQgc2V0VXNlRFRMUzEwKGJvb2wpOwotICAgIHZvaWQgc2V0VXNlR1BVUHJvY2Vzc0Zv
cldlYlJUQyhib29sKTsKICNlbmRpZgogCiAgICAgU3RyaW5nIGdldEltYWdlU291cmNlVVJMKEVs
ZW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA4NWFmYWZjNTlm
NzI4MzY5NTIwYzg5OWZhMDY5ZGM5ZGU1MTZlOGNkLi4xZWQ3ZDYwZDJlOTE4Mzg1NGY2MzkzNmE0
ZDY3ZGEzYWJjOTc4NjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC03
MTcsNyArNzE3LDYgQEAgZW51bSBUcmVlVHlwZSB7CiAgICAgW0NvbmRpdGlvbmFsPVdFQl9SVENd
IHVuZGVmaW5lZCBjbGVhclBlZXJDb25uZWN0aW9uRmFjdG9yeSgpOwogICAgIFtDb25kaXRpb25h
bD1XRUJfUlRDXSB1bmRlZmluZWQgc2V0RW5hYmxlV2ViUlRDRW5jcnlwdGlvbihib29sZWFuIGVu
YWJsZWQpOwogICAgIFtDb25kaXRpb25hbD1XRUJfUlRDXSB1bmRlZmluZWQgc2V0VXNlRFRMUzEw
KGJvb2xlYW4gdXNlKTsKLSAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQ10gdW5kZWZpbmVkIHNldFVz
ZUdQVVByb2Nlc3NGb3JXZWJSVEMoYm9vbGVhbiB1c2UpOwogCiAgICAgW0NvbmRpdGlvbmFsPVZJ
REVPXSB1bmRlZmluZWQgc2ltdWxhdGVTeXN0ZW1TbGVlcCgpOwogICAgIFtDb25kaXRpb25hbD1W
SURFT10gdW5kZWZpbmVkIHNpbXVsYXRlU3lzdGVtV2FrZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVyLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQcm92aWRl
ci5jcHAKaW5kZXggNDA0NzFiZDcxZTU1Nzk4YzI2NDBmNTg1YThhNGJlOTA1ZDY2Y2ZlNy4uYmIz
NTJlN2RlYmQ2ODJjYzA3Zjg5NmVjZmQ5MDNhODNlNDVhNDQ3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9NZWRpYVJlY29yZGVyUHJv
dmlkZXIuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJNZWRpYVJlY29yZGVyUHJp
dmF0ZS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFSZWNvcmRlclByaXZhdGUuaD4KKyNpbmNs
dWRlIDxXZWJDb3JlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaD4KIAogbmFtZXNwYWNlIFdlYktp
dCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTM3LDcgKzM4LDcgQEAgdXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CiBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6TWVkaWFSZWNvcmRlclBy
aXZhdGU+IE1lZGlhUmVjb3JkZXJQcm92aWRlcjo6Y3JlYXRlTWVkaWFSZWNvcmRlclByaXZhdGUo
TWVkaWFTdHJlYW1Qcml2YXRlJiBzdHJlYW0sIGNvbnN0IE1lZGlhUmVjb3JkZXJQcml2YXRlT3B0
aW9ucyYgb3B0aW9ucykKIHsKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEhBVkUoQVZBU1NF
VFdSSVRFUkRFTEVHQVRFKQotICAgIGlmIChtX3VzZUdQVVByb2Nlc3MpCisgICAgaWYgKFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkud2ViUlRDUGxhdGZvcm1Db2RlY3NJ
bkdQVVByb2Nlc3NFbmFibGVkKCkpCiAgICAgICAgIHJldHVybiBtYWtlVW5pcXVlPE1lZGlhUmVj
b3JkZXJQcml2YXRlPihzdHJlYW0sIG9wdGlvbnMpOwogI2VuZGlmCiAgICAgcmV0dXJuIFdlYkNv
cmU6Ok1lZGlhUmVjb3JkZXJQcm92aWRlcjo6Y3JlYXRlTWVkaWFSZWNvcmRlclByaXZhdGUoc3Ry
ZWFtLCBvcHRpb25zKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhNDY1YjI2NjJhMTI5YzFlNDMyY2I2MzUwMzRjZmMwMjg4
OGM5ODM3Li41ZWE5NzQzZmY1YmZhY2QwNGJmMjY5MjAwODY1MjU2MWZlZmMxNjljIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMjEtMDEtMjYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUu
Y29tPgorCisgICAgICAgIFVzZSBXZWJSVEMgR1BVIHByb2Nlc3MgZmxhZyBmb3IgTWVkaWFSZWNv
cmRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIw
OTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBk
YXRlIHRlc3QgdG8gdXNlIGZlYXR1cmUgZmxhZyBpbnN0ZWFkIG9mIGludGVybmFscyBBUEkuCisg
ICAgICAgIFJlbW92aW5nIHdlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0bWwgc2luY2UgaXQgaXMg
bm93IGVxdWl2YWxlbnQgdG8gd2VicnRjL3ZpZGVvLmh0bWwuCisKKyAgICAgICAgKiBodHRwL3dw
dC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJs
ZS1ncHVwcm9jZXNzLmh0bWw6CisgICAgICAgICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRp
YVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUuaHRtbDoKKyAgICAgICAgKiBo
dHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItcmVxdWVzdERhdGEuaHRtbDoKKyAg
ICAgICAgKiBodHRwL3dwdC9tZWRpYXJlY29yZGVyL211dGUtdHJhY2tzLmh0bWw6CisgICAgICAg
ICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci9wYXVzZS1yZWNvcmRpbmcuaHRtbDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogd2VicnRjL3ZpZGVv
LWdwdVByb2Nlc3MtZXhwZWN0ZWQudHh0OiBEZWxldGVkLgorICAgICAgICAqIHdlYnJ0Yy92aWRl
by1ncHVQcm9jZXNzLmh0bWw6IERlbGV0ZWQuCisKIDIwMjEtMDEtMjUgIFJ5b3N1a2UgTml3YSAg
PHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNzE1
MTQgYW5kIHIyNzE1NDkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVj
b3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nl
c3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRl
ci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nlc3MuaHRtbAppbmRleCA4ODAx
NDg2NTdlMjVkZGUzM2NiMTA5MzQ2ZDZjYmVhYWI3ZjljZWZiLi42NTAzMjViNWM0N2IyNzU1NTU3
NTUyMTlhOGZjOWQzNTRjYWNkMTM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9t
ZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1n
cHVwcm9jZXNzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9N
ZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUtZ3B1cHJvY2Vzcy5odG1s
CkBAIC0yMCw5ICsyMCw2IEBACiAgICAgPC9jYW52YXM+CiA8L2Rpdj4KIDxzY3JpcHQ+Ci0gICAg
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0VXNlR1BV
UHJvY2Vzc0ZvcldlYlJUQyh0cnVlKTsKLQogICAgIHZhciBjb250ZXh0OwogICAgIHZhciBkcmF3
U3RhcnRUaW1lOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29y
ZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS5odG1sIGIvTGF5
b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZp
ZGVvLWRhdGFhdmFpbGFibGUuaHRtbAppbmRleCA2NzJiYzllNjQ0YmU2MjcyMTFkZTc1OTBhOGZj
ZmZjY2YyNDJhNDlmLi5kYjlhMjVjMTc0OTU0MDUyMTcyZmQxMmE4MzdmNmFmZjA5YTg0MDUzIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3Jk
ZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZh
aWxhYmxlLmh0bWwKQEAgLTEsMyArMSw0IEBACis8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIFdl
YlJUQ1BsYXRmb3JtQ29kZWNzSW5HUFVQcm9jZXNzRW5hYmxlZD1mYWxzZSBdIC0tPgogPCFkb2N0
eXBlIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgpAQCAtMTksOSArMjAsNiBAQAogICAgIDwvY2FudmFz
PgogPC9kaXY+CiA8c2NyaXB0PgotICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICB3
aW5kb3cuaW50ZXJuYWxzLnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMoZmFsc2UpOwotCiAgICAg
dmFyIGNvbnRleHQ7CiAgICAgdmFyIGRyYXdTdGFydFRpbWU7CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1yZXF1ZXN0RGF0YS5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJl
cXVlc3REYXRhLmh0bWwKaW5kZXggMDFmOTdhYTNjY2FjNWRmNDVlZTI5NzdmMDIyYmJhMmYzMGJl
MWZmNi4uODdmNjQ0NzhhM2FlZjNiYzE5ZTQ1YmFkYmYyMGJjYTNlNWQyMDVmMiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVl
c3REYXRhLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRp
YVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWwKQEAgLTIwLDkgKzIwLDYgQEAKICAgICA8L2NhbnZh
cz4KIDwvZGl2PgogPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAg
d2luZG93LmludGVybmFscy5zZXRVc2VHUFVQcm9jZXNzRm9yV2ViUlRDKHRydWUpOwotCiAgICAg
dmFyIGNvbnRleHQ7CiAgICAgdmFyIGRyYXdTdGFydFRpbWU7CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvbXV0ZS10cmFja3MuaHRtbCBiL0xheW91dFRl
c3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvbXV0ZS10cmFja3MuaHRtbAppbmRleCA4NzhkMTM3
OTRlNzU2YjAwYWI5MmUzODY3MjBkNWQwY2U4ZTI3MjgxLi4wNWZhMDgwMDMxZDhhOWU1YzA1NWE4
YWQxODNjN2Y0NWY3MDQ1MThkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRp
YXJlY29yZGVyL211dGUtdHJhY2tzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVk
aWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sCkBAIC0xLDMgKzEsNCBAQAorPCEtLSB3ZWJraXQt
dGVzdC1ydW5uZXIgWyBXZWJSVENQbGF0Zm9ybUNvZGVjc0luR1BVUHJvY2Vzc0VuYWJsZWQ9ZmFs
c2UgXSAtLT4KIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8aGVhZD4KQEAgLTEyLDkgKzEzLDYg
QEAKICAgICA8dmlkZW8gaWQ9InZpZGVvMyIgY29udHJvbHM+PC92aWRlbz4KICAgICA8Y2FudmFz
IGlkPSJjYW52YXMzIiB3aWR0aD0iMzIwIiBoZWlnaHQ9IjI0MCI+PC9jYW52YXM+CiAgICAgPHNj
cmlwdD4KLWlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0VXNl
R1BVUHJvY2Vzc0ZvcldlYlJUQyhmYWxzZSk7Ci0KIGZ1bmN0aW9uIGFuYWx5c2VBdWRpbyhzdHJl
YW1PclZpZGVvLCBkdXJhdGlvbiwgY29udGV4dCkKIHsKICAgICByZXR1cm4gbmV3IFByb21pc2Uo
KHJlc29sdmUsIHJlamVjdCkgPT4gewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQv
bWVkaWFyZWNvcmRlci9wYXVzZS1yZWNvcmRpbmcuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0
L21lZGlhcmVjb3JkZXIvcGF1c2UtcmVjb3JkaW5nLmh0bWwKaW5kZXggMWFjNTViZDI1NzVmMWE0
Mzk5NzAyNDFiOWRkN2I0YjE1MDdmZDkxMy4uZjhhOWY2OTQyNmE1ZGU0NDZlZDA1ZDgxMjQ3MDE4
M2Q0ZGJlMDA0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRl
ci9wYXVzZS1yZWNvcmRpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJl
Y29yZGVyL3BhdXNlLXJlY29yZGluZy5odG1sCkBAIC0xLDMgKzEsNCBAQAorPCEtLSB3ZWJraXQt
dGVzdC1ydW5uZXIgWyBXZWJSVENQbGF0Zm9ybUNvZGVjc0luR1BVUHJvY2Vzc0VuYWJsZWQ9ZmFs
c2UgXSAtLT4KIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8aGVhZD4KQEAgLTksOSArMTAsNiBA
QAogPGJvZHk+CiAgICAgPHZpZGVvIGlkPSJ2aWRlbzEiIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAg
PHNjcmlwdD4KLWlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0
VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyhmYWxzZSk7Ci0KIGZ1bmN0aW9uIHdhaXRGb3IoZHVyYXRp
b24pCiB7CiAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJl
c29sdmUsIGR1cmF0aW9uKSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGli
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggYzk2Y2RjNjVlNTBkNTQ2YTZmMTI3NTE3MDk5YTgzZDYzZWQxMzI1Yi4uZWEy
ZjliYWQ0ZmQ4MWNlOGVjYWRlNjc1ZDNhZDcxMmRkNDliODVkZCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtOTM1LDkgKzkzNSw2IEBAIHdlYmtpdC5v
cmcvYi8yMTY3Nzcgd2Via2l0Lm9yZy9iLzE5MTAwOSB3ZWJydGMvdmlkZW8tbXV0ZS12cDguaHRt
bCBbIENyYXNoIFRpbWVvCiB3ZWJraXQub3JnL2IvMjA2NDY0IHdlYmtpdC5vcmcvYi8yMTg3ODcg
d2VicnRjL3BlZXJjb25uZWN0aW9uLXBhZ2UtY2FjaGUtbG9uZy5odG1sIFsgRmFpbHVyZSBQYXNz
IFRpbWVvdXQgXQogd2Via2l0Lm9yZy9iLzIwNjQ2NCB3ZWJraXQub3JnL2IvMjE4Nzg3IHdlYnJ0
Yy9wZWVyY29ubmVjdGlvbi1wYWdlLWNhY2hlLmh0bWwgWyBGYWlsdXJlIFBhc3MgVGltZW91dCBd
CiAKLXdlYmtpdC5vcmcvYi8yMDY1ODMgWyBSZWxlYXNlIF0gd2VicnRjL3ZpZGVvLWdwdVByb2Nl
c3MuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIwNjU4MyBbIERlYnVnIF0gd2VicnRj
L3ZpZGVvLWdwdVByb2Nlc3MuaHRtbCBbIFRpbWVvdXQgXQotCiB3ZWJraXQub3JnL2IvMjA4MTI1
IHdlYnJ0Yy9wZWVyY29ubmVjdGlvbi1uZXctY2FuZGlkYXRlLXBhZ2UtY2FjaGUuaHRtbCBbIEZh
aWx1cmUgVGltZW91dCBdCiAKIHdlYmtpdC5vcmcvYi8yMDkxNjMgd2VicnRjL2F1ZGlvLXZpZGVv
LWVsZW1lbnQtcGxheWluZy5odG1sIFsgQ3Jhc2ggRmFpbHVyZSBQYXNzIF0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3dlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMzkyNTZiN2Y0MjNkMTgzNmU4YWMyNjA5NDMxOWQ5MDE1OTEyMTVj
NC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw2ICswLDAgQEAKLQotCi1QQVNTIEJhc2ljIHZpZGVvIGV4Y2hhbmdlCi1QQVNTIENhbGwg
c2V0UGFyYW1ldGVycyB0byBkaXNhYmxlIHNlbmRpbmcgYSBnaXZlbiBlbmNvZGluZwotUEFTUyBD
YWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFibGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5nCi0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0bWwgYi9M
YXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBkN2RkZmIyODNhY2U3NjgyYTY5MzU3NDExYTdmYjRkMTk4MjZkNDc4Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L3dlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjkgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPG1ldGEg
Y2hhcnNldD0idXRmLTgiPgotICAgICAgICA8dGl0bGU+VmlkZW8gZXhjaGFuZ2UgdXNpbmcgR1BV
IHByb2Nlc3M8L3RpdGxlPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5Pgot
ICAgICAgICA8dmlkZW8gaWQ9InZpZGVvIiBhdXRvcGxheT0iIj48L3ZpZGVvPgotICAgICAgICA8
Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSI2NDAiIGhlaWdodD0iNDgwIj48L2NhbnZhcz4KLSAg
ICAgICAgPHNjcmlwdCBzcmMgPSJyb3V0aW5lcy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci1pZiAod2luZG93LmludGVybmFscykKLSAgICBpbnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vz
c0ZvcldlYlJUQyh0cnVlKTsKLQotdmlkZW8gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlk
ZW8iKTsKLWNhbnZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKLQotZnVu
Y3Rpb24gZ3JhYkZyYW1lRGF0YSh4LCB5LCB3LCBoKQotewotICAgIGNhbnZhcy53aWR0aCA9IHZp
ZGVvLnZpZGVvV2lkdGg7Ci0gICAgY2FudmFzLmhlaWdodCA9IHZpZGVvLnZpZGVvSGVpZ2h0Owot
Ci0gICAgY2FudmFzLmdldENvbnRleHQoJzJkJykuZHJhd0ltYWdlKHZpZGVvLCB4LCB5LCB3LCBo
LCB4LCB5LCB3LCBoKTsKLSAgICByZXR1cm4gY2FudmFzLmdldENvbnRleHQoJzJkJykuZ2V0SW1h
Z2VEYXRhKHgsIHksIHcsIGgpLmRhdGE7Ci19Ci0KLWZ1bmN0aW9uIHRlc3RJbWFnZSgpCi17Ci0g
ICAgY29uc3QgZGF0YSA9IGdyYWJGcmFtZURhdGEoMTAsIDMyNSwgMjUwLCAxKTsKLQotICAgIHZh
ciBpbmRleCA9IDIwOwotICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXhdIDwgMTAwKTsKLSAgICBh
c3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0gPCAxMDApOwotICAgIGFzc2VydF90cnVlKGRhdGFb
aW5kZXggKyAyXSA8IDEwMCk7Ci0KLSAgICBpbmRleCA9IDgwOwotICAgIGFzc2VydF90cnVlKGRh
dGFbaW5kZXhdID4gMjAwKTsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0gPiAyMDAp
OwotICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXggKyAyXSA+IDIwMCk7Ci0KLSAgICBpbmRleCAr
PSA4MDsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4XSA+IDIwMCk7Ci0gICAgYXNzZXJ0X3Ry
dWUoZGF0YVtpbmRleCArIDFdID4gMjAwKTsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsg
Ml0gPCAxMDApOwotfQotCi12YXIgcGMxLCBwYzI7Ci1wcm9taXNlX3Rlc3QoYXN5bmMgKHRlc3Qp
ID0+IHsKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuc2V0
VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsKLQotICAgIGNvbnN0IGxvY2FsU3RyZWFtID0gYXdh
aXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoe3ZpZGVvOiB7YWR2YW5jZWQ6
IFt7d2lkdGg6e21pbjo2NDB9fSwge2hlaWdodDp7bWluOjQ4MH0gfSBdfX0pOwotICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICBhc3NlcnRfdHJ1ZShpbnRlcm5hbHMucGFnZU1lZGlh
U3RhdGUoKS5pbmNsdWRlcygnSGFzQWN0aXZlVmlkZW9DYXB0dXJlRGV2aWNlJyksICJVbmV4cGVj
dGVkIEhhc0FjdGl2ZVZpZGVvQ2FwdHVyZURldmljZSIpOwotICAgIGNvbnN0IHN0cmVhbSA9IGF3
YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgY3JlYXRlQ29u
bmVjdGlvbnMoKGZpcnN0Q29ubmVjdGlvbikgPT4gewotICAgICAgICAgICAgcGMxID0gZmlyc3RD
b25uZWN0aW9uOwotICAgICAgICAgICAgZmlyc3RDb25uZWN0aW9uLmFkZFRyYWNrKGxvY2FsU3Ry
ZWFtLmdldFZpZGVvVHJhY2tzKClbMF0sIGxvY2FsU3RyZWFtKTsKLSAgICAgICAgfSwgKHNlY29u
ZENvbm5lY3Rpb24pID0+IHsKLSAgICAgICAgICAgIHBjMiA9IHNlY29uZENvbm5lY3Rpb247Ci0g
ICAgICAgICAgICBzZWNvbmRDb25uZWN0aW9uLm9udHJhY2sgPSAodHJhY2tFdmVudCkgPT4gewot
ICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQudHJhY2sgaW5zdGFuY2VvZiBN
ZWRpYVN0cmVhbVRyYWNrKTsKLSAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZSh0cmFja0V2ZW50
LnJlY2VpdmVyIGluc3RhbmNlb2YgUlRDUnRwUmVjZWl2ZXIpOwotICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKEFycmF5LmlzQXJyYXkodHJhY2tFdmVudC5zdHJlYW1zKSwgIkFycmF5LmlzQXJy
YXkoKSBzaG91bGQgcmV0dXJuIHRydWUiKTsKLSAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShP
YmplY3QuaXNGcm96ZW4odHJhY2tFdmVudC5zdHJlYW1zKSwgIk9iamVjdC5pc0Zyb3plbigpIHNo
b3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModHJhY2tF
dmVudC50cmFjay5pZCwgbG9jYWxTdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXS5pZCk7Ci0gICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnRyYWNrLCB0cmFja0V2ZW50LnN0
cmVhbXNbMF0uZ2V0VmlkZW9UcmFja3MoKVswXSk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZSh0
cmFja0V2ZW50LnN0cmVhbXNbMF0pOwotICAgICAgICAgICAgfTsKLSAgICAgICAgfSk7Ci0gICAg
ICAgIHNldFRpbWVvdXQoKCkgPT4gcmVqZWN0KCJUZXN0IHRpbWVkIG91dCIpLCA1MDAwKTsKLSAg
ICB9KTsKLQotICAgIHZpZGVvLnNyY09iamVjdCA9IHN0cmVhbTsKLSAgICBhd2FpdCB2aWRlby5w
bGF5KCk7Ci0KLSAgICB0ZXN0SW1hZ2UoKTsKLX0sICJCYXNpYyB2aWRlbyBleGNoYW5nZSIpOwot
Ci1mdW5jdGlvbiBnZXRDaXJjbGVJbWFnZURhdGEoKQotewotICAgIHJldHVybiBncmFiRnJhbWVE
YXRhKDQ1MCwgMTAwLCAxNTAsIDEwMCk7Ci19Ci0KLWFzeW5jIGZ1bmN0aW9uIGNoZWNrVmlkZW9J
c1VwZGF0ZWQoc2hvdWxkQmVVcGRhdGVkLCBjb3VudCwgcmVmZXJlbmNlRGF0YSkKLXsKLSAgICBp
ZiAoY291bnQgPT09IHVuZGVmaW5lZCkKLSAgICAgICAgY291bnQgPSAwOwotICAgIGVsc2UgaWYg
KGNvdW50ID49IDIwKQotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoImNoZWNrVmlkZW9J
c1VwZGF0ZWQgdGltZWQgb3V0IDoiICsgc2hvdWxkQmVVcGRhdGVkICsgIiAiICsgY291bnQpOwot
Ci0gICAgaWYgKHJlZmVyZW5jZURhdGEgPT09IHVuZGVmaW5lZCkKLSAgICAgICAgcmVmZXJlbmNl
RGF0YSA9IGdldENpcmNsZUltYWdlRGF0YSgpOwotCi0gICAgYXdhaXQgd2FpdEZvcigyMDApOwot
ICAgIGNvbnN0IG5ld0RhdGEgPSBnZXRDaXJjbGVJbWFnZURhdGEoKTsKLQotICAgIGlmIChzaG91
bGRCZVVwZGF0ZWQgPT09IChKU09OLnN0cmluZ2lmeShyZWZlcmVuY2VEYXRhKSAhPT0gSlNPTi5z
dHJpbmdpZnkobmV3RGF0YSkpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBhd2FpdCBjaGVja1Zp
ZGVvSXNVcGRhdGVkKHNob3VsZEJlVXBkYXRlZCwgKytjb3VudCwgbmV3RGF0YSk7Ci19Ci0KLXBy
b21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4gewotICAgIGNvbnN0IHNlbmRlciA9IHBjMS5nZXRT
ZW5kZXJzKClbMF07Ci0gICAgbGV0IHAgPSBzZW5kZXIuZ2V0UGFyYW1ldGVycygpOwotICAgIHAu
ZW5jb2RpbmdzWzBdLmFjdGl2ZSA9IGZhbHNlOwotICAgIGF3YWl0IHNlbmRlci5zZXRQYXJhbWV0
ZXJzKHApOwotCi0gICAgYXNzZXJ0X2ZhbHNlKHNlbmRlci5nZXRQYXJhbWV0ZXJzKCkuZW5jb2Rp
bmdzWzBdLmFjdGl2ZSwgImVuY29kaW5nc1swXS5hY3RpdmUgc2hvdWxkIGJlIGZhbHNlIik7Ci0K
LSAgICBhd2FpdCBjaGVja1ZpZGVvSXNVcGRhdGVkKGZhbHNlKTsKLX0sICJDYWxsIHNldFBhcmFt
ZXRlcnMgdG8gZGlzYWJsZSBzZW5kaW5nIGEgZ2l2ZW4gZW5jb2RpbmciKTsKLQotcHJvbWlzZV90
ZXN0KGFzeW5jICh0ZXN0KSA9PiB7Ci0gICAgY29uc3Qgc2VuZGVyID0gcGMxLmdldFNlbmRlcnMo
KVswXTsKLSAgICBsZXQgcCA9IHNlbmRlci5nZXRQYXJhbWV0ZXJzKCk7Ci0gICAgcC5lbmNvZGlu
Z3NbMF0uYWN0aXZlID0gdHJ1ZTsKLSAgICBhd2FpdCBzZW5kZXIuc2V0UGFyYW1ldGVycyhwKTsK
LQotICAgIGFzc2VydF90cnVlKHNlbmRlci5nZXRQYXJhbWV0ZXJzKCkuZW5jb2RpbmdzWzBdLmFj
dGl2ZSwgImVuY29kaW5nc1swXS5hY3RpdmUgc2hvdWxkIGJlIHRydWUiKTsKLQotICAgIGF3YWl0
IGNoZWNrVmlkZW9Jc1VwZGF0ZWQodHJ1ZSk7Ci19LCAiQ2FsbCBzZXRQYXJhbWV0ZXJzIHRvIHJl
ZW5hYmxlIHNlbmRpbmcgYSBnaXZlbiBlbmNvZGluZyIpOwotICAgICAgICA8L3NjcmlwdD4KLSAg
ICA8L2JvZHk+Ci08L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418978</attachid>
            <date>2021-02-02 02:52:08 -0800</date>
            <delta_ts>2021-02-02 04:31:11 -0800</delta_ts>
            <desc>Rebasing</desc>
            <filename>bug-220967-20210202115206.patch</filename>
            <type>text/plain</type>
            <size>16237</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzgwMmVkMzA2NWQ5NjBi
M2UzMTQ3NGZlOWZiNTQzM2MxNWUxMTc3Yi4uYjM0ZWY4MzIwNmJiMTNlMmQ5MDU4OGM0ZTFkYjRl
MjEzMjYzYjg4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAyLTAyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgV2ViUlRDIEdQVSBw
cm9jZXNzIGZsYWcgZm9yIE1lZGlhUmVjb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDk2NworCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMg
Q2FybHNvbi4KKworICAgICAgICBSZW1vdmUgSW50ZXJuYWxzOjpzZXRVc2VHUFVQcm9jZXNzRm9y
V2ViUlRDIGFuZCByZWx5IG9uIFdlYlJUQyBjb2RlYyBmZWF0dXJlIGZsYWcuCisKKyAgICAgICAg
KiBNb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlclByb3ZpZGVyLmg6CisgICAgICAg
ICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpz
ZXRVc2VHUFVQcm9jZXNzRm9yV2ViUlRDKTogRGVsZXRlZC4KKyAgICAgICAgKiB0ZXN0aW5nL0lu
dGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoKKwogMjAyMS0wMi0w
MiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVjb3ZlciBN
ZWRpYVN0cmVhbVRyYWNrIGF1ZGlvIHJlbmRlcmluZyBmcm9tIEdQVVByb2Nlc3MgY3Jhc2gKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cKaW5kZXggYmM5NGI4YmNkNDU4YWZlY2I1NjFhN2VlM2YzZGRhNjk2ZTFlMjMyMC4uZTdlN2Rm
OTMyYzY3YTI5NDJhMjE2ZjQ0OGEyZjkzMjU0Mzc2YjdhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MyBAQAorMjAyMS0wMi0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAg
ICAgICAgVXNlIFdlYlJUQyBHUFUgcHJvY2VzcyBmbGFnIGZvciBNZWRpYVJlY29yZGVyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA5NjcKKworICAg
ICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQ
VS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVk
aWFSZWNvcmRlclByb3ZpZGVyOjpjcmVhdGVNZWRpYVJlY29yZGVyUHJpdmF0ZSk6CisKIDIwMjEt
MDItMDIgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlY292
ZXIgTWVkaWFTdHJlYW1UcmFjayBhdWRpbyByZW5kZXJpbmcgZnJvbSBHUFVQcm9jZXNzIGNyYXNo
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIvTWVkaWFS
ZWNvcmRlclByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhcmVjb3JkZXIv
TWVkaWFSZWNvcmRlclByb3ZpZGVyLmgKaW5kZXggZDdkOTM0MDhmZTNkNDlhMTY3NDE1OWUyMDE5
N2NkN2NmOWI1YzExMC4uMDkyNWVjOWYyOTJjMTgxZjZmYTM4MDE2ZWM2YzRmMjc5YzljNDlhNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVj
b3JkZXJQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFyZWNvcmRl
ci9NZWRpYVJlY29yZGVyUHJvdmlkZXIuaApAQCAtNDMsMTEgKzQzLDYgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgc3RkOjp1bmlxdWVfcHRyPE1lZGlhUmVjb3JkZXJQcml2YXRlPiBjcmVhdGVNZWRp
YVJlY29yZGVyUHJpdmF0ZShNZWRpYVN0cmVhbVByaXZhdGUmLCBjb25zdCBNZWRpYVJlY29yZGVy
UHJpdmF0ZU9wdGlvbnMmKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNTdXBwb3J0ZWQoY29uc3QgU3Ry
aW5nJik7CiAjZW5kaWYKLQotICAgIHZvaWQgc2V0VXNlR1BVUHJvY2Vzcyhib29sIHZhbHVlKSB7
IG1fdXNlR1BVUHJvY2VzcyA9IHZhbHVlOyB9Ci0KLXByb3RlY3RlZDoKLSAgICBib29sIG1fdXNl
R1BVUHJvY2VzcyB7IGZhbHNlIH07CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5jcHAKaW5kZXggMWIxNzJlYTFkZTk5ZTBlMGE3MTAzN2UwODk5ZDI2YmM5ZjhjMGVmYy4uMmQx
MWZjOGRkZjgzYThhNGI0ZTA2MzdiNmQ0NmE4Mjk1MDgwYmViYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcApAQCAtMTYwNiwxNiArMTYwNiw2IEBAIHZvaWQgSW50ZXJuYWxzOjpz
ZXRVc2VEVExTMTAoYm9vbCB1c2VEVExTMTApCiAjZW5kaWYKIH0KIAotdm9pZCBJbnRlcm5hbHM6
OnNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMoYm9vbCB1c2VHUFVQcm9jZXNzKQotewotI2lmIFVT
RShMSUJXRUJSVEMpCi0gICAgYXV0byogZG9jdW1lbnQgPSBjb250ZXh0RG9jdW1lbnQoKTsKLSAg
ICBpZiAoIWRvY3VtZW50IHx8ICFkb2N1bWVudC0+cGFnZSgpKQotICAgICAgICByZXR1cm47Ci0K
LSAgICBkb2N1bWVudC0+cGFnZSgpLT5tZWRpYVJlY29yZGVyUHJvdmlkZXIoKS5zZXRVc2VHUFVQ
cm9jZXNzKHVzZUdQVVByb2Nlc3MpOwotI2VuZGlmCi19CiAjZW5kaWYKIAogI2lmIEVOQUJMRShN
RURJQV9TVFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBlZThlMjY3NmEx
YTcyOWNiN2IyOWQ5MmI3ZDQ1ZmMxZTYyNmY1MjI4Li40ZDE5ZDk2YWM0MmZmNjFlNDI4YjMzYTY4
OWY0Y2ZkMjg2Mzk0YmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTYxNSw3
ICs2MTUsNiBAQCBwdWJsaWM6CiAgICAgdWludDY0X3Qgc2ZyYW1lS2V5SWQoY29uc3QgUlRDUnRw
U0ZyYW1lVHJhbnNmb3JtJik7CiAgICAgdm9pZCBzZXRFbmFibGVXZWJSVENFbmNyeXB0aW9uKGJv
b2wpOwogICAgIHZvaWQgc2V0VXNlRFRMUzEwKGJvb2wpOwotICAgIHZvaWQgc2V0VXNlR1BVUHJv
Y2Vzc0ZvcldlYlJUQyhib29sKTsKICNlbmRpZgogCiAgICAgU3RyaW5nIGdldEltYWdlU291cmNl
VVJMKEVsZW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCA4NWFm
YWZjNTlmNzI4MzY5NTIwYzg5OWZhMDY5ZGM5ZGU1MTZlOGNkLi4xZWQ3ZDYwZDJlOTE4Mzg1NGY2
MzkzNmE0ZDY3ZGEzYWJjOTc4NjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
CkBAIC03MTcsNyArNzE3LDYgQEAgZW51bSBUcmVlVHlwZSB7CiAgICAgW0NvbmRpdGlvbmFsPVdF
Ql9SVENdIHVuZGVmaW5lZCBjbGVhclBlZXJDb25uZWN0aW9uRmFjdG9yeSgpOwogICAgIFtDb25k
aXRpb25hbD1XRUJfUlRDXSB1bmRlZmluZWQgc2V0RW5hYmxlV2ViUlRDRW5jcnlwdGlvbihib29s
ZWFuIGVuYWJsZWQpOwogICAgIFtDb25kaXRpb25hbD1XRUJfUlRDXSB1bmRlZmluZWQgc2V0VXNl
RFRMUzEwKGJvb2xlYW4gdXNlKTsKLSAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQ10gdW5kZWZpbmVk
IHNldFVzZUdQVVByb2Nlc3NGb3JXZWJSVEMoYm9vbGVhbiB1c2UpOwogCiAgICAgW0NvbmRpdGlv
bmFsPVZJREVPXSB1bmRlZmluZWQgc2ltdWxhdGVTeXN0ZW1TbGVlcCgpOwogICAgIFtDb25kaXRp
b25hbD1WSURFT10gdW5kZWZpbmVkIHNpbXVsYXRlU3lzdGVtV2FrZSgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVy
LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvd2VicnRjL01lZGlhUmVjb3JkZXJQ
cm92aWRlci5jcHAKaW5kZXggNDA0NzFiZDcxZTU1Nzk4YzI2NDBmNTg1YThhNGJlOTA1ZDY2Y2Zl
Ny4uYmIzNTJlN2RlYmQ2ODJjYzA3Zjg5NmVjZmQ5MDNhODNlNDVhNDQ3NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS93ZWJydGMvTWVkaWFSZWNvcmRlclByb3ZpZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL3dlYnJ0Yy9NZWRpYVJlY29y
ZGVyUHJvdmlkZXIuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJNZWRpYVJlY29y
ZGVyUHJpdmF0ZS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFSZWNvcmRlclByaXZhdGUuaD4K
KyNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaD4KIAogbmFtZXNwYWNl
IFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTM3LDcgKzM4LDcgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6TWVkaWFSZWNv
cmRlclByaXZhdGU+IE1lZGlhUmVjb3JkZXJQcm92aWRlcjo6Y3JlYXRlTWVkaWFSZWNvcmRlclBy
aXZhdGUoTWVkaWFTdHJlYW1Qcml2YXRlJiBzdHJlYW0sIGNvbnN0IE1lZGlhUmVjb3JkZXJQcml2
YXRlT3B0aW9ucyYgb3B0aW9ucykKIHsKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEhBVkUo
QVZBU1NFVFdSSVRFUkRFTEVHQVRFKQotICAgIGlmIChtX3VzZUdQVVByb2Nlc3MpCisgICAgaWYg
KFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkud2ViUlRDUGxhdGZvcm1D
b2RlY3NJbkdQVVByb2Nlc3NFbmFibGVkKCkpCiAgICAgICAgIHJldHVybiBtYWtlVW5pcXVlPE1l
ZGlhUmVjb3JkZXJQcml2YXRlPihzdHJlYW0sIG9wdGlvbnMpOwogI2VuZGlmCiAgICAgcmV0dXJu
IFdlYkNvcmU6Ok1lZGlhUmVjb3JkZXJQcm92aWRlcjo6Y3JlYXRlTWVkaWFSZWNvcmRlclByaXZh
dGUoc3RyZWFtLCBvcHRpb25zKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2ZmEwOTY0Yzc2NDM2N2NjZjk4N2EyOTEyMjAx
ZTMzODc2NWM0ZWY4Li44MmU0ODQ5OTRmNzE0NGJiODI2OTM1ZTllY2NmMzAyZDMxMmE3MDc3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMDIgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5A
YXBwbGUuY29tPgorCisgICAgICAgIFVzZSBXZWJSVEMgR1BVIHByb2Nlc3MgZmxhZyBmb3IgTWVk
aWFSZWNvcmRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIwOTY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAg
IFVwZGF0ZSB0ZXN0IHRvIHVzZSBmZWF0dXJlIGZsYWcgaW5zdGVhZCBvZiBpbnRlcm5hbHMgQVBJ
LgorICAgICAgICBSZW1vdmluZyB3ZWJydGMvdmlkZW8tZ3B1UHJvY2Vzcy5odG1sIHNpbmNlIGl0
IGlzIG5vdyBlcXVpdmFsZW50IHRvIHdlYnJ0Yy92aWRlby5odG1sLgorCisgICAgICAgICogaHR0
cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFp
bGFibGUtZ3B1cHJvY2Vzcy5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIv
TWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLmh0bWw6CisgICAgICAg
ICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWw6
CisgICAgICAgICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sOgorICAg
ICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvcGF1c2UtcmVjb3JkaW5nLmh0bWw6CisgICAg
ICAgICogcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHdlYnJ0Yy92
aWRlby1ncHVQcm9jZXNzLWV4cGVjdGVkLnR4dDogRGVsZXRlZC4KKyAgICAgICAgKiB3ZWJydGMv
dmlkZW8tZ3B1UHJvY2Vzcy5odG1sOiBEZWxldGVkLgorCiAyMDIxLTAyLTAxICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgd2VicnRjIHZpZGVvIGNh
cHR1cmUgaW4gR1BVUHJvY2VzcyBmb3IgaU9TIFdlYktpdFRlc3RSdW5uZXIKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRp
by12aWRlby1kYXRhYXZhaWxhYmxlLWdwdXByb2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
d3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxh
YmxlLWdwdXByb2Nlc3MuaHRtbAppbmRleCA4ODAxNDg2NTdlMjVkZGUzM2NiMTA5MzQ2ZDZjYmVh
YWI3ZjljZWZiLi42NTAzMjViNWM0N2IyNzU1NTU3NTUyMTlhOGZjOWQzNTRjYWNkMTM3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXIt
QVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1ncHVwcm9jZXNzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVv
LWRhdGFhdmFpbGFibGUtZ3B1cHJvY2Vzcy5odG1sCkBAIC0yMCw5ICsyMCw2IEBACiAgICAgPC9j
YW52YXM+CiA8L2Rpdj4KIDxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAg
ICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyh0cnVlKTsKLQog
ICAgIHZhciBjb250ZXh0OwogICAgIHZhciBkcmF3U3RhcnRUaW1lOwogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8t
dmlkZW8tZGF0YWF2YWlsYWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNv
cmRlci9NZWRpYVJlY29yZGVyLUFWLWF1ZGlvLXZpZGVvLWRhdGFhdmFpbGFibGUuaHRtbAppbmRl
eCA2NzJiYzllNjQ0YmU2MjcyMTFkZTc1OTBhOGZjZmZjY2YyNDJhNDlmLi5kYjlhMjVjMTc0OTU0
MDUyMTcyZmQxMmE4MzdmNmFmZjA5YTg0MDUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWls
YWJsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFS
ZWNvcmRlci1BVi1hdWRpby12aWRlby1kYXRhYXZhaWxhYmxlLmh0bWwKQEAgLTEsMyArMSw0IEBA
Cis8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIFdlYlJUQ1BsYXRmb3JtQ29kZWNzSW5HUFVQcm9j
ZXNzRW5hYmxlZD1mYWxzZSBdIC0tPgogPCFkb2N0eXBlIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgpA
QCAtMTksOSArMjAsNiBAQAogICAgIDwvY2FudmFzPgogPC9kaXY+CiA8c2NyaXB0PgotICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFVzZUdQVVBy
b2Nlc3NGb3JXZWJSVEMoZmFsc2UpOwotCiAgICAgdmFyIGNvbnRleHQ7CiAgICAgdmFyIGRyYXdT
dGFydFRpbWU7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3Jk
ZXIvTWVkaWFSZWNvcmRlci1yZXF1ZXN0RGF0YS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQv
bWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWwKaW5kZXggMDFmOTdh
YTNjY2FjNWRmNDVlZTI5NzdmMDIyYmJhMmYzMGJlMWZmNi4uODdmNjQ0NzhhM2FlZjNiYzE5ZTQ1
YmFkYmYyMGJjYTNlNWQyMDVmMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVk
aWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLXJlcXVlc3REYXRhLmh0bWwK
QEAgLTIwLDkgKzIwLDYgQEAKICAgICA8L2NhbnZhcz4KIDwvZGl2PgogPHNjcmlwdD4KLSAgICBp
ZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgd2luZG93LmludGVybmFscy5zZXRVc2VHUFVQ
cm9jZXNzRm9yV2ViUlRDKHRydWUpOwotCiAgICAgdmFyIGNvbnRleHQ7CiAgICAgdmFyIGRyYXdT
dGFydFRpbWU7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3Jk
ZXIvbXV0ZS10cmFja3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIv
bXV0ZS10cmFja3MuaHRtbAppbmRleCA4NzhkMTM3OTRlNzU2YjAwYWI5MmUzODY3MjBkNWQwY2U4
ZTI3MjgxLi4wNWZhMDgwMDMxZDhhOWU1YzA1NWE4YWQxODNjN2Y0NWY3MDQ1MThkIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL211dGUtdHJhY2tzLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1s
CkBAIC0xLDMgKzEsNCBAQAorPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBXZWJSVENQbGF0Zm9y
bUNvZGVjc0luR1BVUHJvY2Vzc0VuYWJsZWQ9ZmFsc2UgXSAtLT4KIDwhRE9DVFlQRSBodG1sPgog
PGh0bWw+CiA8aGVhZD4KQEAgLTEyLDkgKzEzLDYgQEAKICAgICA8dmlkZW8gaWQ9InZpZGVvMyIg
Y29udHJvbHM+PC92aWRlbz4KICAgICA8Y2FudmFzIGlkPSJjYW52YXMzIiB3aWR0aD0iMzIwIiBo
ZWlnaHQ9IjI0MCI+PC9jYW52YXM+CiAgICAgPHNjcmlwdD4KLWlmICh3aW5kb3cuaW50ZXJuYWxz
KQotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyhmYWxzZSk7
Ci0KIGZ1bmN0aW9uIGFuYWx5c2VBdWRpbyhzdHJlYW1PclZpZGVvLCBkdXJhdGlvbiwgY29udGV4
dCkKIHsKICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gewpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9wYXVzZS1yZWNvcmRp
bmcuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvcGF1c2UtcmVjb3Jk
aW5nLmh0bWwKaW5kZXggMWFjNTViZDI1NzVmMWE0Mzk5NzAyNDFiOWRkN2I0YjE1MDdmZDkxMy4u
ZjhhOWY2OTQyNmE1ZGU0NDZlZDA1ZDgxMjQ3MDE4M2Q0ZGJlMDA0OCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci9wYXVzZS1yZWNvcmRpbmcuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3BhdXNlLXJlY29yZGluZy5odG1s
CkBAIC0xLDMgKzEsNCBAQAorPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBXZWJSVENQbGF0Zm9y
bUNvZGVjc0luR1BVUHJvY2Vzc0VuYWJsZWQ9ZmFsc2UgXSAtLT4KIDwhRE9DVFlQRSBodG1sPgog
PGh0bWw+CiA8aGVhZD4KQEAgLTksOSArMTAsNiBAQAogPGJvZHk+CiAgICAgPHZpZGVvIGlkPSJ2
aWRlbzEiIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPHNjcmlwdD4KLWlmICh3aW5kb3cuaW50ZXJu
YWxzKQotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyhmYWxz
ZSk7Ci0KIGZ1bmN0aW9uIHdhaXRGb3IoZHVyYXRpb24pCiB7CiAgICAgcmV0dXJuIG5ldyBQcm9t
aXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIGR1cmF0aW9uKSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggNzNiZTI0YzMxYmE5YmNj
MmE1OWNiMDY0YjkzOTljMGEwNDM1NWZiNC4uODI2YWFkNWNkZDk3ZTE1YTE0ZmQ1Mzc5MTIxNjZm
YjI3NzVjY2JhYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvVGVzdEV4cGVjdGF0aW9u
cwpAQCAtOTQyLDkgKzk0Miw2IEBAIHdlYmtpdC5vcmcvYi8yMTY3Nzcgd2Via2l0Lm9yZy9iLzE5
MTAwOSB3ZWJydGMvdmlkZW8tbXV0ZS12cDguaHRtbCBbIENyYXNoIFRpbWVvCiB3ZWJraXQub3Jn
L2IvMjA2NDY0IHdlYmtpdC5vcmcvYi8yMTg3ODcgd2VicnRjL3BlZXJjb25uZWN0aW9uLXBhZ2Ut
Y2FjaGUtbG9uZy5odG1sIFsgRmFpbHVyZSBQYXNzIFRpbWVvdXQgXQogd2Via2l0Lm9yZy9iLzIw
NjQ2NCB3ZWJraXQub3JnL2IvMjE4Nzg3IHdlYnJ0Yy9wZWVyY29ubmVjdGlvbi1wYWdlLWNhY2hl
Lmh0bWwgWyBGYWlsdXJlIFBhc3MgVGltZW91dCBdCiAKLXdlYmtpdC5vcmcvYi8yMDY1ODMgWyBS
ZWxlYXNlIF0gd2VicnRjL3ZpZGVvLWdwdVByb2Nlc3MuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzIwNjU4MyBbIERlYnVnIF0gd2VicnRjL3ZpZGVvLWdwdVByb2Nlc3MuaHRtbCBbIFRp
bWVvdXQgXQotCiB3ZWJraXQub3JnL2IvMjA4MTI1IHdlYnJ0Yy9wZWVyY29ubmVjdGlvbi1uZXct
Y2FuZGlkYXRlLXBhZ2UtY2FjaGUuaHRtbCBbIEZhaWx1cmUgVGltZW91dCBdCiAKIHdlYmtpdC5v
cmcvYi8yMDkxNjMgd2VicnRjL2F1ZGlvLXZpZGVvLWVsZW1lbnQtcGxheWluZy5odG1sIFsgQ3Jh
c2ggRmFpbHVyZSBQYXNzIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1n
cHVQcm9jZXNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1ncHVQcm9j
ZXNzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzkyNTZiN2Y0
MjNkMTgzNmU4YWMyNjA5NDMxOWQ5MDE1OTEyMTVjNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZ3B1UHJvY2Vz
cy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw2ICswLDAgQEAKLQotCi1QQVNTIEJh
c2ljIHZpZGVvIGV4Y2hhbmdlCi1QQVNTIENhbGwgc2V0UGFyYW1ldGVycyB0byBkaXNhYmxlIHNl
bmRpbmcgYSBnaXZlbiBlbmNvZGluZwotUEFTUyBDYWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFi
bGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5nCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZ3B1
UHJvY2Vzcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkN2RkZmIyODNhY2U3
NjgyYTY5MzU3NDExYTdmYjRkMTk4MjZkNDc4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1ncHVQcm9jZXNzLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjkgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLSAgICA8aGVhZD4KLSAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgotICAgICAgICA8
dGl0bGU+VmlkZW8gZXhjaGFuZ2UgdXNpbmcgR1BVIHByb2Nlc3M8L3RpdGxlPgotICAgICAgICA8
c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8dmlkZW8gaWQ9InZpZGVvIiBh
dXRvcGxheT0iIj48L3ZpZGVvPgotICAgICAgICA8Y2FudmFzIGlkPSJjYW52YXMiIHdpZHRoPSI2
NDAiIGhlaWdodD0iNDgwIj48L2NhbnZhcz4KLSAgICAgICAgPHNjcmlwdCBzcmMgPSJyb3V0aW5l
cy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQ+Ci1pZiAod2luZG93LmludGVybmFscykK
LSAgICBpbnRlcm5hbHMuc2V0VXNlR1BVUHJvY2Vzc0ZvcldlYlJUQyh0cnVlKTsKLQotdmlkZW8g
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidmlkZW8iKTsKLWNhbnZhcyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJjYW52YXMiKTsKLQotZnVuY3Rpb24gZ3JhYkZyYW1lRGF0YSh4LCB5LCB3
LCBoKQotewotICAgIGNhbnZhcy53aWR0aCA9IHZpZGVvLnZpZGVvV2lkdGg7Ci0gICAgY2FudmFz
LmhlaWdodCA9IHZpZGVvLnZpZGVvSGVpZ2h0OwotCi0gICAgY2FudmFzLmdldENvbnRleHQoJzJk
JykuZHJhd0ltYWdlKHZpZGVvLCB4LCB5LCB3LCBoLCB4LCB5LCB3LCBoKTsKLSAgICByZXR1cm4g
Y2FudmFzLmdldENvbnRleHQoJzJkJykuZ2V0SW1hZ2VEYXRhKHgsIHksIHcsIGgpLmRhdGE7Ci19
Ci0KLWZ1bmN0aW9uIHRlc3RJbWFnZSgpCi17Ci0gICAgY29uc3QgZGF0YSA9IGdyYWJGcmFtZURh
dGEoMTAsIDMyNSwgMjUwLCAxKTsKLQotICAgIHZhciBpbmRleCA9IDIwOwotICAgIGFzc2VydF90
cnVlKGRhdGFbaW5kZXhdIDwgMTAwKTsKLSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0g
PCAxMDApOwotICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXggKyAyXSA8IDEwMCk7Ci0KLSAgICBp
bmRleCA9IDgwOwotICAgIGFzc2VydF90cnVlKGRhdGFbaW5kZXhdID4gMjAwKTsKLSAgICBhc3Nl
cnRfdHJ1ZShkYXRhW2luZGV4ICsgMV0gPiAyMDApOwotICAgIGFzc2VydF90cnVlKGRhdGFbaW5k
ZXggKyAyXSA+IDIwMCk7Ci0KLSAgICBpbmRleCArPSA4MDsKLSAgICBhc3NlcnRfdHJ1ZShkYXRh
W2luZGV4XSA+IDIwMCk7Ci0gICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDFdID4gMjAwKTsK
LSAgICBhc3NlcnRfdHJ1ZShkYXRhW2luZGV4ICsgMl0gPCAxMDApOwotfQotCi12YXIgcGMxLCBw
YzI7Ci1wcm9taXNlX3Rlc3QoYXN5bmMgKHRlc3QpID0+IHsKLSAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsK
LQotICAgIGNvbnN0IGxvY2FsU3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5n
ZXRVc2VyTWVkaWEoe3ZpZGVvOiB7YWR2YW5jZWQ6IFt7d2lkdGg6e21pbjo2NDB9fSwge2hlaWdo
dDp7bWluOjQ4MH0gfSBdfX0pOwotICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICBh
c3NlcnRfdHJ1ZShpbnRlcm5hbHMucGFnZU1lZGlhU3RhdGUoKS5pbmNsdWRlcygnSGFzQWN0aXZl
VmlkZW9DYXB0dXJlRGV2aWNlJyksICJVbmV4cGVjdGVkIEhhc0FjdGl2ZVZpZGVvQ2FwdHVyZURl
dmljZSIpOwotICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCBy
ZWplY3QpID0+IHsKLSAgICAgICAgY3JlYXRlQ29ubmVjdGlvbnMoKGZpcnN0Q29ubmVjdGlvbikg
PT4gewotICAgICAgICAgICAgcGMxID0gZmlyc3RDb25uZWN0aW9uOwotICAgICAgICAgICAgZmly
c3RDb25uZWN0aW9uLmFkZFRyYWNrKGxvY2FsU3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0sIGxv
Y2FsU3RyZWFtKTsKLSAgICAgICAgfSwgKHNlY29uZENvbm5lY3Rpb24pID0+IHsKLSAgICAgICAg
ICAgIHBjMiA9IHNlY29uZENvbm5lY3Rpb247Ci0gICAgICAgICAgICBzZWNvbmRDb25uZWN0aW9u
Lm9udHJhY2sgPSAodHJhY2tFdmVudCkgPT4gewotICAgICAgICAgICAgICAgIGFzc2VydF90cnVl
KHRyYWNrRXZlbnQudHJhY2sgaW5zdGFuY2VvZiBNZWRpYVN0cmVhbVRyYWNrKTsKLSAgICAgICAg
ICAgICAgICBhc3NlcnRfdHJ1ZSh0cmFja0V2ZW50LnJlY2VpdmVyIGluc3RhbmNlb2YgUlRDUnRw
UmVjZWl2ZXIpOwotICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKEFycmF5LmlzQXJyYXkodHJh
Y2tFdmVudC5zdHJlYW1zKSwgIkFycmF5LmlzQXJyYXkoKSBzaG91bGQgcmV0dXJuIHRydWUiKTsK
LSAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShPYmplY3QuaXNGcm96ZW4odHJhY2tFdmVudC5z
dHJlYW1zKSwgIk9iamVjdC5pc0Zyb3plbigpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHModHJhY2tFdmVudC50cmFjay5pZCwgbG9jYWxTdHJlYW0u
Z2V0VmlkZW9UcmFja3MoKVswXS5pZCk7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0
cmFja0V2ZW50LnRyYWNrLCB0cmFja0V2ZW50LnN0cmVhbXNbMF0uZ2V0VmlkZW9UcmFja3MoKVsw
XSk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZSh0cmFja0V2ZW50LnN0cmVhbXNbMF0pOwotICAg
ICAgICAgICAgfTsKLSAgICAgICAgfSk7Ci0gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcmVqZWN0
KCJUZXN0IHRpbWVkIG91dCIpLCA1MDAwKTsKLSAgICB9KTsKLQotICAgIHZpZGVvLnNyY09iamVj
dCA9IHN0cmVhbTsKLSAgICBhd2FpdCB2aWRlby5wbGF5KCk7Ci0KLSAgICB0ZXN0SW1hZ2UoKTsK
LX0sICJCYXNpYyB2aWRlbyBleGNoYW5nZSIpOwotCi1mdW5jdGlvbiBnZXRDaXJjbGVJbWFnZURh
dGEoKQotewotICAgIHJldHVybiBncmFiRnJhbWVEYXRhKDQ1MCwgMTAwLCAxNTAsIDEwMCk7Ci19
Ci0KLWFzeW5jIGZ1bmN0aW9uIGNoZWNrVmlkZW9Jc1VwZGF0ZWQoc2hvdWxkQmVVcGRhdGVkLCBj
b3VudCwgcmVmZXJlbmNlRGF0YSkKLXsKLSAgICBpZiAoY291bnQgPT09IHVuZGVmaW5lZCkKLSAg
ICAgICAgY291bnQgPSAwOwotICAgIGVsc2UgaWYgKGNvdW50ID49IDIwKQotICAgICAgICByZXR1
cm4gUHJvbWlzZS5yZWplY3QoImNoZWNrVmlkZW9Jc1VwZGF0ZWQgdGltZWQgb3V0IDoiICsgc2hv
dWxkQmVVcGRhdGVkICsgIiAiICsgY291bnQpOwotCi0gICAgaWYgKHJlZmVyZW5jZURhdGEgPT09
IHVuZGVmaW5lZCkKLSAgICAgICAgcmVmZXJlbmNlRGF0YSA9IGdldENpcmNsZUltYWdlRGF0YSgp
OwotCi0gICAgYXdhaXQgd2FpdEZvcigyMDApOwotICAgIGNvbnN0IG5ld0RhdGEgPSBnZXRDaXJj
bGVJbWFnZURhdGEoKTsKLQotICAgIGlmIChzaG91bGRCZVVwZGF0ZWQgPT09IChKU09OLnN0cmlu
Z2lmeShyZWZlcmVuY2VEYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkobmV3RGF0YSkpKQotICAgICAg
ICByZXR1cm47Ci0KLSAgICBhd2FpdCBjaGVja1ZpZGVvSXNVcGRhdGVkKHNob3VsZEJlVXBkYXRl
ZCwgKytjb3VudCwgbmV3RGF0YSk7Ci19Ci0KLXByb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4g
ewotICAgIGNvbnN0IHNlbmRlciA9IHBjMS5nZXRTZW5kZXJzKClbMF07Ci0gICAgbGV0IHAgPSBz
ZW5kZXIuZ2V0UGFyYW1ldGVycygpOwotICAgIHAuZW5jb2RpbmdzWzBdLmFjdGl2ZSA9IGZhbHNl
OwotICAgIGF3YWl0IHNlbmRlci5zZXRQYXJhbWV0ZXJzKHApOwotCi0gICAgYXNzZXJ0X2ZhbHNl
KHNlbmRlci5nZXRQYXJhbWV0ZXJzKCkuZW5jb2RpbmdzWzBdLmFjdGl2ZSwgImVuY29kaW5nc1sw
XS5hY3RpdmUgc2hvdWxkIGJlIGZhbHNlIik7Ci0KLSAgICBhd2FpdCBjaGVja1ZpZGVvSXNVcGRh
dGVkKGZhbHNlKTsKLX0sICJDYWxsIHNldFBhcmFtZXRlcnMgdG8gZGlzYWJsZSBzZW5kaW5nIGEg
Z2l2ZW4gZW5jb2RpbmciKTsKLQotcHJvbWlzZV90ZXN0KGFzeW5jICh0ZXN0KSA9PiB7Ci0gICAg
Y29uc3Qgc2VuZGVyID0gcGMxLmdldFNlbmRlcnMoKVswXTsKLSAgICBsZXQgcCA9IHNlbmRlci5n
ZXRQYXJhbWV0ZXJzKCk7Ci0gICAgcC5lbmNvZGluZ3NbMF0uYWN0aXZlID0gdHJ1ZTsKLSAgICBh
d2FpdCBzZW5kZXIuc2V0UGFyYW1ldGVycyhwKTsKLQotICAgIGFzc2VydF90cnVlKHNlbmRlci5n
ZXRQYXJhbWV0ZXJzKCkuZW5jb2RpbmdzWzBdLmFjdGl2ZSwgImVuY29kaW5nc1swXS5hY3RpdmUg
c2hvdWxkIGJlIHRydWUiKTsKLQotICAgIGF3YWl0IGNoZWNrVmlkZW9Jc1VwZGF0ZWQodHJ1ZSk7
Ci19LCAiQ2FsbCBzZXRQYXJhbWV0ZXJzIHRvIHJlZW5hYmxlIHNlbmRpbmcgYSBnaXZlbiBlbmNv
ZGluZyIpOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>