<?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>218192</bug_id>
          
          <creation_ts>2020-10-26 09:56:03 -0700</creation_ts>
          <short_desc>Stop sending origins from WebProcess to UIProcess for getUserMedia requests</short_desc>
          <delta_ts>2020-11-03 00:58:09 -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>REOPENED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218458</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>218483</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>annulen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1701487</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-26 09:56:03 -0700</bug_when>
    <thetext>Stop sending origins from WebProcess to UIProcess for getUserMedia requests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701536</commentid>
    <comment_count>1</comment_count>
      <attachid>412336</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-26 10:59:04 -0700</bug_when>
    <thetext>Created attachment 412336
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701538</commentid>
    <comment_count>2</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-26 11:05:02 -0700</bug_when>
    <thetext>&lt;rdar://problem/66500483&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701541</commentid>
    <comment_count>3</comment_count>
      <attachid>412337</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-26 11:07:15 -0700</bug_when>
    <thetext>Created attachment 412337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1701545</commentid>
    <comment_count>4</comment_count>
      <attachid>412340</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-26 11:19:21 -0700</bug_when>
    <thetext>Created attachment 412340
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703461</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-02 00:35:43 -0800</bug_when>
    <thetext>Committed r269244: &lt;https://trac.webkit.org/changeset/269244&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412340.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703852</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-11-03 00:58:09 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 218483</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412336</attachid>
            <date>2020-10-26 10:59:04 -0700</date>
            <delta_ts>2020-10-26 11:14:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218192-20201026185901.patch</filename>
            <type>text/plain</type>
            <size>44740</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGMyN2FjN2VlMzRmNzU2
MmY2MjI2NGE4ODc1Zjk1ZjEwYmY5OTljNy4uYzM3MTQ0Y2I3YjhiYTJkYjJhZTUxMzkyMmFjZjVi
NGFlYzg0Y2Q2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTEwLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTdG9wIHNlbmRpbmcgb3Jp
Z2lucyBmcm9tIFdlYlByb2Nlc3MgdG8gVUlQcm9jZXNzIGZvciBnZXRVc2VyTWVkaWEgcmVxdWVz
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODE5
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNo
YW5nZSBvZiBiZWhhdmlvciwgbW92ZSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciBpbiBpdHMg
b3duIGhlYWRlci4KKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAg
ICAqIEhlYWRlcnMuY21ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVk
aWFSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6OnVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlVz
ZXJNZWRpYVJlcXVlc3Q6OnRvcExldmVsRG9jdW1lbnRPcmlnaW4gY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaDoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMjYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBhIFdlYWtI
YXNoU2V0IGZvciBEb2N1bWVudDo6bV9jYXB0aW9uUHJlZmVyZW5jZXNDaGFuZ2VkRWxlbWVudHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggY2E0NmM2YmFlODkzMjMzOGYyYWRlMjllZjBhZTkzMWFlZTdjNTlmNy4uYjYz
NWE3NmRkY2I3YWJmNjJlZDk5Mjg2MzU3NTE2YTcxZGI1ZGJiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSw0NyBAQAorMjAyMC0xMC0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisK
KyAgICAgICAgU3RvcCBzZW5kaW5nIG9yaWdpbnMgZnJvbSBXZWJQcm9jZXNzIHRvIFVJUHJvY2Vz
cyBmb3IgZ2V0VXNlck1lZGlhIHJlcXVlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgxOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBQYXNzIGRpcmVjdGx5IGEgVXNlck1lZGlhUmVxdWVzdElkZW50
aWZpZXIgdGhyb3VnaCBJUEMuCisgICAgICAgIFN0b3AgcGFzc2luZyBvcmlnaW5zIGZyb20gSVBD
IGFuZCBpbnN0ZWFkIGNvbXB1dGUgdGhlbSBmcm9tIFVJUHJvY2VzcyBzaWRlLgorCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICogVUlQcm9jZXNzL1VzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmRlbnlSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6Omdy
YW50UmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlclByb3h5OjpmaW5pc2hHcmFudGluZ1JlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpV
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QpOgor
ICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6
cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25JbnZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJL
aXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1l
ZGlhUGVybWlzc2lvblZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpnZXRVc2VyTWVkaWFQZXJtaXNzaW9uSW5mbyk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFBy
b3h5OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dFByb3h5Ojp1c2VyTWVkaWFJRCBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cmVxdWVzdFVzZXJNZWRp
YVBlcm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZW51
bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyOjpzZW5kVXNlck1lZGlhUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNl
ck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyOjplbnVtZXJhdGVNZWRpYURldmljZXMpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluOgorCiAyMDIwLTEwLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgVlA5IFByb2ZpbGUgMiAoMTAtYml0
IGNvbG9yKSBpbiBXZWJSVEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IDk5MTgzYTcyM2VhNGY4NDk1
ZGZiZDY0YzcyMDI3MzFmYWU2MTQ2M2IuLjc1ZjU1M2YxNDFiY2ZjZWYzOWNlNGViMDFmZWY1Mjg0
ZWE2YzNhZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtMTAzLDYgKzEwMyw3IEBAIHNldChXZWJD
b3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1Vz
ZXJNZWRpYUNsaWVudC5oCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFDb250cm9s
bGVyLmgKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorICAgIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaAogCiAgICAgTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCiAgICAgTW9kdWxlcy9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNsaWVudC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAppbmRleCBkZjJhNWU0NGVjMTI3
OWMwYTIzM2JjMWRhYzQ3MzU5ZDUzNWUxODM2Li44NjBlN2UwOGQyMDNiMTYwMDBlMzk5M2I1ODMw
N2JhNDFiNzg3YzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKQEAgLTczLDIwICs3Myw2IEBAIFVzZXJNZWRp
YVJlcXVlc3Q6On5Vc2VyTWVkaWFSZXF1ZXN0KCkKICAgICAgICAgbV9hbGxvd0NvbXBsZXRpb25I
YW5kbGVyKCk7CiB9CiAKLVNlY3VyaXR5T3JpZ2luKiBVc2VyTWVkaWFSZXF1ZXN0Ojp1c2VyTWVk
aWFEb2N1bWVudE9yaWdpbigpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci19Ci0KLVNlY3VyaXR5T3JpZ2luKiBVc2Vy
TWVkaWFSZXF1ZXN0Ojp0b3BMZXZlbERvY3VtZW50T3JpZ2luKCkgY29uc3QKLXsKLSAgICBpZiAo
IW1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAg
cmV0dXJuICZtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnRvcE9yaWdpbigpOwotfQotCiBzdGF0
aWMgYm9vbCBoYXNJbnZhbGlkR2V0RGlzcGxheU1lZGlhQ29uc3RyYWludChjb25zdCBNZWRpYUNv
bnN0cmFpbnRzJiBjb25zdHJhaW50cykKIHsKICAgICAvLyBodHRwczovL3czYy5naXRodWIuaW8v
bWVkaWFjYXB0dXJlLXNjcmVlbi1zaGFyZS8jbmF2aWdhdG9yLWFkZGl0aW9ucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApp
bmRleCBkOTg3YWQzMjQ1ZDZiZjJiOWNmNDFlZjQ1YzJiN2MwMDAzMDFiYWQzLi5jM2E5MDMyNDU4
OTkyMTJkZTNjYzUzMDFjYTYyZWRiYzk0M2U3MWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApAQCAtNDAsOCArNDAs
OCBAQAogI2luY2x1ZGUgIk1lZGlhQ29uc3RyYWludHMuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVh
bVByaXZhdGUuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbVJlcXVlc3QuaCIKKyNpbmNsdWRlICJV
c2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFu
ZGxlci5oPgotI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3Rm
L1VuaXF1ZVJlZi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MSw5ICs1MSw2IEBAIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBJRExUeXBlPiBjbGFzcyBE
T01Qcm9taXNlRGVmZXJyZWQ7CiAKLWVudW0gVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXJUeXBl
IHsgfTsKLXVzaW5nIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmll
cjxVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllclR5cGU+OwotCiBjbGFzcyBVc2VyTWVkaWFSZXF1
ZXN0IDogcHVibGljIFJlZkNvdW50ZWQ8VXNlck1lZGlhUmVxdWVzdD4sIHB1YmxpYyBBY3RpdmVE
T01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUmVxdWVzdD4gY3Jl
YXRlKERvY3VtZW50JiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExJbnRlcmZhY2U8TWVkaWFTdHJlYW0+PiYmKTsKQEAgLTc0LDggKzcxLDYgQEAgcHVibGljOgog
ICAgIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGF1ZGlvQ29uc3RyYWludHMoKSBjb25zdCB7IHJl
dHVybiBtX3JlcXVlc3QuYXVkaW9Db25zdHJhaW50czsgfQogICAgIGNvbnN0IE1lZGlhQ29uc3Ry
YWludHMmIHZpZGVvQ29uc3RyYWludHMoKSBjb25zdCB7IHJldHVybiBtX3JlcXVlc3QudmlkZW9D
b25zdHJhaW50czsgfQogCi0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlPcmlnaW4qIHVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luKCkgY29uc3Q7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlP
cmlnaW4qIHRvcExldmVsRG9jdW1lbnRPcmlnaW4oKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9S
VCBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKIAogICAgIGNvbnN0IE1lZGlhU3RyZWFtUmVx
dWVzdCYgcmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVxdWVzdDsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRp
Zmllci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1
ZXN0SWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4OGE1NzUxMDNjNjU4MDQ3NTM3YzAzMzRjNjQ3
YzhiMGIwYjY2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICog
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisg
KiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlm
aWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworZW51bSBVc2VyTWVkaWFSZXF1ZXN0SWRl
bnRpZmllclR5cGUgeyB9OwordXNpbmcgVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgPSBPYmpl
Y3RJZGVudGlmaWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBiMzAzMzQyZDQ1MTE4ZjA5OGE0YTIzM2E0N2E5Y2VmOTJjZjlh
NTJkLi5hZjcyYjNmNWZiYWU1ZDE4MjJjMmQ1ZWNhZWQ4YjVmMjc5ZDJkZjNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDM1
LDYgKzEwMzUsNyBAQAogCQk0MTJERTRCODIxOTI4NUMwMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJp
bGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTJERTRCNjIxOTI4NUJGMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggKi87IH07CiAJ
CTQxMkRFRjFEMjNBOTE4NjYwMEQ4NDBGNiAvKiBNb2NrQXVkaW9TaGFyZWRVbml0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzQ0RUNFQjFFMEM0QUU1
MDAwRDA5NDQgLyogTW9ja0F1ZGlvU2hhcmVkVW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQxMkRFRjFGMjNBOTE4QTMwMEQ4NDBGNiAvKiBC
YXNlQXVkaW9TaGFyZWRVbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTc3RjUxRTIzODI1NDVFMDBDMDQ0ODYgLyogQmFzZUF1ZGlvU2hhcmVkVW5p
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQx
MkZGOTNEMjU0NzIwODMwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEyRkY5M0IyNTQ3
MDk3MDAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDEzM0NCOEIyMEY4MEU5OTAw
RTg5QjExIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VDb2NvYS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTMzQ0I4OTIwRjgwRTg2MDBFODlCMTEg
LyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29hLmNwcCAqLzsgfTsKIAkJNDEzNkM1N0EyMzk4
RTVCRTAwMjQ5N0QzIC8qIEludGVybmFsc01hcExpa2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzNkM1NzgyMzk4RTVCNTAwMjQ5N0QzIC8qIElu
dGVybmFsc01hcExpa2UuY3BwICovOyB9OwogCQk0MTM2QzU3QzIzOThFQ0NGMDAyNDk3RDMgLyog
SlNJbnRlcm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJENkYzRTkyMUMxRjg1NTUwMDYxREJENiAvKiBKU0ludGVybmFsc01hcExp
a2UuY3BwICovOyB9OwpAQCAtNzUxMiw2ICs3NTEzLDcgQEAKIAkJNDEyOUM5ODcxRjU4NjYyRDAw
OUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZWFkYWJsZVN0cmVhbVNpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTJCQTVGRTIxOEM2NTE4MDAzNjU0NzQgLyogUlRDUE11eFBvbGljeS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQTXV4UG9saWN5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMkRFNEI2MjE5Mjg1QkYwMDc1RjNBNyAvKiBSVENSdHBD
YXBhYmlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwQ2Fw
YWJpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMkZGOTNCMjU0NzA5
NzAwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MTMwMTVENTFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hS
ZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaFJl
c3BvbnNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDUxQzdCNTcw
NDAwMDkxQzZGIC8qIEZldGNoQm9keVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGZXRjaEJvZHlTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTMwMTVENjFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hSZXNwb25zZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaFJlc3BvbnNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNzAzOSw2ICsxNzA0MSw3IEBACiAJCQkJMDcyMjFCOEYxN0NF
QzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuaCAqLywKIAkJCQkwNzIyMUI5MDE3
Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhUmVxdWVzdC5jcHAgKi8sCiAJCQkJMDcyMjFCOTEx
N0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYVJlcXVlc3QuaCAqLywKKwkJCQk0MTJGRjkzQjI1
NDcwOTcwMDAxREYwMzYgLyogVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaCAqLywKIAkJCSk7
CiAJCQlwYXRoID0gbWVkaWFzdHJlYW07CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAt
MzQ2ODQsNiArMzQ2ODcsNyBAQAogCQkJCTA3OEUwOTJFMTdEMTREMUMwMDQyMEFBMSAvKiBVc2Vy
TWVkaWFDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTJGMTdEMTREMUMwMDQyMEFB
MSAvKiBVc2VyTWVkaWFDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzhFMDkzMDE3
RDE0RDFDMDA0MjBBQTEgLyogVXNlck1lZGlhUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDEyRkY5M0QyNTQ3MjA4MzAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk3QzNCNzk3MjE5MDg3NTdCMDBCNDdBMkQgLyogVXNlck1lc3Nh
Z2VIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3Q0U2ODM0NTE5MjE0M0E4MDBGNEQ5Mjgg
LyogVXNlck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0NF
NjgzNDcxOTIxODIxNTAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3JUeXBl
cy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5w
eQppbmRleCAwNTg1NzdlNWY3ZGViNmQyYmRmMjViMWM3NTUzNTZmOTZhZGY4ODg5Li45NmY4OWFk
OGM2YzYyMzhiZGY4Mzk2MTQ4YTgzODAxMmVjOTI0ODFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTIzMyw2ICsyMzMsNyBAQCBkZWYgdHlwZXNfdGhhdF9j
YW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViQ29yZTo6U2hhcmVkU3Ry
aW5nSGFzaCcsCiAgICAgICAgICdXZWJDb3JlOjpTbGVlcERpc2FibGVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyJywKKyAgICAgICAg
J1dlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6
OldlYlNvY2tldElkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpBY3Rpdml0eVN0YXRlQ2hh
bmdlSUQnLAogICAgICAgICAnV2ViS2l0OjpBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlcklk
ZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwCmluZGV4IDc2MzQz
OGE1ZjIxYzU4YTg1NjNlMTY5MzI2ZDg4NzI5ZDkyNzcyNzcuLjFjOTQ5ZGMwYjkwNWJkMDlkNDU2
ZmNhMTc1OTJiYzE2YjlmNDU3MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5j
cHAKQEAgLTIwNCw3ICsyMDQsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5OjpkZW55UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdQogICAgIGlmICgh
bV9wYWdlLmhhc1J1bm5pbmdQcm9jZXNzKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFMV0FZ
U19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgpLCAiLCByZWFzb246ICIs
IHJlYXNvbik7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCByZXF1ZXN0LnVzZXJNZWRp
YUlEKCkudG9VSW50NjQoKSwgIiwgcmVhc29uOiAiLCByZWFzb24pOwogCiAgICAgaWYgKHJlYXNv
biA9PSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5p
YWxSZWFzb246OlBlcm1pc3Npb25EZW5pZWQpCiAgICAgICAgIG1fZGVuaWVkUmVxdWVzdHMuYXBw
ZW5kKERlbmllZFJlcXVlc3QgeyByZXF1ZXN0Lm1haW5GcmFtZUlEKCksIHJlcXVlc3QudXNlck1l
ZGlhRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpLCByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1
cml0eU9yaWdpbigpLCByZXF1ZXN0LnJlcXVpcmVzQXVkaW9DYXB0dXJlKCksIHJlcXVlc3QucmVx
dWlyZXNWaWRlb0NhcHR1cmUoKSwgcmVxdWVzdC5yZXF1aXJlc0Rpc3BsYXlDYXB0dXJlKCkgfSk7
CkBAIC0yMjUsNyArMjI1LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFn
ZXJQcm94eTo6Z3JhbnRSZXF1ZXN0KFVzZXJNZWRpYVBlcm1pc3Npb25SZXEKICAgICAgICAgcmV0
dXJuOwogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSAgICBBTFdBWVNfTE9HKExPR0lERU5U
SUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKSwgIiwgdmlkZW86ICIsIHJlcXVlc3QudmlkZW9E
ZXZpY2UoKS5sYWJlbCgpLCAiLCBhdWRpbzogIiwgcmVxdWVzdC5hdWRpb0RldmljZSgpLmxhYmVs
KCkpOworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCksICIsIHZpZGVvOiAiLCByZXF1ZXN0LnZpZGVvRGV2aWNlKCkubGFiZWwoKSwg
IiwgYXVkaW86ICIsIHJlcXVlc3QuYXVkaW9EZXZpY2UoKS5sYWJlbCgpKTsKIAogICAgIGF1dG8m
IHVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlPcmlnaW4gPSByZXF1ZXN0LnVzZXJNZWRpYURvY3Vt
ZW50U2VjdXJpdHlPcmlnaW4oKTsKICAgICBhdXRvJiB0b3BMZXZlbERvY3VtZW50U2VjdXJpdHlP
cmlnaW4gPSByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpOwpAQCAtMjQy
LDcgKzI0Miw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6
OmdyYW50UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmZpbmlz
aEdyYW50aW5nUmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5JiByZXF1ZXN0
KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
KTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKS50
b1VJbnQ2NCgpKTsKICAgICBpZiAoIVVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0b24o
KS53aWxsQ3JlYXRlTWVkaWFTdHJlYW0oKnRoaXMsIHJlcXVlc3QuaGFzQXVkaW9EZXZpY2UoKSwg
cmVxdWVzdC5oYXNWaWRlb0RldmljZSgpKSkgewogICAgICAgICBkZW55UmVxdWVzdChyZXF1ZXN0
LCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxS
ZWFzb246Ok90aGVyRmFpbHVyZSwgIlVuYWJsZSB0byBleHRlbmQgc2FuZGJveC4iKTsKICAgICAg
ICAgcmV0dXJuOwpAQCAtMzkyLDEzICszOTIsMjIgQEAgVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHk6OlJlcXVlc3RBY3Rpb24gVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QK
IH0KICNlbmRpZgogCi12b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlE
LCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRp
YURvY3VtZW50T3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3QpCit2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZv
ckZyYW1lKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3Qp
CiB7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoIW1fcGFnZS5oYXNSdW5uaW5n
UHJvY2VzcygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJ
RVIsIHVzZXJNZWRpYUlEKTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHVzZXJNZWRp
YUlELnRvVUludDY0KCkpOworCisgICAgYXV0byogd2ViRnJhbWUgPSBtX3BhZ2UucHJvY2Vzcygp
LndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghd2ViRnJhbWUpIHsKKyAgICAgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1c2VyTWVk
aWFJRCwgdG9XZWJDb3JlKFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHk6OlVzZXJNZWRp
YUFjY2Vzc0RlbmlhbFJlYXNvbjo6UGVybWlzc2lvbkRlbmllZCksIHsgfSkpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgYXV0byB0b3BMZXZlbERvY3VtZW50T3JpZ2luID0gU2VjdXJp
dHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcobV9wYWdlLnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVV
UkwoKSk7CisgICAgYXV0byB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2lu
OjpjcmVhdGVGcm9tU3RyaW5nKHdlYkZyYW1lLT51cmwoKS5zdHJpbmcoKSk7CiAKICAgICBhdXRv
IHJlcXVlc3QgPSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpjcmVhdGUoKnRoaXMs
IHVzZXJNZWRpYUlELCBtX3BhZ2UubWFpbkZyYW1lKCktPmZyYW1lSUQoKSwgZnJhbWVJRCwgV1RG
TW92ZSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiksIFdURk1vdmUodG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiksIHsgfSwgeyB9LCBXVEZNb3ZlKHVzZXJSZXF1ZXN0KSk7CiAgICAgaWYgKG1fY3VycmVu
dFVzZXJNZWRpYVJlcXVlc3QpIHsKQEAgLTQ2MSw3ICs0NzAsNyBAQCB2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpzdGFydFByb2Nlc3NpbmdVc2VyTWVkaWFQZXJt
aXNzaW9uUgogCiB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpw
cm9jZXNzVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QoKQogewotICAgIEFMV0FZU19MT0coTE9H
SURFTlRJRklFUiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwg
cGVyc2lzdGVudCBhY2Nlc3M6ICIsIG1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPmhhc1BlcnNp
c3RlbnRBY2Nlc3MoKSk7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRV
c2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLnRvVUludDY0KCksICIsIHBlcnNpc3RlbnQg
YWNjZXNzOiAiLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT5oYXNQZXJzaXN0ZW50QWNjZXNz
KCkpOwogCiAgICAgYXV0byYgdXNlck1lZGlhRG9jdW1lbnRTZWN1cml0eU9yaWdpbiA9IG1fY3Vy
cmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlPcmlnaW4oKTsK
ICAgICBhdXRvJiB0b3BMZXZlbERvY3VtZW50U2VjdXJpdHlPcmlnaW4gPSBtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT50b3BMZXZlbERvY3VtZW50U2VjdXJpdHlPcmlnaW4oKTsKQEAgLTQ5OSw3
ICs1MDgsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpw
cm9jZXNzVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QoKQogI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCiB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNz
VXNlck1lZGlhUGVybWlzc2lvbkludmFsaWRSZXF1ZXN0KGNvbnN0IFN0cmluZyYgaW52YWxpZENv
bnN0cmFpbnQpCiB7Ci0gICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpKTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJ
RVIsIG1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJNZWRpYUlEKCkudG9VSW50NjQoKSk7
CiAgICAgYm9vbCBmaWx0ZXJDb25zdHJhaW50ID0gIW1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3Qt
Pmhhc1BlcnNpc3RlbnRBY2Nlc3MoKSAmJiAhd2FzR3JhbnRlZFZpZGVvT3JBdWRpb0FjY2Vzcyht
X2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT5mcmFtZUlEKCksIG1fY3VycmVudFVzZXJNZWRpYVJl
cXVlc3QtPnVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlPcmlnaW4oKSwgbV9jdXJyZW50VXNlck1l
ZGlhUmVxdWVzdC0+dG9wTGV2ZWxEb2N1bWVudFNlY3VyaXR5T3JpZ2luKCkpOwogCiAgICAgZGVu
eVJlcXVlc3QoKm1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QsIFVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0UHJveHk6OlVzZXJNZWRpYUFjY2Vzc0RlbmlhbFJlYXNvbjo6SW52YWxpZENvbnN0cmFp
bnQsIGZpbHRlckNvbnN0cmFpbnQgPyBTdHJpbmcgeyB9IDogaW52YWxpZENvbnN0cmFpbnQpOwpA
QCAtNTA3LDcgKzUxNiw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2Vy
UHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJtaXNzaW9uSW52YWxpZFJlCiAKIHZvaWQgVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJtaXNz
aW9uVmFsaWRSZXF1ZXN0KFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmIGF1ZGlvRGV2aWNlcywgVmVj
dG9yPENhcHR1cmVEZXZpY2U+JiYgdmlkZW9EZXZpY2VzLCBTdHJpbmcmJiBkZXZpY2VJZGVudGlm
aWVySGFzaFNhbHQpCiB7Ci0gICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRV
c2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLCAiLCB2aWRlbzogIiwgdmlkZW9EZXZpY2Vz
LnNpemUoKSwgIiBhdWRpbzogIiwgYXVkaW9EZXZpY2VzLnNpemUoKSk7CisgICAgQUxXQVlTX0xP
RyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCksICIsIHZpZGVvOiAiLCB2aWRlb0RldmljZXMuc2l6ZSgpLCAiIGF1ZGlvOiAi
LCBhdWRpb0RldmljZXMuc2l6ZSgpKTsKICAgICBpZiAodmlkZW9EZXZpY2VzLmlzRW1wdHkoKSAm
JiBhdWRpb0RldmljZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgIGRlbnlSZXF1ZXN0KCptX2N1cnJl
bnRVc2VyTWVkaWFSZXF1ZXN0LCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2Vy
TWVkaWFBY2Nlc3NEZW5pYWxSZWFzb246Ok5vQ29uc3RyYWludHMsIGVtcHR5U3RyaW5nKCkpOwog
ICAgICAgICByZXR1cm47CkBAIC01MTgsNyArNTI3LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25WYWxpZFJl
cXUKICAgICBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT5zZXRFbGlnaWJsZUF1ZGlvRGV2aWNl
VUlEcyhXVEZNb3ZlKGF1ZGlvRGV2aWNlcykpOwogCiAgICAgYXV0byBhY3Rpb24gPSBnZXRSZXF1
ZXN0QWN0aW9uKCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0KTsKLSAgICBBTFdBWVNfTE9HKExP
R0lERU5USUZJRVIsIG1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJNZWRpYUlEKCksICIs
IGFjdGlvbjogIiwgYWN0aW9uKTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIG1fY3Vy
cmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJNZWRpYUlEKCkudG9VSW50NjQoKSwgIiwgYWN0aW9u
OiAiLCBhY3Rpb24pOwogCiAgICAgaWYgKGFjdGlvbiA9PSBSZXF1ZXN0QWN0aW9uOjpEZW55KSB7
CiAgICAgICAgIGRlbnlSZXF1ZXN0KCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LCBVc2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxSZWFzb246OlBl
cm1pc3Npb25EZW5pZWQsIGVtcHR5U3RyaW5nKCkpOwpAQCAtNTM4LDcgKzU0Nyw3IEBAIHZvaWQg
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQ
ZXJtaXNzaW9uVmFsaWRSZXF1CiAKICAgICBpZiAobV9wYWdlLmlzQ29udHJvbGxlZEJ5QXV0b21h
dGlvbigpKSB7CiAgICAgICAgIGlmIChXZWJBdXRvbWF0aW9uU2Vzc2lvbiogYXV0b21hdGlvblNl
c3Npb24gPSBtX3BhZ2UucHJvY2VzcygpLnByb2Nlc3NQb29sKCkuYXV0b21hdGlvblNlc3Npb24o
KSkgewotICAgICAgICAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLCAiLCBwYWdlIGNvbnRyb2xsZWQgYnkgYXV0b21h
dGlvbiIpOworICAgICAgICAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRV
c2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLnRvVUludDY0KCksICIsIHBhZ2UgY29udHJv
bGxlZCBieSBhdXRvbWF0aW9uIik7CiAgICAgICAgICAgICBpZiAoYXV0b21hdGlvblNlc3Npb24t
PnNob3VsZEFsbG93R2V0VXNlck1lZGlhRm9yUGFnZShtX3BhZ2UpKQogICAgICAgICAgICAgICAg
IGdyYW50UmVxdWVzdCgqbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdCk7CiAgICAgICAgICAgICBl
bHNlCkBAIC01NDgsNyArNTU3LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25WYWxpZFJlcXUKICAgICB9CiAK
ICAgICBpZiAobV9wYWdlLnByZWZlcmVuY2VzKCkubW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZCgp
ICYmICFtX3BhZ2UucHJlZmVyZW5jZXMoKS5tb2NrQ2FwdHVyZURldmljZXNQcm9tcHRFbmFibGVk
KCkpIHsKLSAgICAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVk
aWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLCAiLCBtb2NrIGRldmljZXMgZG9uJ3QgcmVxdWlyZSBw
cm9tcHQiKTsKKyAgICAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLnRvVUludDY0KCksICIsIG1vY2sgZGV2aWNlcyBk
b24ndCByZXF1aXJlIHByb21wdCIpOwogICAgICAgICBncmFudFJlcXVlc3QoKm1fY3VycmVudFVz
ZXJNZWRpYVJlcXVlc3QpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNjc4LDEyICs2ODcs
MjAgQEAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5Ojpjb21wdXRlRmlsdGVyZWREZXYKIH0KICNlbmRpZgogCi12b2lkIFVzZXJNZWRp
YVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JG
cmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVu
dE9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8Q2FwdHVyZURldmlj
ZT4mLCBjb25zdCBTdHJpbmcmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZy
YW1lKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogewogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgQUxXQVlTX0xPRyhMT0dJREVO
VElGSUVSKTsKIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbdGhpcywgZnJhbWVJRCwgdXNlck1lZGlh
RG9jdW1lbnRPcmlnaW4sIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIGNvbXBsZXRpb25IYW5kbGVy
ID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKFBlcm1pc3Npb25JbmZvIHBlcm1pc3Npb25J
bmZvKSBtdXRhYmxlIHsKKyAgICBhdXRvKiB3ZWJGcmFtZSA9IG1fcGFnZS5wcm9jZXNzKCkud2Vi
RnJhbWUoZnJhbWVJRCk7CisgICAgaWYgKCF3ZWJGcmFtZSkgeworICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcih7IH0sIHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgYXV0byB0b3BM
ZXZlbERvY3VtZW50T3JpZ2luID0gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcobV9w
YWdlLnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVVUkwoKSk7CisgICAgYXV0byB1c2VyTWVkaWFEb2N1
bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGVGcm9tU3RyaW5nKHdlYkZyYW1lLT51
cmwoKS5zdHJpbmcoKSk7CisKKyAgICBhdXRvIGNhbGxiYWNrID0gW3RoaXMsIGZyYW1lSUQsIHRv
cExldmVsRG9jdW1lbnRPcmlnaW4sIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShQZXJtaXNzaW9uSW5mbyBwZXJt
aXNzaW9uSW5mbykgbXV0YWJsZSB7CiAgICAgICAgIGF1dG8gY2FsbENvbXBsZXRpb25IYW5kbGVy
ID0gbWFrZVNjb3BlRXhpdChbJmNvbXBsZXRpb25IYW5kbGVyXSB7CiAgICAgICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0sIHsgfSk7CiAgICAgICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHku
aCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5LmgKaW5kZXggOGZlYjQ1ODc1MWEyNjI4N2Q0ZTFiYjJhYTkzODUyZjI2ZDgzMzM4
Zi4uYzhkZWM1NmE0MmFkYjMwNzNhYjk2MTYzZjQ3YzU4NzUwMTE2MTFjZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2Vy
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXJQcm94eS5oCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFQcm9k
dWNlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBs
ZXRpb25IYW5kbGVyLmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+CiAjaW5jbHVkZSA8d3RmL0hh
c2hNYXAuaD4KQEAgLTYzLDcgKzY0LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBpbnZhbGlkYXRl
UGVuZGluZ1JlcXVlc3RzKCk7CiAKLSAgICB2b2lkIHJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9u
Rm9yRnJhbWUodWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwg
UmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmICB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwg
UmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFdl
YkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmKTsKKyAgICB2b2lkIHJlcXVlc3RVc2VyTWVkaWFQ
ZXJtaXNzaW9uRm9yRnJhbWUoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIsIFdl
YkNvcmU6OkZyYW1lSWRlbnRpZmllciwgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1ZXN0JiYpOwog
CiAgICAgdm9pZCByZXNldEFjY2VzcyhPcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+
IG1haW5GcmFtZUlEID0geyB9KTsKICAgICB2b2lkIHZpZXdJc0JlY29taW5nVmlzaWJsZSgpOwpA
QCAtNzEsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBncmFudFJlcXVlc3QoVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RQcm94eSYpOwogICAgIHZvaWQgZGVueVJlcXVlc3QoVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RQcm94eSYsIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHk6
OlVzZXJNZWRpYUFjY2Vzc0RlbmlhbFJlYXNvbiwgY29uc3QgU3RyaW5nJiBpbnZhbGlkQ29uc3Ry
YWludCA9IHsgfSk7CiAKLSAgICB2b2lkIGVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKFdl
YkNvcmU6OkZyYW1lSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVz
ZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9w
TGV2ZWxEb2N1bWVudE9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6Q2FwdHVyZURldmljZT4mLCBjb25zdCBTdHJpbmcmKT4mJik7CisgICAgdm9pZCBl
bnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+
JiwgY29uc3QgU3RyaW5nJik+JiYpOwogCiAgICAgdm9pZCBzdG9wQ2FwdHVyZSgpOwogICAgIHZv
aWQgc2NoZWR1bGVOZXh0UmVqZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwCmluZGV4IGRk
YjBkNDcwZWRmYTFhMDU0NmViMGZkYTgyMzcyMzA4MjcwZTU5MDYuLmExYzgyZjdiYWMzNGU2MjYx
ZWUxZTk2NmY5NzE1OTg3Y2YyY2Y0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwCkBAIC0zMCw3
ICszMCw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
Ci1Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiBtYW5hZ2Vy
LCB1aW50NjRfdCB1c2VyTWVkaWFJRCwgRnJhbWVJZGVudGlmaWVyIG1haW5GcmFtZUlELCBGcmFt
ZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2
ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9E
ZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURldmljZT4mJiB2aWRlb0RldmljZXMsIFdl
YkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmIHJlcXVlc3QpCitVc2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdFByb3h5OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5KFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiBtYW5hZ2VyLCBVc2VyTWVkaWFSZXF1ZXN0SWRl
bnRpZmllciB1c2VyTWVkaWFJRCwgRnJhbWVJZGVudGlmaWVyIG1haW5GcmFtZUlELCBGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRCwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRp
YURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxE
b2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZp
Y2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURldmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNv
cmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmIHJlcXVlc3QpCiAgICAgOiBtX21hbmFnZXIoJm1hbmFn
ZXIpCiAgICAgLCBtX3VzZXJNZWRpYUlEKHVzZXJNZWRpYUlEKQogICAgICwgbV9tYWluRnJhbWVJ
RChtYWluRnJhbWVJRCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaAppbmRleCA2NTI5NmYzYTBlOTM4NGJhMzZm
ZGQ1OWQxZGYzMDM3ZjFhNmY1ZGRjLi44OTI3YTY2MWUyYTYxM2NjZWJlMmE1NmQ0YjlkMTU2ZjIy
MmZjOTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdFByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5oCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSA8
V2ViQ29yZS9DYXB0dXJlRGV2aWNlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZUlkZW50aWZp
ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU3RyZWFtUmVxdWVzdC5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvVmVj
dG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTM2LDcgKzM3LDcg
QEAgY2xhc3MgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk7CiAKIGNsYXNz
IFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBs
PEFQSTo6T2JqZWN0OjpUeXBlOjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdD4gewogcHVibGlj
OgotICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eT4gY3JlYXRl
KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiBtYW5hZ2VyLCB1aW50NjRf
dCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIG1haW5GcmFtZUlELCBXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
PiYmIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+
JiYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+
JiYgYXVkaW9EZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURldmljZT4mJiB2aWRlb0Rl
dmljZXMsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmIHJlcXVlc3QpCisgICAgc3RhdGlj
IFJlZjxVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5PiBjcmVhdGUoVXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkmIG1hbmFnZXIsIFdlYkNvcmU6OlVzZXJNZWRpYVJl
cXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgbWFp
bkZyYW1lSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBSZWY8V2ViQ29yZTo6
U2VjdXJpdHlPcmlnaW4+JiYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW4sIFJlZjxXZWJDb3JlOjpT
ZWN1cml0eU9yaWdpbj4mJiB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCBWZWN0b3I8V2ViQ29yZTo6
Q2FwdHVyZURldmljZT4mJiBhdWRpb0RldmljZXMsIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2
aWNlPiYmIHZpZGVvRGV2aWNlcywgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1ZXN0JiYgcmVxdWVz
dCkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFVzZXJNZWRpYVBlcm1pc3Np
b25SZXF1ZXN0UHJveHkobWFuYWdlciwgdXNlck1lZGlhSUQsIG1haW5GcmFtZUlELCBmcmFtZUlE
LCBXVEZNb3ZlKHVzZXJNZWRpYURvY3VtZW50T3JpZ2luKSwgV1RGTW92ZSh0b3BMZXZlbERvY3Vt
ZW50T3JpZ2luKSwgV1RGTW92ZShhdWRpb0RldmljZXMpLCBXVEZNb3ZlKHZpZGVvRGV2aWNlcyks
IFdURk1vdmUocmVxdWVzdCkpKTsKICAgICB9CkBAIC02Nyw3ICs2OCw3IEBAIHB1YmxpYzoKICAg
ICBib29sIGhhc1BlcnNpc3RlbnRBY2Nlc3MoKSBjb25zdCB7IHJldHVybiBtX2hhc1BlcnNpc3Rl
bnRBY2Nlc3M7IH0KICAgICB2b2lkIHNldEhhc1BlcnNpc3RlbnRBY2Nlc3MoKSB7IG1faGFzUGVy
c2lzdGVudEFjY2VzcyA9IHRydWU7IH0KIAotICAgIHVpbnQ2NF90IHVzZXJNZWRpYUlEKCkgY29u
c3QgeyByZXR1cm4gbV91c2VyTWVkaWFJRDsgfQorICAgIFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVl
c3RJZGVudGlmaWVyIHVzZXJNZWRpYUlEKCkgY29uc3QgeyByZXR1cm4gbV91c2VyTWVkaWFJRDsg
fQogICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtYWluRnJhbWVJRCgpIGNvbnN0IHsgcmV0
dXJuIG1fbWFpbkZyYW1lSUQ7IH0KICAgICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCgpIGNvbnN0IHsgcmV0dXJuIG1fZnJhbWVJRDsgfQogCkBAIC05MSwxMCArOTIsMTAgQEAgcHVi
bGljOgogI2VuZGlmCiAKIHByaXZhdGU6Ci0gICAgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQ
cm94eShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYsIHVpbnQ2NF90IHVz
ZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgbWFpbkZyYW1lSUQsIFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRp
YURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxE
b2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZp
Y2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURldmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNv
cmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmKTsKKyAgICBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dFByb3h5KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiwgV2ViQ29yZTo6
VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtYWlu
RnJhbWVJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW4+JiYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW4sIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbj4mJiB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURl
dmljZT4mJiBhdWRpb0RldmljZXMsIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiYmIHZp
ZGVvRGV2aWNlcywgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1ZXN0JiYpOwogCiAgICAgVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkqIG1fbWFuYWdlcjsKLSAgICB1aW50NjRf
dCBtX3VzZXJNZWRpYUlEOworICAgIFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVy
IG1fdXNlck1lZGlhSUQ7CiAgICAgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIG1fbWFpbkZyYW1l
SUQ7CiAgICAgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIG1fZnJhbWVJRDsKICAgICBSZWY8V2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW4+IG1fdXNlck1lZGlhRG9jdW1lbnRTZWN1cml0eU9yaWdpbjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IGE2OWI3ZGI0NWQ0
NDAwOGRmZDA3N2ZlNWU3MDAxOTkyOWQ5MWJkY2QuLmMxNzIxOTJjMTcwNDRlMDU1MDk4MzkzOWVi
ZTAwYjhhOTA5ZTY2YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNw
cApAQCAtODA2OSwxMiArODA2OSwxMiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6d2lsbFN0YXJ0Q2Fw
dHVyZShjb25zdCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5JiByZXF1ZQogCiAjZW5k
aWYKIAotdm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJh
bWUodWludDY0X3QgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBjb25zdCBX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmICB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEs
IGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wTGV2ZWxEb2N1bWVudE9yaWdp
bkRhdGEsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmIHJlcXVlc3QpCit2b2lkIFdlYlBh
Z2VQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZShVc2VyTWVkaWFSZXF1
ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFdlYkNv
cmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmIHJlcXVlc3QpCiB7CiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgbV9wcm9jZXNzLT53ZWJGcmFtZShm
cmFtZUlEKSk7CiAKLSAgICB1c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIoKS5yZXF1
ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKHVzZXJNZWRpYUlELCBmcmFtZUlELCB1c2Vy
TWVkaWFEb2N1bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgdG9wTGV2ZWxEb2N1bWVu
dE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgV1RGTW92ZShyZXF1ZXN0KSk7CisgICAgdXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKCkucmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Np
b25Gb3JGcmFtZSh1c2VyTWVkaWFJRCwgZnJhbWVJRCwgV1RGTW92ZShyZXF1ZXN0KSk7CiAjZWxz
ZQogICAgIFVOVVNFRF9QQVJBTSh1c2VyTWVkaWFJRCk7CiAgICAgVU5VU0VEX1BBUkFNKGZyYW1l
SUQpOwpAQCAtODA4NCwxMyArODA4NCwxMyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFVz
ZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZSh1aW50NjRfdCB1c2VyTWVkaWFJRCwgRnJhbQogI2Vu
ZGlmCiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFt
ZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5E
YXRhJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5
T3JpZ2luRGF0YSYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbkRhdGEsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlBhZ2VQcm94eTo6ZW51bWVyYXRlTWVkaWFEZXZpY2Vz
Rm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3QgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCiB7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBXZWJGcmFtZVByb3h5
KiBmcmFtZSA9IG1fcHJvY2Vzcy0+d2ViRnJhbWUoZnJhbWVJRCk7CiAgICAgTUVTU0FHRV9DSEVD
SyhtX3Byb2Nlc3MsIGZyYW1lKTsKIAotICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlcigpLmVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKGZyYW1lSUQsIHVzZXJNZWRpYURv
Y3VtZW50T3JpZ2luRGF0YS5zZWN1cml0eU9yaWdpbigpLCB0b3BMZXZlbERvY3VtZW50T3JpZ2lu
RGF0YS5zZWN1cml0eU9yaWdpbigpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAg
dXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKCkuZW51bWVyYXRlTWVkaWFEZXZpY2Vz
Rm9yRnJhbWUoZnJhbWVJRCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogI2Vsc2UKICAg
ICBVTlVTRURfUEFSQU0oZnJhbWVJRCk7CiAgICAgVU5VU0VEX1BBUkFNKHVzZXJNZWRpYURvY3Vt
ZW50T3JpZ2luRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4
IDcxNWVjZTUxZDNjMjE2YmYxNTNmMWNlN2FlMjFjZWMzY2VlZDNiMzQuLjNiNGRkMDcwOTIwMzMw
Y2EwNTdmZTllNmUzZmM1OTYxNDUyNGUyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oCkBAIC0xMDUsNiArMTA1LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1RleHRHcmFu
dWxhcml0eS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24uaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9WaWV3cG9ydEFyZ3VtZW50cy5oPgogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRl
IDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KQEAgLTE5NzIsOCArMTk3Myw4IEBAIHByaXZhdGU6
CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dE1hbmFnZXJQcm94eSYgdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKCk7CiAjZW5k
aWYKLSAgICB2b2lkIHJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUodWludDY0X3Qg
dXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2Vj
dXJpdHlPcmlnaW5EYXRhJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbklkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbklkZW50
aWZpZXIsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmKTsKLSAgICB2b2lkIGVudW1lcmF0
ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEsIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbkRh
dGEsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVE
ZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYpOworICAgIHZvaWQgcmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZShXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciwgV2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7Cisg
ICAgdm9pZCBlbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1
cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYpOwogICAgIHZvaWQgYmVnaW5Nb25pdG9yaW5n
Q2FwdHVyZURldmljZXMoKTsKIAogICAgIHZvaWQgcnVuTW9kYWwoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgppbmRleCA5NTBlNTM5Mjk5
MmY0MTg4MzhhMTkzZTMwM2UyZjFiYmY1NzVlYmZkLi40MWYxMWEyOGQzOWEwNDJmYzAzMWFlYjA0
MWUzNjI4NTUwNzMxMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yODUsOCArMjg1LDggQEAgbWVzc2FnZXMgLT4gV2ViUGFn
ZVByb3h5IHsKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgIyBNZWRpYVN0ZWFtIG1l
c3NhZ2VzCi0gICAgUmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZSh1aW50NjRfdCB1
c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5JZGVudGlmaWVy
LCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcExldmVsRG9jdW1lbnRPcmln
aW5JZGVudGlmaWVyLCBzdHJ1Y3QgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1ZXN0IHJlcXVlc3Qp
Ci0gICAgRW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgdXNlck1lZGlh
RG9jdW1lbnRPcmlnaW5JZGVudGlmaWVyLCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5E
YXRhIHRvcExldmVsRG9jdW1lbnRPcmlnaW5JZGVudGlmaWVyKSAtPiAoVmVjdG9yPFdlYkNvcmU6
OkNhcHR1cmVEZXZpY2U+IGRldmljZXMsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNo
U2FsdCkgQXN5bmMKKyAgICBSZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKFdlYkNv
cmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFt
ZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCBy
ZXF1ZXN0KQorICAgIEVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKFdlYkNvcmU6OkZyYW1l
SWRlbnRpZmllciBmcmFtZUlEKSAtPiAoVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+IGRl
dmljZXMsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2FsdCkgQXN5bmMKICAgICBC
ZWdpbk1vbml0b3JpbmdDYXB0dXJlRGV2aWNlcygpCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmNwcAppbmRleCBmZDZhYjRkZjcyZjIxZDA5
ODk3NzFhNTBhMGQ4MjVkMDJlOGFmZjM2Li5hMGE0ZWRjZmUwYjgzOWEwNTk5MWQ2MjU1NTBiN2Q3
YzY0NDBhYTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTWVkaWFTdHJl
YW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5h
Z2VyLmNwcApAQCAtNzksOCArNzksNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlcjo6c2VuZFVzZXJNZWRpYVJlcXVlc3QoVXNlck1lZGlhUmVxdWVzdCYgdQogICAgIFdl
YkZyYW1lKiB3ZWJGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmcmFtZSk7CiAgICAg
QVNTRVJUKHdlYkZyYW1lKTsKIAotICAgIGF1dG8qIHRvcExldmVsRG9jdW1lbnRPcmlnaW4gPSB1
c2VyUmVxdWVzdC50b3BMZXZlbERvY3VtZW50T3JpZ2luKCk7Ci0gICAgbV9wYWdlLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZSh1
c2VyUmVxdWVzdC5pZGVudGlmaWVyKCkudG9VSW50NjQoKSwgd2ViRnJhbWUtPmZyYW1lSUQoKSwg
dXNlclJlcXVlc3QudXNlck1lZGlhRG9jdW1lbnRPcmlnaW4oKS0+ZGF0YSgpLCB0b3BMZXZlbERv
Y3VtZW50T3JpZ2luLT5kYXRhKCksIHVzZXJSZXF1ZXN0LnJlcXVlc3QoKSkpOworICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9u
Rm9yRnJhbWUodXNlclJlcXVlc3QuaWRlbnRpZmllcigpLCB3ZWJGcmFtZS0+ZnJhbWVJRCgpLCB1
c2VyUmVxdWVzdC5yZXF1ZXN0KCkpKTsKIH0KIAogdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXI6OmNhbmNlbFVzZXJNZWRpYVJlcXVlc3QoVXNlck1lZGlhUmVxdWVzdCYgcmVx
dWVzdCkKQEAgLTExNyw5ICsxMTYsOSBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlcjo6bWVkaWFDYW5TdGFydChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgICAgIHNlbmRV
c2VyTWVkaWFSZXF1ZXN0KHBlbmRpbmdSZXF1ZXN0KTsKIH0KIAotdm9pZCBVc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0X3Qg
cmVxdWVzdElELCBDYXB0dXJlRGV2aWNlJiYgYXVkaW9EZXZpY2UsIENhcHR1cmVEZXZpY2UmJiB2
aWRlb0RldmljZSwgU3RyaW5nJiYgZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFVzZXJNZWRpYVBlcm1p
c3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZChVc2VyTWVkaWFS
ZXF1ZXN0SWRlbnRpZmllciByZXF1ZXN0SUQsIENhcHR1cmVEZXZpY2UmJiBhdWRpb0RldmljZSwg
Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBkZXZpY2VJZGVudGlmaWVySGFz
aFNhbHQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsK
LSAgICBhdXRvIHJlcXVlc3QgPSBtX29uZ29pbmdVc2VyTWVkaWFSZXF1ZXN0cy50YWtlKG1ha2VP
YmplY3RJZGVudGlmaWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT4ocmVxdWVzdElE
KSk7CisgICAgYXV0byByZXF1ZXN0ID0gbV9vbmdvaW5nVXNlck1lZGlhUmVxdWVzdHMudGFrZShy
ZXF1ZXN0SUQpOwogICAgIGlmICghcmVxdWVzdCkgewogICAgICAgICBjb21wbGV0aW9uSGFuZGxl
cigpOwogICAgICAgICByZXR1cm47CkBAIC0xMjgsOSArMTI3LDkgQEAgdm9pZCBVc2VyTWVkaWFQ
ZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0
X3QgcmVxdWUKICAgICByZXF1ZXN0LT5hbGxvdyhXVEZNb3ZlKGF1ZGlvRGV2aWNlKSwgV1RGTW92
ZSh2aWRlb0RldmljZSksIFdURk1vdmUoZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KSwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKHVpbnQ2NF90IHJlcXVlc3RJRCwg
VXNlck1lZGlhUmVxdWVzdDo6TWVkaWFBY2Nlc3NEZW5pYWxSZWFzb24gcmVhc29uLCBTdHJpbmcm
JiBpbnZhbGlkQ29uc3RyYWludCkKK3ZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5h
Z2VyOjp1c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQoVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIg
cmVxdWVzdElELCBVc2VyTWVkaWFSZXF1ZXN0OjpNZWRpYUFjY2Vzc0RlbmlhbFJlYXNvbiByZWFz
b24sIFN0cmluZyYmIGludmFsaWRDb25zdHJhaW50KQogewotICAgIGF1dG8gcmVxdWVzdCA9IG1f
b25nb2luZ1VzZXJNZWRpYVJlcXVlc3RzLnRha2UobWFrZU9iamVjdElkZW50aWZpZXI8VXNlck1l
ZGlhUmVxdWVzdElkZW50aWZpZXJUeXBlPihyZXF1ZXN0SUQpKTsKKyAgICBhdXRvIHJlcXVlc3Qg
PSBtX29uZ29pbmdVc2VyTWVkaWFSZXF1ZXN0cy50YWtlKHJlcXVlc3RJRCk7CiAgICAgaWYgKCFy
ZXF1ZXN0KQogICAgICAgICByZXR1cm47CiAKQEAgLTE0NSw3ICsxNDQsNyBAQCB2b2lkIFVzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6ZW51bWVyYXRlTWVkaWFEZXZpY2VzKERvY3Vt
ZW50JiBkb2N1bWVudAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbV9wYWdlLnNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpFbnVtZXJhdGVNZWRpYURldmlj
ZXNGb3JGcmFtZSB7IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmcmFtZSktPmZyYW1lSUQoKSwg
ZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKS5kYXRhKCksIGRvY3VtZW50LnRvcE9yaWdpbigpLmRh
dGEoKSB9LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgbV9wYWdlLnNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpFbnVtZXJhdGVNZWRpYURldmljZXNG
b3JGcmFtZSB7IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmcmFtZSktPmZyYW1lSUQoKSB9LCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKIFVzZXJNZWRpYUNsaWVudDo6RGV2aWNl
Q2hhbmdlT2JzZXJ2ZXJUb2tlbiBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OmFk
ZERldmljZUNoYW5nZU9ic2VydmVyKEZ1bmN0aW9uPHZvaWQoKT4mJiBvYnNlcnZlcikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0cmVhbS9Vc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0
cmVhbS9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuaAppbmRleCAwNDdhZmEyMWNm
Y2VlM2QwMDliZGUzNjE3NzZjODIxOTMwYTRkZGNiLi42ZmI0YjkzMDZhZmI4OThjZDU2ZTg0MzNk
NmU0MTVkZjMyOWY3N2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTWVk
aWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlci5oCkBAIC00Miw4ICs0Miw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc3RhcnRVc2Vy
TWVkaWFSZXF1ZXN0KFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3QmKTsKICAgICB2b2lkIGNhbmNl
bFVzZXJNZWRpYVJlcXVlc3QoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdCYpOwotICAgIHZvaWQg
dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCh1aW50NjRfdCwgV2ViQ29yZTo6Q2FwdHVyZURldmlj
ZSYmIGF1ZGlvRGV2aWNlLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgdmlkZW9EZXZpY2UsIFN0
cmluZyYmIGRldmljZUlkZW50aWZpZXJIYXNoU2FsdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmKTsKLSAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCwgV2ViQ29y
ZTo6VXNlck1lZGlhUmVxdWVzdDo6TWVkaWFBY2Nlc3NEZW5pYWxSZWFzb24sIFN0cmluZyYmKTsK
KyAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQoV2ViQ29yZTo6VXNlck1lZGlhUmVx
dWVzdElkZW50aWZpZXIsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRpb0RldmljZSwgV2Vi
Q29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBkZXZpY2VJZGVudGlm
aWVySGFzaFNhbHQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgICAgdm9pZCB1c2Vy
TWVkaWFBY2Nlc3NXYXNEZW5pZWQoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIs
IFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uLCBTdHJp
bmcmJik7CiAKICAgICB2b2lkIGVudW1lcmF0ZU1lZGlhRGV2aWNlcyhXZWJDb3JlOjpEb2N1bWVu
dCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVE
ZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDEwZWY3OWU4ZDJmZjUzYmMzODUwMDRiNmI1Mzlk
MWFkYjhlNTQ4M2UuLmNjNGMzNmRmNTEwZDY3NDU0YjU2ODY5NzUxNjQ4YzA3MjI3MzVlZmIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC00NDMy
LDE0ICs0NDMyLDE0IEBAIHZvaWQgV2ViUGFnZTo6ZGlkUmVjZWl2ZU5vdGlmaWNhdGlvblBlcm1p
c3Npb25EZWNpc2lvbih1aW50NjRfdCBub3RpZmljYXRpb25JRCwKIAogI2lmIEVOQUJMRShNRURJ
QV9TVFJFQU0pCiAKLXZvaWQgV2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCh1aW50
NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlLCBX
ZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgdmlkZW9EZXZpY2UsIFN0cmluZyYmIG1lZGlhRGV2aWNl
SWRlbnRpZmllckhhc2hTYWx0LCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBoYW5kbGUsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViUGFn
ZTo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZChVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1
c2VyTWVkaWFJRCwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlLCBXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlJiYgdmlkZW9EZXZpY2UsIFN0cmluZyYmIG1lZGlhRGV2aWNlSWRlbnRp
Zmllckhhc2hTYWx0LCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBoYW5kbGUsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBTYW5kYm94RXh0
ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoaGFuZGxlKTsKIAogICAgIG1fdXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyLT51c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKHVzZXJNZWRp
YUlELCBXVEZNb3ZlKGF1ZGlvRGV2aWNlKSwgV1RGTW92ZSh2aWRlb0RldmljZSksIFdURk1vdmUo
bWVkaWFEZXZpY2VJZGVudGlmaWVySGFzaFNhbHQpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKHVpbnQ2NF90
IHVzZXJNZWRpYUlELCB1aW50NjRfdCByZWFzb24sIFN0cmluZyYmIGludmFsaWRDb25zdHJhaW50
KQordm9pZCBXZWJQYWdlOjp1c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQoVXNlck1lZGlhUmVxdWVz
dElkZW50aWZpZXIgdXNlck1lZGlhSUQsIHVpbnQ2NF90IHJlYXNvbiwgU3RyaW5nJiYgaW52YWxp
ZENvbnN0cmFpbnQpCiB7CiAgICAgbV91c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIt
PnVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1c2VyTWVkaWFJRCwgc3RhdGljX2Nhc3Q8VXNlck1l
ZGlhUmVxdWVzdDo6TWVkaWFBY2Nlc3NEZW5pYWxSZWFzb24+KHJlYXNvbiksIFdURk1vdmUoaW52
YWxpZENvbnN0cmFpbnQpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaAppbmRleCBmYmNkOGNjNmZiZjI5ZTAxYTE3ZDM5ZDViNWFmYTkyNzEzNmY3NjY5Li5j
ZDViNzkwZmYwOWY4YmEwMjE3YTFhMmY2ZjQ2ZTI5NTdhYTY5ZjhlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC04NSw2ICs4NSw3IEBACiAjaW5jbHVk
ZSA8V2ViQ29yZS9Vc2VyQWN0aXZpdHkuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJDb250ZW50
VHlwZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24u
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9Vc2VyU2NyaXB0VHlwZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Zpc2li
aWxpdHlTdGF0ZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2ViQ29yZUtleWJvYXJkVUlNb2RlLmg+
CkBAIC0xNjU1LDggKzE2NTYsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkUmVjZWl2ZU5vdGlm
aWNhdGlvblBlcm1pc3Npb25EZWNpc2lvbih1aW50NjRfdCBub3RpZmljYXRpb25JRCwgYm9vbCBh
bGxvd2VkKTsKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCi0gICAgdm9pZCB1c2VyTWVkaWFB
Y2Nlc3NXYXNHcmFudGVkKHVpbnQ2NF90IHVzZXJNZWRpYUlELCBXZWJDb3JlOjpDYXB0dXJlRGV2
aWNlJiYgYXVkaW9EZXZpY2VVSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiB2aWRlb0Rldmlj
ZVVJRCwgU3RyaW5nJiYgbWVkaWFEZXZpY2VJZGVudGlmaWVySGFzaFNhbHQsIFNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwotICAgIHZvaWQg
dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKHVpbnQ2NF90IHVzZXJNZWRpYUlELCB1aW50NjRfdCBy
ZWFzb24sIFN0cmluZyYmIGludmFsaWRDb25zdHJhaW50KTsKKyAgICB2b2lkIHVzZXJNZWRpYUFj
Y2Vzc1dhc0dyYW50ZWQoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIsIFdlYkNv
cmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRpb0RldmljZVVJRCwgV2ViQ29yZTo6Q2FwdHVyZURldmlj
ZSYmIHZpZGVvRGV2aWNlVUlELCBTdHJpbmcmJiBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2Fs
dCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
Jik7CisgICAgdm9pZCB1c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQoV2ViQ29yZTo6VXNlck1lZGlh
UmVxdWVzdElkZW50aWZpZXIsIHVpbnQ2NF90IHJlYXNvbiwgU3RyaW5nJiYgaW52YWxpZENvbnN0
cmFpbnQpOwogCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KaW5kZXggMTU1ZjFmNGE0YTk2Mjg5ZTEwODcxZjIy
YTU5NTUwNzBlZDBlZTU4ZC4uM2E3ZDFhZjI1ZjVhYTY3ZWQ1MjJlMDUzMjZkNDhhOWJjZTQ4ZmQw
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
Lm1lc3NhZ2VzLmluCkBAIC0zNzMsOCArMzczLDggQEAgR2VuZXJhdGVTeW50aGV0aWNFZGl0aW5n
Q29tbWFuZChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUK
IAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgIyBNZWRpYVN0ZWFtCi0gICAgVXNlck1l
ZGlhQWNjZXNzV2FzR3JhbnRlZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6Q2FwdHVy
ZURldmljZSBhdWRpb0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSB2aWRlb0RldmljZSwg
U3RyaW5nIG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBXZWJLaXQ6OlNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSAtPiAoKSBBc3luYwotICAgIFVz
ZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgdWludDY0X3QgcmVh
c29uLCBTdHJpbmcgaW52YWxpZENvbnN0cmFpbnQpCisgICAgVXNlck1lZGlhQWNjZXNzV2FzR3Jh
bnRlZChXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgV2Vi
Q29yZTo6Q2FwdHVyZURldmljZSBhdWRpb0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSB2
aWRlb0RldmljZSwgU3RyaW5nIG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBXZWJLaXQ6
OlNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSAtPiAoKSBB
c3luYworICAgIFVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZChXZWJDb3JlOjpVc2VyTWVkaWFSZXF1
ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgdWludDY0X3QgcmVhc29uLCBTdHJpbmcgaW52YWxp
ZENvbnN0cmFpbnQpCiAgICAgQ2FwdHVyZURldmljZXNDaGFuZ2VkKCkKICNlbmRpZgogCg==
</data>
<flag name="commit-queue"
          id="428767"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412337</attachid>
            <date>2020-10-26 11:07:15 -0700</date>
            <delta_ts>2020-10-26 11:22:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218192-20201026190713.patch</filename>
            <type>text/plain</type>
            <size>45434</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGMyN2FjN2VlMzRmNzU2
MmY2MjI2NGE4ODc1Zjk1ZjEwYmY5OTljNy4uYzM3MTQ0Y2I3YjhiYTJkYjJhZTUxMzkyMmFjZjVi
NGFlYzg0Y2Q2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTEwLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTdG9wIHNlbmRpbmcgb3Jp
Z2lucyBmcm9tIFdlYlByb2Nlc3MgdG8gVUlQcm9jZXNzIGZvciBnZXRVc2VyTWVkaWEgcmVxdWVz
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODE5
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNo
YW5nZSBvZiBiZWhhdmlvciwgbW92ZSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciBpbiBpdHMg
b3duIGhlYWRlci4KKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAg
ICAqIEhlYWRlcnMuY21ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVk
aWFSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6OnVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlVz
ZXJNZWRpYVJlcXVlc3Q6OnRvcExldmVsRG9jdW1lbnRPcmlnaW4gY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaDoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMjYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBhIFdlYWtI
YXNoU2V0IGZvciBEb2N1bWVudDo6bV9jYXB0aW9uUHJlZmVyZW5jZXNDaGFuZ2VkRWxlbWVudHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggY2E0NmM2YmFlODkzMjMzOGYyYWRlMjllZjBhZTkzMWFlZTdjNTlmNy4uYjYz
NWE3NmRkY2I3YWJmNjJlZDk5Mjg2MzU3NTE2YTcxZGI1ZGJiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSw0NyBAQAorMjAyMC0xMC0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisK
KyAgICAgICAgU3RvcCBzZW5kaW5nIG9yaWdpbnMgZnJvbSBXZWJQcm9jZXNzIHRvIFVJUHJvY2Vz
cyBmb3IgZ2V0VXNlck1lZGlhIHJlcXVlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgxOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBQYXNzIGRpcmVjdGx5IGEgVXNlck1lZGlhUmVxdWVzdElkZW50
aWZpZXIgdGhyb3VnaCBJUEMuCisgICAgICAgIFN0b3AgcGFzc2luZyBvcmlnaW5zIGZyb20gSVBD
IGFuZCBpbnN0ZWFkIGNvbXB1dGUgdGhlbSBmcm9tIFVJUHJvY2VzcyBzaWRlLgorCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICogVUlQcm9jZXNzL1VzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmRlbnlSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6Omdy
YW50UmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlclByb3h5OjpmaW5pc2hHcmFudGluZ1JlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpV
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QpOgor
ICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6
cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25JbnZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJL
aXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1l
ZGlhUGVybWlzc2lvblZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpnZXRVc2VyTWVkaWFQZXJtaXNzaW9uSW5mbyk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFBy
b3h5OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dFByb3h5Ojp1c2VyTWVkaWFJRCBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cmVxdWVzdFVzZXJNZWRp
YVBlcm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZW51
bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyOjpzZW5kVXNlck1lZGlhUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNl
ck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyOjplbnVtZXJhdGVNZWRpYURldmljZXMpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluOgorCiAyMDIwLTEwLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgVlA5IFByb2ZpbGUgMiAoMTAtYml0
IGNvbG9yKSBpbiBXZWJSVEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IDk5MTgzYTcyM2VhNGY4NDk1
ZGZiZDY0YzcyMDI3MzFmYWU2MTQ2M2IuLjc1ZjU1M2YxNDFiY2ZjZWYzOWNlNGViMDFmZWY1Mjg0
ZWE2YzNhZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtMTAzLDYgKzEwMyw3IEBAIHNldChXZWJD
b3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1Vz
ZXJNZWRpYUNsaWVudC5oCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFDb250cm9s
bGVyLmgKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorICAgIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaAogCiAgICAgTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCiAgICAgTW9kdWxlcy9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNsaWVudC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAppbmRleCBkZjJhNWU0NGVjMTI3
OWMwYTIzM2JjMWRhYzQ3MzU5ZDUzNWUxODM2Li44NjBlN2UwOGQyMDNiMTYwMDBlMzk5M2I1ODMw
N2JhNDFiNzg3YzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKQEAgLTczLDIwICs3Myw2IEBAIFVzZXJNZWRp
YVJlcXVlc3Q6On5Vc2VyTWVkaWFSZXF1ZXN0KCkKICAgICAgICAgbV9hbGxvd0NvbXBsZXRpb25I
YW5kbGVyKCk7CiB9CiAKLVNlY3VyaXR5T3JpZ2luKiBVc2VyTWVkaWFSZXF1ZXN0Ojp1c2VyTWVk
aWFEb2N1bWVudE9yaWdpbigpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci19Ci0KLVNlY3VyaXR5T3JpZ2luKiBVc2Vy
TWVkaWFSZXF1ZXN0Ojp0b3BMZXZlbERvY3VtZW50T3JpZ2luKCkgY29uc3QKLXsKLSAgICBpZiAo
IW1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAg
cmV0dXJuICZtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnRvcE9yaWdpbigpOwotfQotCiBzdGF0
aWMgYm9vbCBoYXNJbnZhbGlkR2V0RGlzcGxheU1lZGlhQ29uc3RyYWludChjb25zdCBNZWRpYUNv
bnN0cmFpbnRzJiBjb25zdHJhaW50cykKIHsKICAgICAvLyBodHRwczovL3czYy5naXRodWIuaW8v
bWVkaWFjYXB0dXJlLXNjcmVlbi1zaGFyZS8jbmF2aWdhdG9yLWFkZGl0aW9ucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApp
bmRleCBkOTg3YWQzMjQ1ZDZiZjJiOWNmNDFlZjQ1YzJiN2MwMDAzMDFiYWQzLi5jM2E5MDMyNDU4
OTkyMTJkZTNjYzUzMDFjYTYyZWRiYzk0M2U3MWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApAQCAtNDAsOCArNDAs
OCBAQAogI2luY2x1ZGUgIk1lZGlhQ29uc3RyYWludHMuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVh
bVByaXZhdGUuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbVJlcXVlc3QuaCIKKyNpbmNsdWRlICJV
c2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFu
ZGxlci5oPgotI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3Rm
L1VuaXF1ZVJlZi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MSw5ICs1MSw2IEBAIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBJRExUeXBlPiBjbGFzcyBE
T01Qcm9taXNlRGVmZXJyZWQ7CiAKLWVudW0gVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXJUeXBl
IHsgfTsKLXVzaW5nIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmll
cjxVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllclR5cGU+OwotCiBjbGFzcyBVc2VyTWVkaWFSZXF1
ZXN0IDogcHVibGljIFJlZkNvdW50ZWQ8VXNlck1lZGlhUmVxdWVzdD4sIHB1YmxpYyBBY3RpdmVE
T01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUmVxdWVzdD4gY3Jl
YXRlKERvY3VtZW50JiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExJbnRlcmZhY2U8TWVkaWFTdHJlYW0+PiYmKTsKQEAgLTc0LDggKzcxLDYgQEAgcHVibGljOgog
ICAgIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGF1ZGlvQ29uc3RyYWludHMoKSBjb25zdCB7IHJl
dHVybiBtX3JlcXVlc3QuYXVkaW9Db25zdHJhaW50czsgfQogICAgIGNvbnN0IE1lZGlhQ29uc3Ry
YWludHMmIHZpZGVvQ29uc3RyYWludHMoKSBjb25zdCB7IHJldHVybiBtX3JlcXVlc3QudmlkZW9D
b25zdHJhaW50czsgfQogCi0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlPcmlnaW4qIHVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luKCkgY29uc3Q7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlP
cmlnaW4qIHRvcExldmVsRG9jdW1lbnRPcmlnaW4oKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9S
VCBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKIAogICAgIGNvbnN0IE1lZGlhU3RyZWFtUmVx
dWVzdCYgcmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVxdWVzdDsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRp
Zmllci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1
ZXN0SWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4OGE1NzUxMDNjNjU4MDQ3NTM3YzAzMzRjNjQ3
YzhiMGIwYjY2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICog
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisg
KiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlm
aWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworZW51bSBVc2VyTWVkaWFSZXF1ZXN0SWRl
bnRpZmllclR5cGUgeyB9OwordXNpbmcgVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgPSBPYmpl
Y3RJZGVudGlmaWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBiMzAzMzQyZDQ1MTE4ZjA5OGE0YTIzM2E0N2E5Y2VmOTJjZjlh
NTJkLi5hZjcyYjNmNWZiYWU1ZDE4MjJjMmQ1ZWNhZWQ4YjVmMjc5ZDJkZjNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDM1
LDYgKzEwMzUsNyBAQAogCQk0MTJERTRCODIxOTI4NUMwMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJp
bGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTJERTRCNjIxOTI4NUJGMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggKi87IH07CiAJ
CTQxMkRFRjFEMjNBOTE4NjYwMEQ4NDBGNiAvKiBNb2NrQXVkaW9TaGFyZWRVbml0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzQ0RUNFQjFFMEM0QUU1
MDAwRDA5NDQgLyogTW9ja0F1ZGlvU2hhcmVkVW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQxMkRFRjFGMjNBOTE4QTMwMEQ4NDBGNiAvKiBC
YXNlQXVkaW9TaGFyZWRVbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTc3RjUxRTIzODI1NDVFMDBDMDQ0ODYgLyogQmFzZUF1ZGlvU2hhcmVkVW5p
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQx
MkZGOTNEMjU0NzIwODMwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEyRkY5M0IyNTQ3
MDk3MDAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDEzM0NCOEIyMEY4MEU5OTAw
RTg5QjExIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VDb2NvYS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTMzQ0I4OTIwRjgwRTg2MDBFODlCMTEg
LyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29hLmNwcCAqLzsgfTsKIAkJNDEzNkM1N0EyMzk4
RTVCRTAwMjQ5N0QzIC8qIEludGVybmFsc01hcExpa2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzNkM1NzgyMzk4RTVCNTAwMjQ5N0QzIC8qIElu
dGVybmFsc01hcExpa2UuY3BwICovOyB9OwogCQk0MTM2QzU3QzIzOThFQ0NGMDAyNDk3RDMgLyog
SlNJbnRlcm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJENkYzRTkyMUMxRjg1NTUwMDYxREJENiAvKiBKU0ludGVybmFsc01hcExp
a2UuY3BwICovOyB9OwpAQCAtNzUxMiw2ICs3NTEzLDcgQEAKIAkJNDEyOUM5ODcxRjU4NjYyRDAw
OUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZWFkYWJsZVN0cmVhbVNpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTJCQTVGRTIxOEM2NTE4MDAzNjU0NzQgLyogUlRDUE11eFBvbGljeS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQTXV4UG9saWN5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMkRFNEI2MjE5Mjg1QkYwMDc1RjNBNyAvKiBSVENSdHBD
YXBhYmlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwQ2Fw
YWJpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMkZGOTNCMjU0NzA5
NzAwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MTMwMTVENTFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hS
ZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaFJl
c3BvbnNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDUxQzdCNTcw
NDAwMDkxQzZGIC8qIEZldGNoQm9keVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGZXRjaEJvZHlTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTMwMTVENjFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hSZXNwb25zZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaFJlc3BvbnNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNzAzOSw2ICsxNzA0MSw3IEBACiAJCQkJMDcyMjFCOEYxN0NF
QzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuaCAqLywKIAkJCQkwNzIyMUI5MDE3
Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhUmVxdWVzdC5jcHAgKi8sCiAJCQkJMDcyMjFCOTEx
N0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYVJlcXVlc3QuaCAqLywKKwkJCQk0MTJGRjkzQjI1
NDcwOTcwMDAxREYwMzYgLyogVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaCAqLywKIAkJCSk7
CiAJCQlwYXRoID0gbWVkaWFzdHJlYW07CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAt
MzQ2ODQsNiArMzQ2ODcsNyBAQAogCQkJCTA3OEUwOTJFMTdEMTREMUMwMDQyMEFBMSAvKiBVc2Vy
TWVkaWFDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTJGMTdEMTREMUMwMDQyMEFB
MSAvKiBVc2VyTWVkaWFDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzhFMDkzMDE3
RDE0RDFDMDA0MjBBQTEgLyogVXNlck1lZGlhUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDEyRkY5M0QyNTQ3MjA4MzAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk3QzNCNzk3MjE5MDg3NTdCMDBCNDdBMkQgLyogVXNlck1lc3Nh
Z2VIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3Q0U2ODM0NTE5MjE0M0E4MDBGNEQ5Mjgg
LyogVXNlck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0NF
NjgzNDcxOTIxODIxNTAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3JUeXBl
cy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5w
eQppbmRleCAwNTg1NzdlNWY3ZGViNmQyYmRmMjViMWM3NTUzNTZmOTZhZGY4ODg5Li45NmY4OWFk
OGM2YzYyMzhiZGY4Mzk2MTQ4YTgzODAxMmVjOTI0ODFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTIzMyw2ICsyMzMsNyBAQCBkZWYgdHlwZXNfdGhhdF9j
YW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViQ29yZTo6U2hhcmVkU3Ry
aW5nSGFzaCcsCiAgICAgICAgICdXZWJDb3JlOjpTbGVlcERpc2FibGVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyJywKKyAgICAgICAg
J1dlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6
OldlYlNvY2tldElkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpBY3Rpdml0eVN0YXRlQ2hh
bmdlSUQnLAogICAgICAgICAnV2ViS2l0OjpBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlcklk
ZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwCmluZGV4IDc2MzQz
OGE1ZjIxYzU4YTg1NjNlMTY5MzI2ZDg4NzI5ZDkyNzcyNzcuLmI1ZDM4ZTlmZTI2YjRhNTZlYzhl
ZTk2YmRmMzE3MDc5OWM2ZmM5NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5j
cHAKQEAgLTIwNCw3ICsyMDQsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5OjpkZW55UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdQogICAgIGlmICgh
bV9wYWdlLmhhc1J1bm5pbmdQcm9jZXNzKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFMV0FZ
U19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgpLCAiLCByZWFzb246ICIs
IHJlYXNvbik7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCByZXF1ZXN0LnVzZXJNZWRp
YUlEKCkudG9VSW50NjQoKSwgIiwgcmVhc29uOiAiLCByZWFzb24pOwogCiAgICAgaWYgKHJlYXNv
biA9PSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5p
YWxSZWFzb246OlBlcm1pc3Npb25EZW5pZWQpCiAgICAgICAgIG1fZGVuaWVkUmVxdWVzdHMuYXBw
ZW5kKERlbmllZFJlcXVlc3QgeyByZXF1ZXN0Lm1haW5GcmFtZUlEKCksIHJlcXVlc3QudXNlck1l
ZGlhRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpLCByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1
cml0eU9yaWdpbigpLCByZXF1ZXN0LnJlcXVpcmVzQXVkaW9DYXB0dXJlKCksIHJlcXVlc3QucmVx
dWlyZXNWaWRlb0NhcHR1cmUoKSwgcmVxdWVzdC5yZXF1aXJlc0Rpc3BsYXlDYXB0dXJlKCkgfSk7
CkBAIC0yMjUsNyArMjI1LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFn
ZXJQcm94eTo6Z3JhbnRSZXF1ZXN0KFVzZXJNZWRpYVBlcm1pc3Npb25SZXEKICAgICAgICAgcmV0
dXJuOwogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSAgICBBTFdBWVNfTE9HKExPR0lERU5U
SUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKSwgIiwgdmlkZW86ICIsIHJlcXVlc3QudmlkZW9E
ZXZpY2UoKS5sYWJlbCgpLCAiLCBhdWRpbzogIiwgcmVxdWVzdC5hdWRpb0RldmljZSgpLmxhYmVs
KCkpOworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCksICIsIHZpZGVvOiAiLCByZXF1ZXN0LnZpZGVvRGV2aWNlKCkubGFiZWwoKSwg
IiwgYXVkaW86ICIsIHJlcXVlc3QuYXVkaW9EZXZpY2UoKS5sYWJlbCgpKTsKIAogICAgIGF1dG8m
IHVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlPcmlnaW4gPSByZXF1ZXN0LnVzZXJNZWRpYURvY3Vt
ZW50U2VjdXJpdHlPcmlnaW4oKTsKICAgICBhdXRvJiB0b3BMZXZlbERvY3VtZW50U2VjdXJpdHlP
cmlnaW4gPSByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpOwpAQCAtMjQy
LDcgKzI0Miw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6
OmdyYW50UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmZpbmlz
aEdyYW50aW5nUmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5JiByZXF1ZXN0
KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
KTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKS50
b1VJbnQ2NCgpKTsKICAgICBpZiAoIVVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0b24o
KS53aWxsQ3JlYXRlTWVkaWFTdHJlYW0oKnRoaXMsIHJlcXVlc3QuaGFzQXVkaW9EZXZpY2UoKSwg
cmVxdWVzdC5oYXNWaWRlb0RldmljZSgpKSkgewogICAgICAgICBkZW55UmVxdWVzdChyZXF1ZXN0
LCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxS
ZWFzb246Ok90aGVyRmFpbHVyZSwgIlVuYWJsZSB0byBleHRlbmQgc2FuZGJveC4iKTsKICAgICAg
ICAgcmV0dXJuOwpAQCAtMzkyLDEzICszOTIsMjIgQEAgVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHk6OlJlcXVlc3RBY3Rpb24gVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QK
IH0KICNlbmRpZgogCi12b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlE
LCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRp
YURvY3VtZW50T3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3QpCit2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZv
ckZyYW1lKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3Qp
CiB7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoIW1fcGFnZS5oYXNSdW5uaW5n
UHJvY2VzcygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJ
RVIsIHVzZXJNZWRpYUlEKTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHVzZXJNZWRp
YUlELnRvVUludDY0KCkpOworCisgICAgYXV0byogd2ViRnJhbWUgPSBtX3BhZ2UucHJvY2Vzcygp
LndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghd2ViRnJhbWUpIHsKKyAgICAgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1c2VyTWVk
aWFJRCwgdG9XZWJDb3JlKFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHk6OlVzZXJNZWRp
YUFjY2Vzc0RlbmlhbFJlYXNvbjo6UGVybWlzc2lvbkRlbmllZCksIHsgfSkpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgYXV0byB0b3BMZXZlbERvY3VtZW50T3JpZ2luID0gU2VjdXJp
dHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcobV9wYWdlLnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVV
UkwoKSk7CisgICAgYXV0byB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2lu
OjpjcmVhdGVGcm9tU3RyaW5nKHdlYkZyYW1lLT51cmwoKS5zdHJpbmcoKSk7CiAKICAgICBhdXRv
IHJlcXVlc3QgPSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpjcmVhdGUoKnRoaXMs
IHVzZXJNZWRpYUlELCBtX3BhZ2UubWFpbkZyYW1lKCktPmZyYW1lSUQoKSwgZnJhbWVJRCwgV1RG
TW92ZSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiksIFdURk1vdmUodG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiksIHsgfSwgeyB9LCBXVEZNb3ZlKHVzZXJSZXF1ZXN0KSk7CiAgICAgaWYgKG1fY3VycmVu
dFVzZXJNZWRpYVJlcXVlc3QpIHsKQEAgLTQxNyw4ICs0MjYsNiBAQCB2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZv
ckZyYW1lKAogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhSUQpOwogICAgIFVOVVNF
RF9QQVJBTShmcmFtZUlEKTsKLSAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhRG9jdW1lbnRPcmln
aW4pOwotICAgIFVOVVNFRF9QQVJBTSh0b3BMZXZlbERvY3VtZW50T3JpZ2luKTsKICAgICBVTlVT
RURfUEFSQU0odXNlclJlcXVlc3QpOwogI2VuZGlmCiB9CkBAIC00NjEsNyArNDY4LDcgQEAgdm9p
ZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6c3RhcnRQcm9jZXNzaW5n
VXNlck1lZGlhUGVybWlzc2lvblIKIAogdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0KCkKIHsKLSAgICBB
TFdBWVNfTE9HKExPR0lERU5USUZJRVIsIG1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJN
ZWRpYUlEKCksICIsIHBlcnNpc3RlbnQgYWNjZXNzOiAiLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1
ZXN0LT5oYXNQZXJzaXN0ZW50QWNjZXNzKCkpOworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAi
LCBwZXJzaXN0ZW50IGFjY2VzczogIiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+aGFzUGVy
c2lzdGVudEFjY2VzcygpKTsKIAogICAgIGF1dG8mIHVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlP
cmlnaW4gPSBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFEb2N1bWVudFNlY3Vy
aXR5T3JpZ2luKCk7CiAgICAgYXV0byYgdG9wTGV2ZWxEb2N1bWVudFNlY3VyaXR5T3JpZ2luID0g
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dG9wTGV2ZWxEb2N1bWVudFNlY3VyaXR5T3JpZ2lu
KCk7CkBAIC00OTksNyArNTA2LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0KCkKICNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQogdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQ
cm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25JbnZhbGlkUmVxdWVzdChjb25zdCBTdHJp
bmcmIGludmFsaWRDb25zdHJhaW50KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSk7CisgICAgQUxXQVlTX0xP
RyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCkpOwogICAgIGJvb2wgZmlsdGVyQ29uc3RyYWludCA9ICFtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT5oYXNQZXJzaXN0ZW50QWNjZXNzKCkgJiYgIXdhc0dyYW50ZWRWaWRlb09y
QXVkaW9BY2Nlc3MobV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+ZnJhbWVJRCgpLCBtX2N1cnJl
bnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFEb2N1bWVudFNlY3VyaXR5T3JpZ2luKCksIG1f
Y3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnRvcExldmVsRG9jdW1lbnRTZWN1cml0eU9yaWdpbigp
KTsKIAogICAgIGRlbnlSZXF1ZXN0KCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LCBVc2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxSZWFzb246Oklu
dmFsaWRDb25zdHJhaW50LCBmaWx0ZXJDb25zdHJhaW50ID8gU3RyaW5nIHsgfSA6IGludmFsaWRD
b25zdHJhaW50KTsKQEAgLTUwNyw3ICs1MTQsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1lZGlhUGVybWlzc2lvbkludmFsaWRSZQog
CiB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNl
ck1lZGlhUGVybWlzc2lvblZhbGlkUmVxdWVzdChWZWN0b3I8Q2FwdHVyZURldmljZT4mJiBhdWRp
b0RldmljZXMsIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmIHZpZGVvRGV2aWNlcywgU3RyaW5nJiYg
ZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgdmlkZW86ICIs
IHZpZGVvRGV2aWNlcy5zaXplKCksICIgYXVkaW86ICIsIGF1ZGlvRGV2aWNlcy5zaXplKCkpOwor
ICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+
dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAiLCB2aWRlbzogIiwgdmlkZW9EZXZpY2VzLnNpemUo
KSwgIiBhdWRpbzogIiwgYXVkaW9EZXZpY2VzLnNpemUoKSk7CiAgICAgaWYgKHZpZGVvRGV2aWNl
cy5pc0VtcHR5KCkgJiYgYXVkaW9EZXZpY2VzLmlzRW1wdHkoKSkgewogICAgICAgICBkZW55UmVx
dWVzdCgqbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdCwgVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eTo6VXNlck1lZGlhQWNjZXNzRGVuaWFsUmVhc29uOjpOb0NvbnN0cmFpbnRzLCBlbXB0
eVN0cmluZygpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNTE4LDcgKzUyNSw3IEBAIHZvaWQgVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJt
aXNzaW9uVmFsaWRSZXF1CiAgICAgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+c2V0RWxpZ2li
bGVBdWRpb0RldmljZVVJRHMoV1RGTW92ZShhdWRpb0RldmljZXMpKTsKIAogICAgIGF1dG8gYWN0
aW9uID0gZ2V0UmVxdWVzdEFjdGlvbigqbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdCk7Ci0gICAg
QUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2Vy
TWVkaWFJRCgpLCAiLCBhY3Rpb246ICIsIGFjdGlvbik7CisgICAgQUxXQVlTX0xPRyhMT0dJREVO
VElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLnRvVUludDY0
KCksICIsIGFjdGlvbjogIiwgYWN0aW9uKTsKIAogICAgIGlmIChhY3Rpb24gPT0gUmVxdWVzdEFj
dGlvbjo6RGVueSkgewogICAgICAgICBkZW55UmVxdWVzdCgqbV9jdXJyZW50VXNlck1lZGlhUmVx
dWVzdCwgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhQWNjZXNzRGVu
aWFsUmVhc29uOjpQZXJtaXNzaW9uRGVuaWVkLCBlbXB0eVN0cmluZygpKTsKQEAgLTUzOCw3ICs1
NDUsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9j
ZXNzVXNlck1lZGlhUGVybWlzc2lvblZhbGlkUmVxdQogCiAgICAgaWYgKG1fcGFnZS5pc0NvbnRy
b2xsZWRCeUF1dG9tYXRpb24oKSkgewogICAgICAgICBpZiAoV2ViQXV0b21hdGlvblNlc3Npb24q
IGF1dG9tYXRpb25TZXNzaW9uID0gbV9wYWdlLnByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9t
YXRpb25TZXNzaW9uKCkpIHsKLSAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgcGFnZSBjb250cm9s
bGVkIGJ5IGF1dG9tYXRpb24iKTsKKyAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAi
LCBwYWdlIGNvbnRyb2xsZWQgYnkgYXV0b21hdGlvbiIpOwogICAgICAgICAgICAgaWYgKGF1dG9t
YXRpb25TZXNzaW9uLT5zaG91bGRBbGxvd0dldFVzZXJNZWRpYUZvclBhZ2UobV9wYWdlKSkKICAg
ICAgICAgICAgICAgICBncmFudFJlcXVlc3QoKm1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QpOwog
ICAgICAgICAgICAgZWxzZQpAQCAtNTQ4LDcgKzU1NSw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJtaXNzaW9uVmFsaWRS
ZXF1CiAgICAgfQogCiAgICAgaWYgKG1fcGFnZS5wcmVmZXJlbmNlcygpLm1vY2tDYXB0dXJlRGV2
aWNlc0VuYWJsZWQoKSAmJiAhbV9wYWdlLnByZWZlcmVuY2VzKCkubW9ja0NhcHR1cmVEZXZpY2Vz
UHJvbXB0RW5hYmxlZCgpKSB7Ci0gICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgbV9j
dXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgbW9jayBkZXZpY2VzIGRv
bid0IHJlcXVpcmUgcHJvbXB0Iik7CisgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAiLCBt
b2NrIGRldmljZXMgZG9uJ3QgcmVxdWlyZSBwcm9tcHQiKTsKICAgICAgICAgZ3JhbnRSZXF1ZXN0
KCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTY3OCwxMiArNjg1LDIwIEBAIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6Y29tcHV0ZUZpbHRlcmVkRGV2CiB9CiAjZW5kaWYKIAot
dm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6ZW51bWVyYXRlTWVk
aWFEZXZpY2VzRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxTZWN1cml0eU9y
aWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRv
cExldmVsRG9jdW1lbnRPcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9y
PENhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjplbnVtZXJhdGVNZWRp
YURldmljZXNGb3JGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mLCBjb25zdCBTdHJpbmcmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKIHsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIEFMV0FZ
U19MT0coTE9HSURFTlRJRklFUik7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW3RoaXMsIGZyYW1l
SUQsIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCBjb21w
bGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShQZXJtaXNzaW9uSW5m
byBwZXJtaXNzaW9uSW5mbykgbXV0YWJsZSB7CisgICAgYXV0byogd2ViRnJhbWUgPSBtX3BhZ2Uu
cHJvY2VzcygpLndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghd2ViRnJhbWUpIHsKKyAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoeyB9LCB7IH0pOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIGF1dG8gdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGVG
cm9tU3RyaW5nKG1fcGFnZS5wYWdlTG9hZFN0YXRlKCkuYWN0aXZlVVJMKCkpOworICAgIGF1dG8g
dXNlck1lZGlhRG9jdW1lbnRPcmlnaW4gPSBTZWN1cml0eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmlu
Zyh3ZWJGcmFtZS0+dXJsKCkuc3RyaW5nKCkpOworCisgICAgYXV0byBjYWxsYmFjayA9IFt0aGlz
LCBmcmFtZUlELCB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCB1c2VyTWVkaWFEb2N1bWVudE9yaWdp
biwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oUGVybWlz
c2lvbkluZm8gcGVybWlzc2lvbkluZm8pIG11dGFibGUgewogICAgICAgICBhdXRvIGNhbGxDb21w
bGV0aW9uSGFuZGxlciA9IG1ha2VTY29wZUV4aXQoWyZjb21wbGV0aW9uSGFuZGxlcl0gewogICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9LCB7IH0pOwogICAgICAgICB9KTsKQEAgLTcz
Myw4ICs3NDgsNiBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShGcmFtZQogICAgIGdldFVzZXJNZWRpYVBl
cm1pc3Npb25JbmZvKGZyYW1lSUQsIFdURk1vdmUodXNlck1lZGlhRG9jdW1lbnRPcmlnaW4pLCBX
VEZNb3ZlKHRvcExldmVsRG9jdW1lbnRPcmlnaW4pLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiAjZWxz
ZQogICAgIFVOVVNFRF9QQVJBTShmcmFtZUlEKTsKLSAgICBVTlVTRURfUEFSQU0odXNlck1lZGlh
RG9jdW1lbnRPcmlnaW4pOwotICAgIFVOVVNFRF9QQVJBTSh0b3BMZXZlbERvY3VtZW50T3JpZ2lu
KTsKICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0sIHsgfSk7CiAjZW5kaWYKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXJQcm94eS5oCmluZGV4IDhmZWI0NTg3NTFhMjYyODdkNGUxYmIyYWE5Mzg1
MmYyNmQ4MzMzOGYuLmM4ZGVjNTZhNDJhZGIzMDczYWI5NjE2M2Y0N2M1ODc1MDExNjExY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuaApAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1
ZGUgIlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L01lZGlhUHJvZHVjZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oPgogI2luY2x1ZGUg
PHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1ZGUgPHd0Zi9EZXF1ZS5oPgogI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC02Myw3ICs2NCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
aW52YWxpZGF0ZVBlbmRpbmdSZXF1ZXN0cygpOwogCi0gICAgdm9pZCByZXF1ZXN0VXNlck1lZGlh
UGVybWlzc2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4mJiAgdXNlck1lZGlhRG9jdW1l
bnRPcmlnaW4sIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4mJiB0b3BMZXZlbERvY3VtZW50
T3JpZ2luLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7CisgICAgdm9pZCByZXF1ZXN0
VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVu
dGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVx
dWVzdCYmKTsKIAogICAgIHZvaWQgcmVzZXRBY2Nlc3MoT3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyPiBtYWluRnJhbWVJRCA9IHsgfSk7CiAgICAgdm9pZCB2aWV3SXNCZWNvbWluZ1Zp
c2libGUoKTsKQEAgLTcxLDcgKzcyLDcgQEAgcHVibGljOgogICAgIHZvaWQgZ3JhbnRSZXF1ZXN0
KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkmKTsKICAgICB2b2lkIGRlbnlSZXF1ZXN0
KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkmLCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxSZWFzb24sIGNvbnN0IFN0cmluZyYgaW52
YWxpZENvbnN0cmFpbnQgPSB7IH0pOwogCi0gICAgdm9pZCBlbnVtZXJhdGVNZWRpYURldmljZXNG
b3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3Jp
Z2luPiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYpOwor
ICAgIHZvaWQgZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDYXB0
dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKIAogICAgIHZvaWQgc3RvcENhcHR1cmUo
KTsKICAgICB2b2lkIHNjaGVkdWxlTmV4dFJlamVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNw
cAppbmRleCBkZGIwZDQ3MGVkZmExYTA1NDZlYjBmZGE4MjM3MjMwODI3MGU1OTA2Li5hMWM4MmY3
YmFjMzRlNjI2MWVlMWU5NjZmOTcxNTk4N2NmMmNmNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNw
cApAQCAtMzAsNyArMzAsNyBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAotVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RQcm94eShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94
eSYgbWFuYWdlciwgdWludDY0X3QgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBtYWluRnJh
bWVJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdp
bj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
PiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNl
PiYmIGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9E
ZXZpY2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQorVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eShV
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYgbWFuYWdlciwgVXNlck1lZGlh
UmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBtYWluRnJhbWVJ
RCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4m
JiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYm
IHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiYm
IGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9EZXZp
Y2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQogICAgIDogbV9tYW5h
Z2VyKCZtYW5hZ2VyKQogICAgICwgbV91c2VyTWVkaWFJRCh1c2VyTWVkaWFJRCkKICAgICAsIG1f
bWFpbkZyYW1lSUQobWFpbkZyYW1lSUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmgKaW5kZXggNjUyOTZmM2Ew
ZTkzODRiYTM2ZmRkNTlkMWRmMzAzN2YxYTZmNWRkYy4uODkyN2E2NjFlMmE2MTNjY2ViZTJhNTZk
NGI5ZDE1NmYyMjJmYzkzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaApAQCAtMjMsNiArMjMsNyBAQAog
I2luY2x1ZGUgPFdlYkNvcmUvQ2FwdHVyZURldmljZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRnJh
bWVJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVN0cmVhbVJlcXVlc3QuaD4K
KyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmg+CiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0z
Niw3ICszNyw3IEBAIGNsYXNzIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OwogCiBjbGFzcyBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5IDogcHVibGljIEFQSTo6
T2JqZWN0SW1wbDxBUEk6Ok9iamVjdDo6VHlwZTo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3Q+
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJv
eHk+IGNyZWF0ZShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYgbWFuYWdl
ciwgdWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtYWluRnJh
bWVJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luPiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0
dXJlRGV2aWNlPiYmIGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+
JiYgdmlkZW9EZXZpY2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQor
ICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eT4gY3JlYXRlKFVz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiBtYW5hZ2VyLCBXZWJDb3JlOjpV
c2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyIG1haW5GcmFtZUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVm
PFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9y
PFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6
Q2FwdHVyZURldmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVz
dCYmIHJlcXVlc3QpCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBVc2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5KG1hbmFnZXIsIHVzZXJNZWRpYUlELCBtYWluRnJhbWVJ
RCwgZnJhbWVJRCwgV1RGTW92ZSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiksIFdURk1vdmUodG9w
TGV2ZWxEb2N1bWVudE9yaWdpbiksIFdURk1vdmUoYXVkaW9EZXZpY2VzKSwgV1RGTW92ZSh2aWRl
b0RldmljZXMpLCBXVEZNb3ZlKHJlcXVlc3QpKSk7CiAgICAgfQpAQCAtNjcsNyArNjgsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXNQZXJzaXN0ZW50QWNjZXNzKCkgY29uc3QgeyByZXR1cm4gbV9o
YXNQZXJzaXN0ZW50QWNjZXNzOyB9CiAgICAgdm9pZCBzZXRIYXNQZXJzaXN0ZW50QWNjZXNzKCkg
eyBtX2hhc1BlcnNpc3RlbnRBY2Nlc3MgPSB0cnVlOyB9CiAKLSAgICB1aW50NjRfdCB1c2VyTWVk
aWFJRCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlck1lZGlhSUQ7IH0KKyAgICBXZWJDb3JlOjpVc2Vy
TWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNl
ck1lZGlhSUQ7IH0KICAgICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgbWFpbkZyYW1lSUQoKSBj
b25zdCB7IHJldHVybiBtX21haW5GcmFtZUlEOyB9CiAgICAgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lSUQ7IH0KIApAQCAtOTEsMTAgKzky
LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIFVzZXJNZWRpYVBlcm1pc3Np
b25SZXF1ZXN0UHJveHkoVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkmLCB1
aW50NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIG1haW5GcmFtZUlE
LCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4m
JiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYm
IHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiYm
IGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9EZXZp
Y2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7CisgICAgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RQcm94eShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYs
IFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIgbWFpbkZyYW1lSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6
U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6
OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURl
dmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmKTsKIAog
ICAgIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5KiBtX21hbmFnZXI7Ci0g
ICAgdWludDY0X3QgbV91c2VyTWVkaWFJRDsKKyAgICBXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0
SWRlbnRpZmllciBtX3VzZXJNZWRpYUlEOwogICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBt
X21haW5GcmFtZUlEOwogICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtX2ZyYW1lSUQ7CiAg
ICAgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBtX3VzZXJNZWRpYURvY3VtZW50U2VjdXJp
dHlPcmlnaW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBh
NjliN2RiNDVkNDQwMDhkZmQwNzdmZTVlNzAwMTk5MjlkOTFiZGNkLi5jMTcyMTkyYzE3MDQ0ZTA1
NTA5ODM5MzllYmUwMGI4YTkwOWU2NmJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKQEAgLTgwNjksMTIgKzgwNjksMTIgQEAgdm9pZCBXZWJQYWdlUHJveHk6Ondp
bGxTdGFydENhcHR1cmUoY29uc3QgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eSYgcmVx
dWUKIAogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlz
c2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlELCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiAgdXNlck1lZGlhRG9jdW1lbnRP
cmlnaW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9j
dW1lbnRPcmlnaW5EYXRhLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQor
dm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUoVXNl
ck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQogewogI2lmIEVOQUJM
RShNRURJQV9TVFJFQU0pCiAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1fcHJvY2Vzcy0+
d2ViRnJhbWUoZnJhbWVJRCkpOwogCi0gICAgdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5h
Z2VyKCkucmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZSh1c2VyTWVkaWFJRCwgZnJh
bWVJRCwgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCksIHRvcExl
dmVsRG9jdW1lbnRPcmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCksIFdURk1vdmUocmVxdWVzdCkp
OworICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLnJlcXVlc3RVc2VyTWVk
aWFQZXJtaXNzaW9uRm9yRnJhbWUodXNlck1lZGlhSUQsIGZyYW1lSUQsIFdURk1vdmUocmVxdWVz
dCkpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhSUQpOwogICAgIFVOVVNFRF9Q
QVJBTShmcmFtZUlEKTsKQEAgLTgwODQsMTMgKzgwODQsMTMgQEAgdm9pZCBXZWJQYWdlUHJveHk6
OnJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUodWludDY0X3QgdXNlck1lZGlhSUQs
IEZyYW0KICNlbmRpZgogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6ZW51bWVyYXRlTWVkaWFEZXZp
Y2VzRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLCBjb25zdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRPcmlnaW5EYXRhLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmlu
ZyYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJQYWdlUHJveHk6OmVudW1lcmF0ZU1l
ZGlhRGV2aWNlc0ZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQogewogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgV2Vi
RnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOwogICAgIE1F
U1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CiAKLSAgICB1c2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXIoKS5lbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShmcmFtZUlELCB1
c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgdG9wTGV2ZWxEb2N1
bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLmVudW1lcmF0ZU1l
ZGlhRGV2aWNlc0ZvckZyYW1lKGZyYW1lSUQsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
ICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKGZyYW1lSUQpOwogICAgIFVOVVNFRF9QQVJBTSh1c2Vy
TWVkaWFEb2N1bWVudE9yaWdpbkRhdGEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaAppbmRleCA3MTVlY2U1MWQzYzIxNmJmMTUzZjFjZTdhZTIxY2VjM2NlZWQzYjM0Li4zYjRk
ZDA3MDkyMDMzMGNhMDU3ZmU5ZTZlM2ZjNTk2MTQ1MjRlMjFlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTA1LDYgKzEwNSw3IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9UZXh0R3JhbnVsYXJpdHkuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1RleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0
aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KICNpbmNsdWRlIDxtZW1vcnk+
CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CkBAIC0xOTcyLDggKzE5NzMsOCBA
QCBwcml2YXRlOgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyUHJveHkmIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdl
cigpOwogI2VuZGlmCi0gICAgdm9pZCByZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1l
KHVpbnQ2NF90IHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5JZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRP
cmlnaW5JZGVudGlmaWVyLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7Ci0gICAgdm9p
ZCBlbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmln
aW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1l
bnRPcmlnaW5EYXRhLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RV
c2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50
aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1
ZXN0JiYpOworICAgIHZvaWQgZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJD
b3JlOjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKICAgICB2b2lkIGJlZ2lu
TW9uaXRvcmluZ0NhcHR1cmVEZXZpY2VzKCk7CiAKICAgICB2b2lkIHJ1bk1vZGFsKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXgg
OTUwZTUzOTI5OTJmNDE4ODM4YTE5M2UzMDNlMmYxYmJmNTc1ZWJmZC4uNDFmMTFhMjhkMzlhMDQy
ZmMwMzFhZWIwNDFlMzYyODU1MDczMTI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtMjg1LDggKzI4NSw4IEBAIG1lc3NhZ2Vz
IC0+IFdlYlBhZ2VQcm94eSB7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICMgTWVk
aWFTdGVhbSBtZXNzYWdlcwotICAgIFJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUo
dWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBz
dHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHVzZXJNZWRpYURvY3VtZW50T3JpZ2lu
SWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BMZXZlbERv
Y3VtZW50T3JpZ2luSWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVz
dCByZXF1ZXN0KQotICAgIEVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
IHVzZXJNZWRpYURvY3VtZW50T3JpZ2luSWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luRGF0YSB0b3BMZXZlbERvY3VtZW50T3JpZ2luSWRlbnRpZmllcikgLT4gKFZlY3Rv
cjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiBkZXZpY2VzLCBTdHJpbmcgbWVkaWFEZXZpY2VJZGVu
dGlmaWVySGFzaFNhbHQpIEFzeW5jCisgICAgUmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JG
cmFtZShXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgV2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpNZWRpYVN0cmVh
bVJlcXVlc3QgcmVxdWVzdCkKKyAgICBFbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkgLT4gKFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJl
RGV2aWNlPiBkZXZpY2VzLCBTdHJpbmcgbWVkaWFEZXZpY2VJZGVudGlmaWVySGFzaFNhbHQpIEFz
eW5jCiAgICAgQmVnaW5Nb25pdG9yaW5nQ2FwdHVyZURldmljZXMoKQogI2VuZGlmCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0cmVhbS9Vc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL01lZGlh
U3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5jcHAKaW5kZXggZmQ2YWI0
ZGY3MmYyMWQwOTg5NzcxYTUwYTBkODI1ZDAyZThhZmYzNi4uYTBhNGVkY2ZlMGI4MzlhMDU5OTFk
NjI1NTUwYjdkN2M2NDQwYWE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlci5jcHAKQEAgLTc5LDggKzc5LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXI6OnNlbmRVc2VyTWVkaWFSZXF1ZXN0KFVzZXJNZWRpYVJlcXVlc3Qm
IHUKICAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJh
bWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKLSAgICBhdXRvKiB0b3BMZXZlbERvY3VtZW50
T3JpZ2luID0gdXNlclJlcXVlc3QudG9wTGV2ZWxEb2N1bWVudE9yaWdpbigpOwotICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9u
Rm9yRnJhbWUodXNlclJlcXVlc3QuaWRlbnRpZmllcigpLnRvVUludDY0KCksIHdlYkZyYW1lLT5m
cmFtZUlEKCksIHVzZXJSZXF1ZXN0LnVzZXJNZWRpYURvY3VtZW50T3JpZ2luKCktPmRhdGEoKSwg
dG9wTGV2ZWxEb2N1bWVudE9yaWdpbi0+ZGF0YSgpLCB1c2VyUmVxdWVzdC5yZXF1ZXN0KCkpKTsK
KyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0VXNlck1lZGlh
UGVybWlzc2lvbkZvckZyYW1lKHVzZXJSZXF1ZXN0LmlkZW50aWZpZXIoKSwgd2ViRnJhbWUtPmZy
YW1lSUQoKSwgdXNlclJlcXVlc3QucmVxdWVzdCgpKSk7CiB9CiAKIHZvaWQgVXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyOjpjYW5jZWxVc2VyTWVkaWFSZXF1ZXN0KFVzZXJNZWRpYVJl
cXVlc3QmIHJlcXVlc3QpCkBAIC0xMTcsOSArMTE2LDkgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXI6Om1lZGlhQ2FuU3RhcnQoRG9jdW1lbnQmIGRvY3VtZW50KQogICAg
ICAgICBzZW5kVXNlck1lZGlhUmVxdWVzdChwZW5kaW5nUmVxdWVzdCk7CiB9CiAKLXZvaWQgVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVk
KHVpbnQ2NF90IHJlcXVlc3RJRCwgQ2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlLCBDYXB0dXJl
RGV2aWNlJiYgdmlkZW9EZXZpY2UsIFN0cmluZyYmIGRldmljZUlkZW50aWZpZXJIYXNoU2FsdCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBVc2Vy
TWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQo
VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgcmVxdWVzdElELCBDYXB0dXJlRGV2aWNlJiYgYXVk
aW9EZXZpY2UsIENhcHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZSwgU3RyaW5nJiYgZGV2aWNlSWRl
bnRpZmllckhhc2hTYWx0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiB7Ci0gICAgYXV0byByZXF1ZXN0ID0gbV9vbmdvaW5nVXNlck1lZGlhUmVxdWVzdHMu
dGFrZShtYWtlT2JqZWN0SWRlbnRpZmllcjxVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllclR5cGU+
KHJlcXVlc3RJRCkpOworICAgIGF1dG8gcmVxdWVzdCA9IG1fb25nb2luZ1VzZXJNZWRpYVJlcXVl
c3RzLnRha2UocmVxdWVzdElEKTsKICAgICBpZiAoIXJlcXVlc3QpIHsKICAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTI4LDkgKzEyNyw5IEBAIHZvaWQg
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFu
dGVkKHVpbnQ2NF90IHJlcXVlCiAgICAgcmVxdWVzdC0+YWxsb3coV1RGTW92ZShhdWRpb0Rldmlj
ZSksIFdURk1vdmUodmlkZW9EZXZpY2UpLCBXVEZNb3ZlKGRldmljZUlkZW50aWZpZXJIYXNoU2Fs
dCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBVc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCBy
ZXF1ZXN0SUQsIFVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uIHJlYXNv
biwgU3RyaW5nJiYgaW52YWxpZENvbnN0cmFpbnQpCit2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFVzZXJNZWRpYVJlcXVlc3RJ
ZGVudGlmaWVyIHJlcXVlc3RJRCwgVXNlck1lZGlhUmVxdWVzdDo6TWVkaWFBY2Nlc3NEZW5pYWxS
ZWFzb24gcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCkKIHsKLSAgICBhdXRvIHJl
cXVlc3QgPSBtX29uZ29pbmdVc2VyTWVkaWFSZXF1ZXN0cy50YWtlKG1ha2VPYmplY3RJZGVudGlm
aWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT4ocmVxdWVzdElEKSk7CisgICAgYXV0
byByZXF1ZXN0ID0gbV9vbmdvaW5nVXNlck1lZGlhUmVxdWVzdHMudGFrZShyZXF1ZXN0SUQpOwog
ICAgIGlmICghcmVxdWVzdCkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNDUsNyArMTQ0LDcgQEAg
dm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OmVudW1lcmF0ZU1lZGlhRGV2
aWNlcyhEb2N1bWVudCYgZG9jdW1lbnQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1f
cGFnZS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RW51bWVyYXRl
TWVkaWFEZXZpY2VzRm9yRnJhbWUgeyBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpLT5m
cmFtZUlEKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkuZGF0YSgpLCBkb2N1bWVudC50b3BP
cmlnaW4oKS5kYXRhKCkgfSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIG1fcGFn
ZS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RW51bWVyYXRlTWVk
aWFEZXZpY2VzRm9yRnJhbWUgeyBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpLT5mcmFt
ZUlEKCkgfSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCiBVc2VyTWVkaWFDbGll
bnQ6OkRldmljZUNoYW5nZU9ic2VydmVyVG9rZW4gVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RN
YW5hZ2VyOjphZGREZXZpY2VDaGFuZ2VPYnNlcnZlcihGdW5jdGlvbjx2b2lkKCk+JiYgb2JzZXJ2
ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgKaW5kZXgg
MDQ3YWZhMjFjZmNlZTNkMDA5YmRlMzYxNzc2YzgyMTkzMGE0ZGRjYi4uNmZiNGI5MzA2YWZiODk4
Y2Q1NmU4NDMzZDZlNDE1ZGYzMjlmNzdlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0cmVhbS9Vc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXIuaApAQCAtNDIsOCArNDIsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IHN0YXJ0VXNlck1lZGlhUmVxdWVzdChXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0Jik7CiAgICAg
dm9pZCBjYW5jZWxVc2VyTWVkaWFSZXF1ZXN0KFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3QmKTsK
LSAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0X3QsIFdlYkNvcmU6OkNh
cHR1cmVEZXZpY2UmJiBhdWRpb0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVv
RGV2aWNlLCBTdHJpbmcmJiBkZXZpY2VJZGVudGlmaWVySGFzaFNhbHQsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJik7Ci0gICAgdm9pZCB1c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodWludDY0
X3QsIFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uLCBT
dHJpbmcmJik7CisgICAgdm9pZCB1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKFdlYkNvcmU6OlVz
ZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgYXVkaW9E
ZXZpY2UsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZSwgU3RyaW5nJiYgZGV2
aWNlSWRlbnRpZmllckhhc2hTYWx0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAg
IHZvaWQgdXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0OjpNZWRpYUFjY2Vzc0RlbmlhbFJl
YXNvbiwgU3RyaW5nJiYpOwogCiAgICAgdm9pZCBlbnVtZXJhdGVNZWRpYURldmljZXMoV2ViQ29y
ZTo6RG9jdW1lbnQmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCAxMGVmNzllOGQyZmY1M2JjMzg1
MDA0YjZiNTM5ZDFhZGI4ZTU0ODNlLi5jYzRjMzZkZjUxMGQ2NzQ1NGI1Njg2OTc1MTY0OGMwNzIy
NzM1ZWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cApAQCAtNDQzMiwxNCArNDQzMiwxNCBAQCB2b2lkIFdlYlBhZ2U6OmRpZFJlY2VpdmVOb3RpZmlj
YXRpb25QZXJtaXNzaW9uRGVjaXNpb24odWludDY0X3Qgbm90aWZpY2F0aW9uSUQsCiAKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogCi12b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0dy
YW50ZWQodWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRp
b0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBt
ZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2FsdCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYg
aGFuZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQoVXNlck1lZGlhUmVxdWVzdElk
ZW50aWZpZXIgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRpb0Rldmlj
ZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBtZWRpYURl
dmljZUlkZW50aWZpZXJIYXNoU2FsdCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYgaGFuZGxl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7CiAKICAgICBtX3Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci0+dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRl
ZCh1c2VyTWVkaWFJRCwgV1RGTW92ZShhdWRpb0RldmljZSksIFdURk1vdmUodmlkZW9EZXZpY2Up
LCBXVEZNb3ZlKG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0Rlbmll
ZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgdWludDY0X3QgcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlk
Q29uc3RyYWludCkKK3ZvaWQgV2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFVzZXJN
ZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCB1aW50NjRfdCByZWFzb24sIFN0cmlu
ZyYmIGludmFsaWRDb25zdHJhaW50KQogewogICAgIG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyLT51c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodXNlck1lZGlhSUQsIHN0YXRpY19j
YXN0PFVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uPihyZWFzb24pLCBX
VEZNb3ZlKGludmFsaWRDb25zdHJhaW50KSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggZmJjZDhjYzZmYmYyOWUwMWExN2QzOWQ1YjVhZmE5Mjcx
MzZmNzY2OS4uY2Q1Yjc5MGZmMDlmOGJhMDIxN2ExYTJmNmY0NmUyOTU3YWE2OWY4ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtODUsNiArODUsNyBA
QAogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckFjdGl2aXR5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9V
c2VyQ29udGVudFR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW50ZXJmYWNlTGF5b3V0
RGlyZWN0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmll
ci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclNjcmlwdFR5cGVzLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9WaXNpYmlsaXR5U3RhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVLZXlib2Fy
ZFVJTW9kZS5oPgpAQCAtMTY1NSw4ICsxNjU2LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJl
Y2VpdmVOb3RpZmljYXRpb25QZXJtaXNzaW9uRGVjaXNpb24odWludDY0X3Qgbm90aWZpY2F0aW9u
SUQsIGJvb2wgYWxsb3dlZCk7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotICAgIHZvaWQg
dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6
Q2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlVUlELCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYg
dmlkZW9EZXZpY2VVSUQsIFN0cmluZyYmIG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsK
LSAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwg
dWludDY0X3QgcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCk7CisgICAgdm9pZCB1
c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlm
aWVyLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgYXVkaW9EZXZpY2VVSUQsIFdlYkNvcmU6OkNh
cHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZVVJRCwgU3RyaW5nJiYgbWVkaWFEZXZpY2VJZGVudGlm
aWVySGFzaFNhbHQsIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFdlYkNvcmU6
OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCB1aW50NjRfdCByZWFzb24sIFN0cmluZyYmIGlu
dmFsaWRDb25zdHJhaW50KTsKIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDE1NWYxZjRhNGE5NjI4
OWUxMDg3MWYyMmE1OTU1MDcwZWQwZWU1OGQuLjNhN2QxYWYyNWY1YWE2N2VkNTIyZTA1MzI2ZDQ4
YTliY2U0OGZkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbgpAQCAtMzczLDggKzM3Myw4IEBAIEdlbmVyYXRlU3ludGhl
dGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50OF90IFdlYktpdDo6U3ludGhldGljRWRpdGluZ0Nv
bW1hbmRUeXBlCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICMgTWVkaWFTdGVhbQot
ICAgIFVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNv
cmU6OkNhcHR1cmVEZXZpY2UgYXVkaW9EZXZpY2UsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2Ugdmlk
ZW9EZXZpY2UsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2FsdCwgV2ViS2l0OjpT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkgLT4gKCkgQXN5
bmMKLSAgICBVc2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodWludDY0X3QgdXNlck1lZGlhSUQsIHVp
bnQ2NF90IHJlYXNvbiwgU3RyaW5nIGludmFsaWRDb25zdHJhaW50KQorICAgIFVzZXJNZWRpYUFj
Y2Vzc1dhc0dyYW50ZWQoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1l
ZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UgYXVkaW9EZXZpY2UsIFdlYkNvcmU6OkNhcHR1
cmVEZXZpY2UgdmlkZW9EZXZpY2UsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2Fs
dCwgV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSkgLT4gKCkgQXN5bmMKKyAgICBVc2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQoV2ViQ29yZTo6VXNl
ck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIHVpbnQ2NF90IHJlYXNvbiwgU3Ry
aW5nIGludmFsaWRDb25zdHJhaW50KQogICAgIENhcHR1cmVEZXZpY2VzQ2hhbmdlZCgpCiAjZW5k
aWYKIAo=
</data>
<flag name="commit-queue"
          id="428769"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412340</attachid>
            <date>2020-10-26 11:19:21 -0700</date>
            <delta_ts>2020-11-02 00:35:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218192-20201026191918.patch</filename>
            <type>text/plain</type>
            <size>45548</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGMyN2FjN2VlMzRmNzU2
MmY2MjI2NGE4ODc1Zjk1ZjEwYmY5OTljNy4uYzM3MTQ0Y2I3YjhiYTJkYjJhZTUxMzkyMmFjZjVi
NGFlYzg0Y2Q2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTEwLTI2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTdG9wIHNlbmRpbmcgb3Jp
Z2lucyBmcm9tIFdlYlByb2Nlc3MgdG8gVUlQcm9jZXNzIGZvciBnZXRVc2VyTWVkaWEgcmVxdWVz
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODE5
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNo
YW5nZSBvZiBiZWhhdmlvciwgbW92ZSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciBpbiBpdHMg
b3duIGhlYWRlci4KKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAg
ICAqIEhlYWRlcnMuY21ha2U6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVk
aWFSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6OnVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlVz
ZXJNZWRpYVJlcXVlc3Q6OnRvcExldmVsRG9jdW1lbnRPcmlnaW4gY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaDoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMjYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBhIFdlYWtI
YXNoU2V0IGZvciBEb2N1bWVudDo6bV9jYXB0aW9uUHJlZmVyZW5jZXNDaGFuZ2VkRWxlbWVudHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggY2E0NmM2YmFlODkzMjMzOGYyYWRlMjllZjBhZTkzMWFlZTdjNTlmNy4uYjYz
NWE3NmRkY2I3YWJmNjJlZDk5Mjg2MzU3NTE2YTcxZGI1ZGJiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSw0NyBAQAorMjAyMC0xMC0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisK
KyAgICAgICAgU3RvcCBzZW5kaW5nIG9yaWdpbnMgZnJvbSBXZWJQcm9jZXNzIHRvIFVJUHJvY2Vz
cyBmb3IgZ2V0VXNlck1lZGlhIHJlcXVlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgxOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBQYXNzIGRpcmVjdGx5IGEgVXNlck1lZGlhUmVxdWVzdElkZW50
aWZpZXIgdGhyb3VnaCBJUEMuCisgICAgICAgIFN0b3AgcGFzc2luZyBvcmlnaW5zIGZyb20gSVBD
IGFuZCBpbnN0ZWFkIGNvbXB1dGUgdGhlbSBmcm9tIFVJUHJvY2VzcyBzaWRlLgorCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICogVUlQcm9jZXNzL1VzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmRlbnlSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6Omdy
YW50UmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlclByb3h5OjpmaW5pc2hHcmFudGluZ1JlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpV
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QpOgor
ICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6
cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25JbnZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJL
aXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1l
ZGlhUGVybWlzc2lvblZhbGlkUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpnZXRVc2VyTWVkaWFQZXJtaXNzaW9uSW5mbyk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFBy
b3h5OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dFByb3h5Ojp1c2VyTWVkaWFJRCBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cmVxdWVzdFVzZXJNZWRp
YVBlcm1pc3Npb25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZW51
bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyOjpzZW5kVXNlck1lZGlhUmVxdWVzdCk6CisgICAgICAgIChXZWJLaXQ6OlVzZXJN
ZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCk6
CisgICAgICAgIChXZWJLaXQ6OlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjo6dXNl
ck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyOjplbnVtZXJhdGVNZWRpYURldmljZXMpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluOgorCiAyMDIwLTEwLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgVlA5IFByb2ZpbGUgMiAoMTAtYml0
IGNvbG9yKSBpbiBXZWJSVEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IDk5MTgzYTcyM2VhNGY4NDk1
ZGZiZDY0YzcyMDI3MzFmYWU2MTQ2M2IuLjc1ZjU1M2YxNDFiY2ZjZWYzOWNlNGViMDFmZWY1Mjg0
ZWE2YzNhZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtMTAzLDYgKzEwMyw3IEBAIHNldChXZWJD
b3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1Vz
ZXJNZWRpYUNsaWVudC5oCiAgICAgTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFDb250cm9s
bGVyLmgKICAgICBNb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorICAgIE1v
ZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaAogCiAgICAgTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCiAgICAgTW9kdWxlcy9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNsaWVudC5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAppbmRleCBkZjJhNWU0NGVjMTI3
OWMwYTIzM2JjMWRhYzQ3MzU5ZDUzNWUxODM2Li44NjBlN2UwOGQyMDNiMTYwMDBlMzk5M2I1ODMw
N2JhNDFiNzg3YzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKQEAgLTczLDIwICs3Myw2IEBAIFVzZXJNZWRp
YVJlcXVlc3Q6On5Vc2VyTWVkaWFSZXF1ZXN0KCkKICAgICAgICAgbV9hbGxvd0NvbXBsZXRpb25I
YW5kbGVyKCk7CiB9CiAKLVNlY3VyaXR5T3JpZ2luKiBVc2VyTWVkaWFSZXF1ZXN0Ojp1c2VyTWVk
aWFEb2N1bWVudE9yaWdpbigpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci19Ci0KLVNlY3VyaXR5T3JpZ2luKiBVc2Vy
TWVkaWFSZXF1ZXN0Ojp0b3BMZXZlbERvY3VtZW50T3JpZ2luKCkgY29uc3QKLXsKLSAgICBpZiAo
IW1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAg
cmV0dXJuICZtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnRvcE9yaWdpbigpOwotfQotCiBzdGF0
aWMgYm9vbCBoYXNJbnZhbGlkR2V0RGlzcGxheU1lZGlhQ29uc3RyYWludChjb25zdCBNZWRpYUNv
bnN0cmFpbnRzJiBjb25zdHJhaW50cykKIHsKICAgICAvLyBodHRwczovL3czYy5naXRodWIuaW8v
bWVkaWFjYXB0dXJlLXNjcmVlbi1zaGFyZS8jbmF2aWdhdG9yLWFkZGl0aW9ucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApp
bmRleCBkOTg3YWQzMjQ1ZDZiZjJiOWNmNDFlZjQ1YzJiN2MwMDAzMDFiYWQzLi5jM2E5MDMyNDU4
OTkyMTJkZTNjYzUzMDFjYTYyZWRiYzk0M2U3MWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApAQCAtNDAsOCArNDAs
OCBAQAogI2luY2x1ZGUgIk1lZGlhQ29uc3RyYWludHMuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVh
bVByaXZhdGUuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbVJlcXVlc3QuaCIKKyNpbmNsdWRlICJV
c2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFu
ZGxlci5oPgotI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3Rm
L1VuaXF1ZVJlZi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MSw5ICs1MSw2IEBAIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBJRExUeXBlPiBjbGFzcyBE
T01Qcm9taXNlRGVmZXJyZWQ7CiAKLWVudW0gVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXJUeXBl
IHsgfTsKLXVzaW5nIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmll
cjxVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllclR5cGU+OwotCiBjbGFzcyBVc2VyTWVkaWFSZXF1
ZXN0IDogcHVibGljIFJlZkNvdW50ZWQ8VXNlck1lZGlhUmVxdWVzdD4sIHB1YmxpYyBBY3RpdmVE
T01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUmVxdWVzdD4gY3Jl
YXRlKERvY3VtZW50JiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExJbnRlcmZhY2U8TWVkaWFTdHJlYW0+PiYmKTsKQEAgLTc0LDggKzcxLDYgQEAgcHVibGljOgog
ICAgIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGF1ZGlvQ29uc3RyYWludHMoKSBjb25zdCB7IHJl
dHVybiBtX3JlcXVlc3QuYXVkaW9Db25zdHJhaW50czsgfQogICAgIGNvbnN0IE1lZGlhQ29uc3Ry
YWludHMmIHZpZGVvQ29uc3RyYWludHMoKSBjb25zdCB7IHJldHVybiBtX3JlcXVlc3QudmlkZW9D
b25zdHJhaW50czsgfQogCi0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlPcmlnaW4qIHVzZXJN
ZWRpYURvY3VtZW50T3JpZ2luKCkgY29uc3Q7Ci0gICAgV0VCQ09SRV9FWFBPUlQgU2VjdXJpdHlP
cmlnaW4qIHRvcExldmVsRG9jdW1lbnRPcmlnaW4oKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9S
VCBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKIAogICAgIGNvbnN0IE1lZGlhU3RyZWFtUmVx
dWVzdCYgcmVxdWVzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVxdWVzdDsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRp
Zmllci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1
ZXN0SWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4OGE1NzUxMDNjNjU4MDQ3NTM3YzAzMzRjNjQ3
YzhiMGIwYjY2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICog
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisg
KiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlm
aWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworZW51bSBVc2VyTWVkaWFSZXF1ZXN0SWRl
bnRpZmllclR5cGUgeyB9OwordXNpbmcgVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgPSBPYmpl
Y3RJZGVudGlmaWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBiMzAzMzQyZDQ1MTE4ZjA5OGE0YTIzM2E0N2E5Y2VmOTJjZjlh
NTJkLi5hZjcyYjNmNWZiYWU1ZDE4MjJjMmQ1ZWNhZWQ4YjVmMjc5ZDJkZjNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDM1
LDYgKzEwMzUsNyBAQAogCQk0MTJERTRCODIxOTI4NUMwMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJp
bGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTJERTRCNjIxOTI4NUJGMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggKi87IH07CiAJ
CTQxMkRFRjFEMjNBOTE4NjYwMEQ4NDBGNiAvKiBNb2NrQXVkaW9TaGFyZWRVbml0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzQ0RUNFQjFFMEM0QUU1
MDAwRDA5NDQgLyogTW9ja0F1ZGlvU2hhcmVkVW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQxMkRFRjFGMjNBOTE4QTMwMEQ4NDBGNiAvKiBC
YXNlQXVkaW9TaGFyZWRVbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTc3RjUxRTIzODI1NDVFMDBDMDQ0ODYgLyogQmFzZUF1ZGlvU2hhcmVkVW5p
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQx
MkZGOTNEMjU0NzIwODMwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEyRkY5M0IyNTQ3
MDk3MDAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDEzM0NCOEIyMEY4MEU5OTAw
RTg5QjExIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VDb2NvYS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTMzQ0I4OTIwRjgwRTg2MDBFODlCMTEg
LyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29hLmNwcCAqLzsgfTsKIAkJNDEzNkM1N0EyMzk4
RTVCRTAwMjQ5N0QzIC8qIEludGVybmFsc01hcExpa2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzNkM1NzgyMzk4RTVCNTAwMjQ5N0QzIC8qIElu
dGVybmFsc01hcExpa2UuY3BwICovOyB9OwogCQk0MTM2QzU3QzIzOThFQ0NGMDAyNDk3RDMgLyog
SlNJbnRlcm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJENkYzRTkyMUMxRjg1NTUwMDYxREJENiAvKiBKU0ludGVybmFsc01hcExp
a2UuY3BwICovOyB9OwpAQCAtNzUxMiw2ICs3NTEzLDcgQEAKIAkJNDEyOUM5ODcxRjU4NjYyRDAw
OUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZWFkYWJsZVN0cmVhbVNpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0MTJCQTVGRTIxOEM2NTE4MDAzNjU0NzQgLyogUlRDUE11eFBvbGljeS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQTXV4UG9saWN5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMkRFNEI2MjE5Mjg1QkYwMDc1RjNBNyAvKiBSVENSdHBD
YXBhYmlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwQ2Fw
YWJpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMkZGOTNCMjU0NzA5
NzAwMDFERjAzNiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MTMwMTVENTFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hS
ZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaFJl
c3BvbnNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEzMDE1RDUxQzdCNTcw
NDAwMDkxQzZGIC8qIEZldGNoQm9keVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGZXRjaEJvZHlTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTMwMTVENjFDN0I1NzA0MDAwOTFDNkUgLyogRmV0Y2hSZXNwb25zZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaFJlc3BvbnNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNzAzOSw2ICsxNzA0MSw3IEBACiAJCQkJMDcyMjFCOEYxN0NF
QzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuaCAqLywKIAkJCQkwNzIyMUI5MDE3
Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhUmVxdWVzdC5jcHAgKi8sCiAJCQkJMDcyMjFCOTEx
N0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYVJlcXVlc3QuaCAqLywKKwkJCQk0MTJGRjkzQjI1
NDcwOTcwMDAxREYwMzYgLyogVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaCAqLywKIAkJCSk7
CiAJCQlwYXRoID0gbWVkaWFzdHJlYW07CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAt
MzQ2ODQsNiArMzQ2ODcsNyBAQAogCQkJCTA3OEUwOTJFMTdEMTREMUMwMDQyMEFBMSAvKiBVc2Vy
TWVkaWFDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTJGMTdEMTREMUMwMDQyMEFB
MSAvKiBVc2VyTWVkaWFDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzhFMDkzMDE3
RDE0RDFDMDA0MjBBQTEgLyogVXNlck1lZGlhUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDEyRkY5M0QyNTQ3MjA4MzAwMURGMDM2IC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk3QzNCNzk3MjE5MDg3NTdCMDBCNDdBMkQgLyogVXNlck1lc3Nh
Z2VIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3Q0U2ODM0NTE5MjE0M0E4MDBGNEQ5Mjgg
LyogVXNlck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0NF
NjgzNDcxOTIxODIxNTAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3JUeXBl
cy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5w
eQppbmRleCAwNTg1NzdlNWY3ZGViNmQyYmRmMjViMWM3NTUzNTZmOTZhZGY4ODg5Li45NmY4OWFk
OGM2YzYyMzhiZGY4Mzk2MTQ4YTgzODAxMmVjOTI0ODFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTIzMyw2ICsyMzMsNyBAQCBkZWYgdHlwZXNfdGhhdF9j
YW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViQ29yZTo6U2hhcmVkU3Ry
aW5nSGFzaCcsCiAgICAgICAgICdXZWJDb3JlOjpTbGVlcERpc2FibGVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyJywKKyAgICAgICAg
J1dlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6
OldlYlNvY2tldElkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpBY3Rpdml0eVN0YXRlQ2hh
bmdlSUQnLAogICAgICAgICAnV2ViS2l0OjpBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlcklk
ZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwCmluZGV4IDc2MzQz
OGE1ZjIxYzU4YTg1NjNlMTY5MzI2ZDg4NzI5ZDkyNzcyNzcuLmI1ZDM4ZTlmZTI2YjRhNTZlYzhl
ZTk2YmRmMzE3MDc5OWM2ZmM5NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5j
cHAKQEAgLTIwNCw3ICsyMDQsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5OjpkZW55UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdQogICAgIGlmICgh
bV9wYWdlLmhhc1J1bm5pbmdQcm9jZXNzKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEFMV0FZ
U19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgpLCAiLCByZWFzb246ICIs
IHJlYXNvbik7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCByZXF1ZXN0LnVzZXJNZWRp
YUlEKCkudG9VSW50NjQoKSwgIiwgcmVhc29uOiAiLCByZWFzb24pOwogCiAgICAgaWYgKHJlYXNv
biA9PSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5p
YWxSZWFzb246OlBlcm1pc3Npb25EZW5pZWQpCiAgICAgICAgIG1fZGVuaWVkUmVxdWVzdHMuYXBw
ZW5kKERlbmllZFJlcXVlc3QgeyByZXF1ZXN0Lm1haW5GcmFtZUlEKCksIHJlcXVlc3QudXNlck1l
ZGlhRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpLCByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1
cml0eU9yaWdpbigpLCByZXF1ZXN0LnJlcXVpcmVzQXVkaW9DYXB0dXJlKCksIHJlcXVlc3QucmVx
dWlyZXNWaWRlb0NhcHR1cmUoKSwgcmVxdWVzdC5yZXF1aXJlc0Rpc3BsYXlDYXB0dXJlKCkgfSk7
CkBAIC0yMjUsNyArMjI1LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFn
ZXJQcm94eTo6Z3JhbnRSZXF1ZXN0KFVzZXJNZWRpYVBlcm1pc3Npb25SZXEKICAgICAgICAgcmV0
dXJuOwogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSAgICBBTFdBWVNfTE9HKExPR0lERU5U
SUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKSwgIiwgdmlkZW86ICIsIHJlcXVlc3QudmlkZW9E
ZXZpY2UoKS5sYWJlbCgpLCAiLCBhdWRpbzogIiwgcmVxdWVzdC5hdWRpb0RldmljZSgpLmxhYmVs
KCkpOworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCksICIsIHZpZGVvOiAiLCByZXF1ZXN0LnZpZGVvRGV2aWNlKCkubGFiZWwoKSwg
IiwgYXVkaW86ICIsIHJlcXVlc3QuYXVkaW9EZXZpY2UoKS5sYWJlbCgpKTsKIAogICAgIGF1dG8m
IHVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlPcmlnaW4gPSByZXF1ZXN0LnVzZXJNZWRpYURvY3Vt
ZW50U2VjdXJpdHlPcmlnaW4oKTsKICAgICBhdXRvJiB0b3BMZXZlbERvY3VtZW50U2VjdXJpdHlP
cmlnaW4gPSByZXF1ZXN0LnRvcExldmVsRG9jdW1lbnRTZWN1cml0eU9yaWdpbigpOwpAQCAtMjQy
LDcgKzI0Miw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6
OmdyYW50UmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OmZpbmlz
aEdyYW50aW5nUmVxdWVzdChVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5JiByZXF1ZXN0
KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgcmVxdWVzdC51c2VyTWVkaWFJRCgp
KTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHJlcXVlc3QudXNlck1lZGlhSUQoKS50
b1VJbnQ2NCgpKTsKICAgICBpZiAoIVVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0b24o
KS53aWxsQ3JlYXRlTWVkaWFTdHJlYW0oKnRoaXMsIHJlcXVlc3QuaGFzQXVkaW9EZXZpY2UoKSwg
cmVxdWVzdC5oYXNWaWRlb0RldmljZSgpKSkgewogICAgICAgICBkZW55UmVxdWVzdChyZXF1ZXN0
LCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxS
ZWFzb246Ok90aGVyRmFpbHVyZSwgIlVuYWJsZSB0byBleHRlbmQgc2FuZGJveC4iKTsKICAgICAg
ICAgcmV0dXJuOwpAQCAtMzkyLDEzICszOTIsMjIgQEAgVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHk6OlJlcXVlc3RBY3Rpb24gVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QK
IH0KICNlbmRpZgogCi12b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlE
LCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRp
YURvY3VtZW50T3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3QpCit2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZv
ckZyYW1lKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVkaWFTdHJlYW1SZXF1ZXN0JiYgdXNlclJlcXVlc3Qp
CiB7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBpZiAoIW1fcGFnZS5oYXNSdW5uaW5n
UHJvY2VzcygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJ
RVIsIHVzZXJNZWRpYUlEKTsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIHVzZXJNZWRp
YUlELnRvVUludDY0KCkpOworCisgICAgYXV0byogd2ViRnJhbWUgPSBtX3BhZ2UucHJvY2Vzcygp
LndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghd2ViRnJhbWUpIHsKKyAgICAgICAgbV9wYWdl
LnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1c2VyTWVk
aWFJRCwgdG9XZWJDb3JlKFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHk6OlVzZXJNZWRp
YUFjY2Vzc0RlbmlhbFJlYXNvbjo6UGVybWlzc2lvbkRlbmllZCksIHsgfSkpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgYXV0byB0b3BMZXZlbERvY3VtZW50T3JpZ2luID0gU2VjdXJp
dHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcobV9wYWdlLnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVV
UkwoKSk7CisgICAgYXV0byB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2lu
OjpjcmVhdGVGcm9tU3RyaW5nKHdlYkZyYW1lLT51cmwoKS5zdHJpbmcoKSk7CiAKICAgICBhdXRv
IHJlcXVlc3QgPSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpjcmVhdGUoKnRoaXMs
IHVzZXJNZWRpYUlELCBtX3BhZ2UubWFpbkZyYW1lKCktPmZyYW1lSUQoKSwgZnJhbWVJRCwgV1RG
TW92ZSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiksIFdURk1vdmUodG9wTGV2ZWxEb2N1bWVudE9y
aWdpbiksIHsgfSwgeyB9LCBXVEZNb3ZlKHVzZXJSZXF1ZXN0KSk7CiAgICAgaWYgKG1fY3VycmVu
dFVzZXJNZWRpYVJlcXVlc3QpIHsKQEAgLTQxNyw4ICs0MjYsNiBAQCB2b2lkIFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZv
ckZyYW1lKAogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhSUQpOwogICAgIFVOVVNF
RF9QQVJBTShmcmFtZUlEKTsKLSAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhRG9jdW1lbnRPcmln
aW4pOwotICAgIFVOVVNFRF9QQVJBTSh0b3BMZXZlbERvY3VtZW50T3JpZ2luKTsKICAgICBVTlVT
RURfUEFSQU0odXNlclJlcXVlc3QpOwogI2VuZGlmCiB9CkBAIC00NjEsNyArNDY4LDcgQEAgdm9p
ZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6c3RhcnRQcm9jZXNzaW5n
VXNlck1lZGlhUGVybWlzc2lvblIKIAogdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0KCkKIHsKLSAgICBB
TFdBWVNfTE9HKExPR0lERU5USUZJRVIsIG1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnVzZXJN
ZWRpYUlEKCksICIsIHBlcnNpc3RlbnQgYWNjZXNzOiAiLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1
ZXN0LT5oYXNQZXJzaXN0ZW50QWNjZXNzKCkpOworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAi
LCBwZXJzaXN0ZW50IGFjY2VzczogIiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+aGFzUGVy
c2lzdGVudEFjY2VzcygpKTsKIAogICAgIGF1dG8mIHVzZXJNZWRpYURvY3VtZW50U2VjdXJpdHlP
cmlnaW4gPSBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFEb2N1bWVudFNlY3Vy
aXR5T3JpZ2luKCk7CiAgICAgYXV0byYgdG9wTGV2ZWxEb2N1bWVudFNlY3VyaXR5T3JpZ2luID0g
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dG9wTGV2ZWxEb2N1bWVudFNlY3VyaXR5T3JpZ2lu
KCk7CkBAIC00OTksNyArNTA2LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXJQcm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0KCkKICNpZiBFTkFC
TEUoTUVESUFfU1RSRUFNKQogdm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQ
cm94eTo6cHJvY2Vzc1VzZXJNZWRpYVBlcm1pc3Npb25JbnZhbGlkUmVxdWVzdChjb25zdCBTdHJp
bmcmIGludmFsaWRDb25zdHJhaW50KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSk7CisgICAgQUxXQVlTX0xP
RyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgp
LnRvVUludDY0KCkpOwogICAgIGJvb2wgZmlsdGVyQ29uc3RyYWludCA9ICFtX2N1cnJlbnRVc2Vy
TWVkaWFSZXF1ZXN0LT5oYXNQZXJzaXN0ZW50QWNjZXNzKCkgJiYgIXdhc0dyYW50ZWRWaWRlb09y
QXVkaW9BY2Nlc3MobV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+ZnJhbWVJRCgpLCBtX2N1cnJl
bnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFEb2N1bWVudFNlY3VyaXR5T3JpZ2luKCksIG1f
Y3VycmVudFVzZXJNZWRpYVJlcXVlc3QtPnRvcExldmVsRG9jdW1lbnRTZWN1cml0eU9yaWdpbigp
KTsKIAogICAgIGRlbnlSZXF1ZXN0KCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LCBVc2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxSZWFzb246Oklu
dmFsaWRDb25zdHJhaW50LCBmaWx0ZXJDb25zdHJhaW50ID8gU3RyaW5nIHsgfSA6IGludmFsaWRD
b25zdHJhaW50KTsKQEAgLTUwNyw3ICs1MTQsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNlck1lZGlhUGVybWlzc2lvbkludmFsaWRSZQog
CiB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9jZXNzVXNl
ck1lZGlhUGVybWlzc2lvblZhbGlkUmVxdWVzdChWZWN0b3I8Q2FwdHVyZURldmljZT4mJiBhdWRp
b0RldmljZXMsIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmIHZpZGVvRGV2aWNlcywgU3RyaW5nJiYg
ZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KQogewotICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgdmlkZW86ICIs
IHZpZGVvRGV2aWNlcy5zaXplKCksICIgYXVkaW86ICIsIGF1ZGlvRGV2aWNlcy5zaXplKCkpOwor
ICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+
dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAiLCB2aWRlbzogIiwgdmlkZW9EZXZpY2VzLnNpemUo
KSwgIiBhdWRpbzogIiwgYXVkaW9EZXZpY2VzLnNpemUoKSk7CiAgICAgaWYgKHZpZGVvRGV2aWNl
cy5pc0VtcHR5KCkgJiYgYXVkaW9EZXZpY2VzLmlzRW1wdHkoKSkgewogICAgICAgICBkZW55UmVx
dWVzdCgqbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdCwgVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eTo6VXNlck1lZGlhQWNjZXNzRGVuaWFsUmVhc29uOjpOb0NvbnN0cmFpbnRzLCBlbXB0
eVN0cmluZygpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNTE4LDcgKzUyNSw3IEBAIHZvaWQgVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJt
aXNzaW9uVmFsaWRSZXF1CiAgICAgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+c2V0RWxpZ2li
bGVBdWRpb0RldmljZVVJRHMoV1RGTW92ZShhdWRpb0RldmljZXMpKTsKIAogICAgIGF1dG8gYWN0
aW9uID0gZ2V0UmVxdWVzdEFjdGlvbigqbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdCk7Ci0gICAg
QUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2Vy
TWVkaWFJRCgpLCAiLCBhY3Rpb246ICIsIGFjdGlvbik7CisgICAgQUxXQVlTX0xPRyhMT0dJREVO
VElGSUVSLCBtX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0LT51c2VyTWVkaWFJRCgpLnRvVUludDY0
KCksICIsIGFjdGlvbjogIiwgYWN0aW9uKTsKIAogICAgIGlmIChhY3Rpb24gPT0gUmVxdWVzdEFj
dGlvbjo6RGVueSkgewogICAgICAgICBkZW55UmVxdWVzdCgqbV9jdXJyZW50VXNlck1lZGlhUmVx
dWVzdCwgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhQWNjZXNzRGVu
aWFsUmVhc29uOjpQZXJtaXNzaW9uRGVuaWVkLCBlbXB0eVN0cmluZygpKTsKQEAgLTUzOCw3ICs1
NDUsNyBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5Ojpwcm9j
ZXNzVXNlck1lZGlhUGVybWlzc2lvblZhbGlkUmVxdQogCiAgICAgaWYgKG1fcGFnZS5pc0NvbnRy
b2xsZWRCeUF1dG9tYXRpb24oKSkgewogICAgICAgICBpZiAoV2ViQXV0b21hdGlvblNlc3Npb24q
IGF1dG9tYXRpb25TZXNzaW9uID0gbV9wYWdlLnByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9t
YXRpb25TZXNzaW9uKCkpIHsKLSAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgcGFnZSBjb250cm9s
bGVkIGJ5IGF1dG9tYXRpb24iKTsKKyAgICAgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
UiwgbV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAi
LCBwYWdlIGNvbnRyb2xsZWQgYnkgYXV0b21hdGlvbiIpOwogICAgICAgICAgICAgaWYgKGF1dG9t
YXRpb25TZXNzaW9uLT5zaG91bGRBbGxvd0dldFVzZXJNZWRpYUZvclBhZ2UobV9wYWdlKSkKICAg
ICAgICAgICAgICAgICBncmFudFJlcXVlc3QoKm1fY3VycmVudFVzZXJNZWRpYVJlcXVlc3QpOwog
ICAgICAgICAgICAgZWxzZQpAQCAtNTQ4LDcgKzU1NSw3IEBAIHZvaWQgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnByb2Nlc3NVc2VyTWVkaWFQZXJtaXNzaW9uVmFsaWRS
ZXF1CiAgICAgfQogCiAgICAgaWYgKG1fcGFnZS5wcmVmZXJlbmNlcygpLm1vY2tDYXB0dXJlRGV2
aWNlc0VuYWJsZWQoKSAmJiAhbV9wYWdlLnByZWZlcmVuY2VzKCkubW9ja0NhcHR1cmVEZXZpY2Vz
UHJvbXB0RW5hYmxlZCgpKSB7Ci0gICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwgbV9j
dXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKSwgIiwgbW9jayBkZXZpY2VzIGRv
bid0IHJlcXVpcmUgcHJvbXB0Iik7CisgICAgICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUiwg
bV9jdXJyZW50VXNlck1lZGlhUmVxdWVzdC0+dXNlck1lZGlhSUQoKS50b1VJbnQ2NCgpLCAiLCBt
b2NrIGRldmljZXMgZG9uJ3QgcmVxdWlyZSBwcm9tcHQiKTsKICAgICAgICAgZ3JhbnRSZXF1ZXN0
KCptX2N1cnJlbnRVc2VyTWVkaWFSZXF1ZXN0KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTY3OCwxMiArNjg1LDIwIEBAIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6Y29tcHV0ZUZpbHRlcmVkRGV2CiB9CiAjZW5kaWYKIAot
dm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6ZW51bWVyYXRlTWVk
aWFEZXZpY2VzRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxTZWN1cml0eU9y
aWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRv
cExldmVsRG9jdW1lbnRPcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9y
PENhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5OjplbnVtZXJhdGVNZWRp
YURldmljZXNGb3JGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mLCBjb25zdCBTdHJpbmcmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKIHsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIEFMV0FZ
U19MT0coTE9HSURFTlRJRklFUik7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW3RoaXMsIGZyYW1l
SUQsIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCBjb21w
bGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShQZXJtaXNzaW9uSW5m
byBwZXJtaXNzaW9uSW5mbykgbXV0YWJsZSB7CisgICAgYXV0byogd2ViRnJhbWUgPSBtX3BhZ2Uu
cHJvY2VzcygpLndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghd2ViRnJhbWUpIHsKKyAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoeyB9LCB7IH0pOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIGF1dG8gdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGVG
cm9tU3RyaW5nKG1fcGFnZS5wYWdlTG9hZFN0YXRlKCkuYWN0aXZlVVJMKCkpOworICAgIGF1dG8g
dXNlck1lZGlhRG9jdW1lbnRPcmlnaW4gPSBTZWN1cml0eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmlu
Zyh3ZWJGcmFtZS0+dXJsKCkuc3RyaW5nKCkpOworCisgICAgYXV0byBjYWxsYmFjayA9IFt0aGlz
LCBmcmFtZUlELCB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCB1c2VyTWVkaWFEb2N1bWVudE9yaWdp
biwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oUGVybWlz
c2lvbkluZm8gcGVybWlzc2lvbkluZm8pIG11dGFibGUgewogICAgICAgICBhdXRvIGNhbGxDb21w
bGV0aW9uSGFuZGxlciA9IG1ha2VTY29wZUV4aXQoWyZjb21wbGV0aW9uSGFuZGxlcl0gewogICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9LCB7IH0pOwogICAgICAgICB9KTsKQEAgLTcz
Myw4ICs3NDgsNiBAQCB2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OjplbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShGcmFtZQogICAgIGdldFVzZXJNZWRpYVBl
cm1pc3Npb25JbmZvKGZyYW1lSUQsIFdURk1vdmUodXNlck1lZGlhRG9jdW1lbnRPcmlnaW4pLCBX
VEZNb3ZlKHRvcExldmVsRG9jdW1lbnRPcmlnaW4pLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiAjZWxz
ZQogICAgIFVOVVNFRF9QQVJBTShmcmFtZUlEKTsKLSAgICBVTlVTRURfUEFSQU0odXNlck1lZGlh
RG9jdW1lbnRPcmlnaW4pOwotICAgIFVOVVNFRF9QQVJBTSh0b3BMZXZlbERvY3VtZW50T3JpZ2lu
KTsKICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0sIHsgfSk7CiAjZW5kaWYKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXJQcm94eS5oCmluZGV4IDhmZWI0NTg3NTFhMjYyODdkNGUxYmIyYWE5Mzg1
MmYyNmQ4MzMzOGYuLmM4ZGVjNTZhNDJhZGIzMDczYWI5NjE2M2Y0N2M1ODc1MDExNjExY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuaApAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1
ZGUgIlVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L01lZGlhUHJvZHVjZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oPgogI2luY2x1ZGUg
PHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1ZGUgPHd0Zi9EZXF1ZS5oPgogI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC02Myw3ICs2NCw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
aW52YWxpZGF0ZVBlbmRpbmdSZXF1ZXN0cygpOwogCi0gICAgdm9pZCByZXF1ZXN0VXNlck1lZGlh
UGVybWlzc2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4mJiAgdXNlck1lZGlhRG9jdW1l
bnRPcmlnaW4sIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4mJiB0b3BMZXZlbERvY3VtZW50
T3JpZ2luLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7CisgICAgdm9pZCByZXF1ZXN0
VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVu
dGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVx
dWVzdCYmKTsKIAogICAgIHZvaWQgcmVzZXRBY2Nlc3MoT3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyPiBtYWluRnJhbWVJRCA9IHsgfSk7CiAgICAgdm9pZCB2aWV3SXNCZWNvbWluZ1Zp
c2libGUoKTsKQEAgLTcxLDcgKzcyLDcgQEAgcHVibGljOgogICAgIHZvaWQgZ3JhbnRSZXF1ZXN0
KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkmKTsKICAgICB2b2lkIGRlbnlSZXF1ZXN0
KFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkmLCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdFByb3h5OjpVc2VyTWVkaWFBY2Nlc3NEZW5pYWxSZWFzb24sIGNvbnN0IFN0cmluZyYgaW52
YWxpZENvbnN0cmFpbnQgPSB7IH0pOwogCi0gICAgdm9pZCBlbnVtZXJhdGVNZWRpYURldmljZXNG
b3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3Jp
Z2luPiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiwgY29uc3QgU3RyaW5nJik+JiYpOwor
ICAgIHZvaWQgZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDYXB0
dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKIAogICAgIHZvaWQgc3RvcENhcHR1cmUo
KTsKICAgICB2b2lkIHNjaGVkdWxlTmV4dFJlamVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNw
cAppbmRleCBkZGIwZDQ3MGVkZmExYTA1NDZlYjBmZGE4MjM3MjMwODI3MGU1OTA2Li5hMWM4MmY3
YmFjMzRlNjI2MWVlMWU5NjZmOTcxNTk4N2NmMmNmNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmNw
cApAQCAtMzAsNyArMzAsNyBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAotVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RQcm94eShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94
eSYgbWFuYWdlciwgdWludDY0X3QgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBtYWluRnJh
bWVJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdp
bj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
PiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNl
PiYmIGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9E
ZXZpY2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQorVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RQcm94eTo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eShV
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYgbWFuYWdlciwgVXNlck1lZGlh
UmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBtYWluRnJhbWVJ
RCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4m
JiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYm
IHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiYm
IGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9EZXZp
Y2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQogICAgIDogbV9tYW5h
Z2VyKCZtYW5hZ2VyKQogICAgICwgbV91c2VyTWVkaWFJRCh1c2VyTWVkaWFJRCkKICAgICAsIG1f
bWFpbkZyYW1lSUQobWFpbkZyYW1lSUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5LmgKaW5kZXggNjUyOTZmM2Ew
ZTkzODRiYTM2ZmRkNTlkMWRmMzAzN2YxYTZmNWRkYy4uODkyN2E2NjFlMmE2MTNjY2ViZTJhNTZk
NGI5ZDE1NmYyMjJmYzkzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaApAQCAtMjMsNiArMjMsNyBAQAog
I2luY2x1ZGUgPFdlYkNvcmUvQ2FwdHVyZURldmljZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRnJh
bWVJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9NZWRpYVN0cmVhbVJlcXVlc3QuaD4K
KyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmg+CiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0z
Niw3ICszNyw3IEBAIGNsYXNzIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
OwogCiBjbGFzcyBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5IDogcHVibGljIEFQSTo6
T2JqZWN0SW1wbDxBUEk6Ok9iamVjdDo6VHlwZTo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3Q+
IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJv
eHk+IGNyZWF0ZShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYgbWFuYWdl
ciwgdWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtYWluRnJh
bWVJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFJlZjxXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbj4mJiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luPiYmIHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0
dXJlRGV2aWNlPiYmIGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+
JiYgdmlkZW9EZXZpY2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQor
ICAgIHN0YXRpYyBSZWY8VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eT4gY3JlYXRlKFVz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5JiBtYW5hZ2VyLCBXZWJDb3JlOjpV
c2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyIG1haW5GcmFtZUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgUmVm
PFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9y
PFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6
Q2FwdHVyZURldmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVz
dCYmIHJlcXVlc3QpCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBVc2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5KG1hbmFnZXIsIHVzZXJNZWRpYUlELCBtYWluRnJhbWVJ
RCwgZnJhbWVJRCwgV1RGTW92ZSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiksIFdURk1vdmUodG9w
TGV2ZWxEb2N1bWVudE9yaWdpbiksIFdURk1vdmUoYXVkaW9EZXZpY2VzKSwgV1RGTW92ZSh2aWRl
b0RldmljZXMpLCBXVEZNb3ZlKHJlcXVlc3QpKSk7CiAgICAgfQpAQCAtNjcsNyArNjgsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXNQZXJzaXN0ZW50QWNjZXNzKCkgY29uc3QgeyByZXR1cm4gbV9o
YXNQZXJzaXN0ZW50QWNjZXNzOyB9CiAgICAgdm9pZCBzZXRIYXNQZXJzaXN0ZW50QWNjZXNzKCkg
eyBtX2hhc1BlcnNpc3RlbnRBY2Nlc3MgPSB0cnVlOyB9CiAKLSAgICB1aW50NjRfdCB1c2VyTWVk
aWFJRCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlck1lZGlhSUQ7IH0KKyAgICBXZWJDb3JlOjpVc2Vy
TWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNl
ck1lZGlhSUQ7IH0KICAgICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgbWFpbkZyYW1lSUQoKSBj
b25zdCB7IHJldHVybiBtX21haW5GcmFtZUlEOyB9CiAgICAgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lSUQ7IH0KIApAQCAtOTEsMTAgKzky
LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogCiBwcml2YXRlOgotICAgIFVzZXJNZWRpYVBlcm1pc3Np
b25SZXF1ZXN0UHJveHkoVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkmLCB1
aW50NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIG1haW5GcmFtZUlE
LCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFJlZjxXZWJDb3JlOjpTZWN1cml0eU9yaWdpbj4m
JiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiYm
IHRvcExldmVsRG9jdW1lbnRPcmlnaW4sIFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiYm
IGF1ZGlvRGV2aWNlcywgVmVjdG9yPFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U+JiYgdmlkZW9EZXZp
Y2VzLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7CisgICAgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RQcm94eShVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eSYs
IFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIgbWFpbkZyYW1lSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgUmVmPFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luPiYmIHVzZXJNZWRpYURvY3VtZW50T3JpZ2luLCBSZWY8V2ViQ29yZTo6
U2VjdXJpdHlPcmlnaW4+JiYgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbiwgVmVjdG9yPFdlYkNvcmU6
OkNhcHR1cmVEZXZpY2U+JiYgYXVkaW9EZXZpY2VzLCBWZWN0b3I8V2ViQ29yZTo6Q2FwdHVyZURl
dmljZT4mJiB2aWRlb0RldmljZXMsIFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVzdCYmKTsKIAog
ICAgIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5KiBtX21hbmFnZXI7Ci0g
ICAgdWludDY0X3QgbV91c2VyTWVkaWFJRDsKKyAgICBXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0
SWRlbnRpZmllciBtX3VzZXJNZWRpYUlEOwogICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBt
X21haW5GcmFtZUlEOwogICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBtX2ZyYW1lSUQ7CiAg
ICAgUmVmPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBtX3VzZXJNZWRpYURvY3VtZW50U2VjdXJp
dHlPcmlnaW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBh
NjliN2RiNDVkNDQwMDhkZmQwNzdmZTVlNzAwMTk5MjlkOTFiZGNkLi4yNTYwNjYxNGRkZmFjM2I1
YTBjMTM0NzkyMDhkNjU2ZWFkNDhjZjUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKQEAgLTgwNjksMzIgKzgwNjksMjggQEAgdm9pZCBXZWJQYWdlUHJveHk6Ondp
bGxTdGFydENhcHR1cmUoY29uc3QgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQcm94eSYgcmVx
dWUKIAogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlz
c2lvbkZvckZyYW1lKHVpbnQ2NF90IHVzZXJNZWRpYUlELCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiAgdXNlck1lZGlhRG9jdW1lbnRP
cmlnaW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9j
dW1lbnRPcmlnaW5EYXRhLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQor
dm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUoVXNl
ck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQogewogI2lmIEVOQUJM
RShNRURJQV9TVFJFQU0pCiAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1fcHJvY2Vzcy0+
d2ViRnJhbWUoZnJhbWVJRCkpOwogCi0gICAgdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5h
Z2VyKCkucmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JGcmFtZSh1c2VyTWVkaWFJRCwgZnJh
bWVJRCwgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCksIHRvcExl
dmVsRG9jdW1lbnRPcmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCksIFdURk1vdmUocmVxdWVzdCkp
OworICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLnJlcXVlc3RVc2VyTWVk
aWFQZXJtaXNzaW9uRm9yRnJhbWUodXNlck1lZGlhSUQsIGZyYW1lSUQsIFdURk1vdmUocmVxdWVz
dCkpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhSUQpOwogICAgIFVOVVNFRF9Q
QVJBTShmcmFtZUlEKTsKLSAgICBVTlVTRURfUEFSQU0odXNlck1lZGlhRG9jdW1lbnRPcmlnaW5E
YXRhKTsKLSAgICBVTlVTRURfUEFSQU0odG9wTGV2ZWxEb2N1bWVudE9yaWdpbkRhdGEpOwogICAg
IFVOVVNFRF9QQVJBTShyZXF1ZXN0KTsKICNlbmRpZgogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6
ZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5E
YXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRP
cmlnaW5EYXRhLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2
aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJQYWdl
UHJveHk6OmVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYs
IGNvbnN0IFN0cmluZyYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogI2lmIEVOQUJMRShNRURJ
QV9TVFJFQU0pCiAgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1l
KGZyYW1lSUQpOwogICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CiAKLSAgICB1
c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIoKS5lbnVtZXJhdGVNZWRpYURldmljZXNG
b3JGcmFtZShmcmFtZUlELCB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmln
aW4oKSwgdG9wTGV2ZWxEb2N1bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlcigpLmVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKGZyYW1lSUQsIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKGZyYW1lSUQpOwotICAg
IFVOVVNFRF9QQVJBTSh1c2VyTWVkaWFEb2N1bWVudE9yaWdpbkRhdGEpOwotICAgIFVOVVNFRF9Q
QVJBTSh0b3BMZXZlbERvY3VtZW50T3JpZ2luRGF0YSk7CiAgICAgVU5VU0VEX1BBUkFNKGNvbXBs
ZXRpb25IYW5kbGVyKTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaAppbmRleCA3MTVlY2U1MWQzYzIxNmJmMTUzZjFjZTdhZTIxY2VjM2NlZWQzYjM0Li4zYjRk
ZDA3MDkyMDMzMGNhMDU3ZmU5ZTZlM2ZjNTk2MTQ1MjRlMjFlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTA1LDYgKzEwNSw3IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9UZXh0R3JhbnVsYXJpdHkuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1RleHRNYW5pcHVsYXRpb25D
b250cm9sbGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0
aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KICNpbmNsdWRlIDxtZW1vcnk+
CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CkBAIC0xOTcyLDggKzE5NzMsOCBA
QCBwcml2YXRlOgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgVXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyUHJveHkmIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdl
cigpOwogI2VuZGlmCi0gICAgdm9pZCByZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1l
KHVpbnQ2NF90IHVzZXJNZWRpYUlELCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5JZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRP
cmlnaW5JZGVudGlmaWVyLCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJik7Ci0gICAgdm9p
ZCBlbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmln
aW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1l
bnRPcmlnaW5EYXRhLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RV
c2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50
aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1
ZXN0JiYpOworICAgIHZvaWQgZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJhbWUoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJD
b3JlOjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKICAgICB2b2lkIGJlZ2lu
TW9uaXRvcmluZ0NhcHR1cmVEZXZpY2VzKCk7CiAKICAgICB2b2lkIHJ1bk1vZGFsKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXgg
OTUwZTUzOTI5OTJmNDE4ODM4YTE5M2UzMDNlMmYxYmJmNTc1ZWJmZC4uNDFmMTFhMjhkMzlhMDQy
ZmMwMzFhZWIwNDFlMzYyODU1MDczMTI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtMjg1LDggKzI4NSw4IEBAIG1lc3NhZ2Vz
IC0+IFdlYlBhZ2VQcm94eSB7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICMgTWVk
aWFTdGVhbSBtZXNzYWdlcwotICAgIFJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9uRm9yRnJhbWUo
dWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBz
dHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHVzZXJNZWRpYURvY3VtZW50T3JpZ2lu
SWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BMZXZlbERv
Y3VtZW50T3JpZ2luSWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6Ok1lZGlhU3RyZWFtUmVxdWVz
dCByZXF1ZXN0KQotICAgIEVudW1lcmF0ZU1lZGlhRGV2aWNlc0ZvckZyYW1lKFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
IHVzZXJNZWRpYURvY3VtZW50T3JpZ2luSWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luRGF0YSB0b3BMZXZlbERvY3VtZW50T3JpZ2luSWRlbnRpZmllcikgLT4gKFZlY3Rv
cjxXZWJDb3JlOjpDYXB0dXJlRGV2aWNlPiBkZXZpY2VzLCBTdHJpbmcgbWVkaWFEZXZpY2VJZGVu
dGlmaWVySGFzaFNhbHQpIEFzeW5jCisgICAgUmVxdWVzdFVzZXJNZWRpYVBlcm1pc3Npb25Gb3JG
cmFtZShXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgV2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpNZWRpYVN0cmVh
bVJlcXVlc3QgcmVxdWVzdCkKKyAgICBFbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkgLT4gKFZlY3RvcjxXZWJDb3JlOjpDYXB0dXJl
RGV2aWNlPiBkZXZpY2VzLCBTdHJpbmcgbWVkaWFEZXZpY2VJZGVudGlmaWVySGFzaFNhbHQpIEFz
eW5jCiAgICAgQmVnaW5Nb25pdG9yaW5nQ2FwdHVyZURldmljZXMoKQogI2VuZGlmCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0cmVhbS9Vc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL01lZGlh
U3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5jcHAKaW5kZXggZmQ2YWI0
ZGY3MmYyMWQwOTg5NzcxYTUwYTBkODI1ZDAyZThhZmYzNi4uYTBhNGVkY2ZlMGI4MzlhMDU5OTFk
NjI1NTUwYjdkN2M2NDQwYWE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlci5jcHAKQEAgLTc5LDggKzc5LDcgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXI6OnNlbmRVc2VyTWVkaWFSZXF1ZXN0KFVzZXJNZWRpYVJlcXVlc3Qm
IHUKICAgICBXZWJGcmFtZSogd2ViRnJhbWUgPSBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJh
bWUpOwogICAgIEFTU0VSVCh3ZWJGcmFtZSk7CiAKLSAgICBhdXRvKiB0b3BMZXZlbERvY3VtZW50
T3JpZ2luID0gdXNlclJlcXVlc3QudG9wTGV2ZWxEb2N1bWVudE9yaWdpbigpOwotICAgIG1fcGFn
ZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RVc2VyTWVkaWFQZXJtaXNzaW9u
Rm9yRnJhbWUodXNlclJlcXVlc3QuaWRlbnRpZmllcigpLnRvVUludDY0KCksIHdlYkZyYW1lLT5m
cmFtZUlEKCksIHVzZXJSZXF1ZXN0LnVzZXJNZWRpYURvY3VtZW50T3JpZ2luKCktPmRhdGEoKSwg
dG9wTGV2ZWxEb2N1bWVudE9yaWdpbi0+ZGF0YSgpLCB1c2VyUmVxdWVzdC5yZXF1ZXN0KCkpKTsK
KyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0VXNlck1lZGlh
UGVybWlzc2lvbkZvckZyYW1lKHVzZXJSZXF1ZXN0LmlkZW50aWZpZXIoKSwgd2ViRnJhbWUtPmZy
YW1lSUQoKSwgdXNlclJlcXVlc3QucmVxdWVzdCgpKSk7CiB9CiAKIHZvaWQgVXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyOjpjYW5jZWxVc2VyTWVkaWFSZXF1ZXN0KFVzZXJNZWRpYVJl
cXVlc3QmIHJlcXVlc3QpCkBAIC0xMTcsOSArMTE2LDkgQEAgdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXI6Om1lZGlhQ2FuU3RhcnQoRG9jdW1lbnQmIGRvY3VtZW50KQogICAg
ICAgICBzZW5kVXNlck1lZGlhUmVxdWVzdChwZW5kaW5nUmVxdWVzdCk7CiB9CiAKLXZvaWQgVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVk
KHVpbnQ2NF90IHJlcXVlc3RJRCwgQ2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlLCBDYXB0dXJl
RGV2aWNlJiYgdmlkZW9EZXZpY2UsIFN0cmluZyYmIGRldmljZUlkZW50aWZpZXJIYXNoU2FsdCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBVc2Vy
TWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQo
VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgcmVxdWVzdElELCBDYXB0dXJlRGV2aWNlJiYgYXVk
aW9EZXZpY2UsIENhcHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZSwgU3RyaW5nJiYgZGV2aWNlSWRl
bnRpZmllckhhc2hTYWx0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiB7Ci0gICAgYXV0byByZXF1ZXN0ID0gbV9vbmdvaW5nVXNlck1lZGlhUmVxdWVzdHMu
dGFrZShtYWtlT2JqZWN0SWRlbnRpZmllcjxVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllclR5cGU+
KHJlcXVlc3RJRCkpOworICAgIGF1dG8gcmVxdWVzdCA9IG1fb25nb2luZ1VzZXJNZWRpYVJlcXVl
c3RzLnRha2UocmVxdWVzdElEKTsKICAgICBpZiAoIXJlcXVlc3QpIHsKICAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTI4LDkgKzEyNyw5IEBAIHZvaWQg
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOjp1c2VyTWVkaWFBY2Nlc3NXYXNHcmFu
dGVkKHVpbnQ2NF90IHJlcXVlCiAgICAgcmVxdWVzdC0+YWxsb3coV1RGTW92ZShhdWRpb0Rldmlj
ZSksIFdURk1vdmUodmlkZW9EZXZpY2UpLCBXVEZNb3ZlKGRldmljZUlkZW50aWZpZXJIYXNoU2Fs
dCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBVc2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXI6OnVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCBy
ZXF1ZXN0SUQsIFVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uIHJlYXNv
biwgU3RyaW5nJiYgaW52YWxpZENvbnN0cmFpbnQpCit2b2lkIFVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlcjo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFVzZXJNZWRpYVJlcXVlc3RJ
ZGVudGlmaWVyIHJlcXVlc3RJRCwgVXNlck1lZGlhUmVxdWVzdDo6TWVkaWFBY2Nlc3NEZW5pYWxS
ZWFzb24gcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCkKIHsKLSAgICBhdXRvIHJl
cXVlc3QgPSBtX29uZ29pbmdVc2VyTWVkaWFSZXF1ZXN0cy50YWtlKG1ha2VPYmplY3RJZGVudGlm
aWVyPFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyVHlwZT4ocmVxdWVzdElEKSk7CisgICAgYXV0
byByZXF1ZXN0ID0gbV9vbmdvaW5nVXNlck1lZGlhUmVxdWVzdHMudGFrZShyZXF1ZXN0SUQpOwog
ICAgIGlmICghcmVxdWVzdCkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNDUsNyArMTQ0LDcgQEAg
dm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI6OmVudW1lcmF0ZU1lZGlhRGV2
aWNlcyhEb2N1bWVudCYgZG9jdW1lbnQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1f
cGFnZS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RW51bWVyYXRl
TWVkaWFEZXZpY2VzRm9yRnJhbWUgeyBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpLT5m
cmFtZUlEKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkuZGF0YSgpLCBkb2N1bWVudC50b3BP
cmlnaW4oKS5kYXRhKCkgfSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIG1fcGFn
ZS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RW51bWVyYXRlTWVk
aWFEZXZpY2VzRm9yRnJhbWUgeyBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpLT5mcmFt
ZUlEKCkgfSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCiBVc2VyTWVkaWFDbGll
bnQ6OkRldmljZUNoYW5nZU9ic2VydmVyVG9rZW4gVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RN
YW5hZ2VyOjphZGREZXZpY2VDaGFuZ2VPYnNlcnZlcihGdW5jdGlvbjx2b2lkKCk+JiYgb2JzZXJ2
ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTWVkaWFTdHJlYW0vVXNl
ck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTWVkaWFTdHJlYW0vVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgKaW5kZXgg
MDQ3YWZhMjFjZmNlZTNkMDA5YmRlMzYxNzc2YzgyMTkzMGE0ZGRjYi4uNmZiNGI5MzA2YWZiODk4
Y2Q1NmU4NDMzZDZlNDE1ZGYzMjlmNzdlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL01lZGlhU3RyZWFtL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9NZWRpYVN0cmVhbS9Vc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXIuaApAQCAtNDIsOCArNDIsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lk
IHN0YXJ0VXNlck1lZGlhUmVxdWVzdChXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0Jik7CiAgICAg
dm9pZCBjYW5jZWxVc2VyTWVkaWFSZXF1ZXN0KFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3QmKTsK
LSAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0X3QsIFdlYkNvcmU6OkNh
cHR1cmVEZXZpY2UmJiBhdWRpb0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVv
RGV2aWNlLCBTdHJpbmcmJiBkZXZpY2VJZGVudGlmaWVySGFzaFNhbHQsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJik7Ci0gICAgdm9pZCB1c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodWludDY0
X3QsIFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uLCBT
dHJpbmcmJik7CisgICAgdm9pZCB1c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKFdlYkNvcmU6OlVz
ZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgYXVkaW9E
ZXZpY2UsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZSwgU3RyaW5nJiYgZGV2
aWNlSWRlbnRpZmllckhhc2hTYWx0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAg
IHZvaWQgdXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0OjpNZWRpYUFjY2Vzc0RlbmlhbFJl
YXNvbiwgU3RyaW5nJiYpOwogCiAgICAgdm9pZCBlbnVtZXJhdGVNZWRpYURldmljZXMoV2ViQ29y
ZTo6RG9jdW1lbnQmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCAxMGVmNzllOGQyZmY1M2JjMzg1
MDA0YjZiNTM5ZDFhZGI4ZTU0ODNlLi5jYzRjMzZkZjUxMGQ2NzQ1NGI1Njg2OTc1MTY0OGMwNzIy
NzM1ZWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cApAQCAtNDQzMiwxNCArNDQzMiwxNCBAQCB2b2lkIFdlYlBhZ2U6OmRpZFJlY2VpdmVOb3RpZmlj
YXRpb25QZXJtaXNzaW9uRGVjaXNpb24odWludDY0X3Qgbm90aWZpY2F0aW9uSUQsCiAKICNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQogCi12b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0dy
YW50ZWQodWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRp
b0RldmljZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBt
ZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2FsdCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYg
aGFuZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQoVXNlck1lZGlhUmVxdWVzdElk
ZW50aWZpZXIgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRpb0Rldmlj
ZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBtZWRpYURl
dmljZUlkZW50aWZpZXJIYXNoU2FsdCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYgaGFuZGxl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7CiAKICAgICBtX3Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci0+dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRl
ZCh1c2VyTWVkaWFJRCwgV1RGTW92ZShhdWRpb0RldmljZSksIFdURk1vdmUodmlkZW9EZXZpY2Up
LCBXVEZNb3ZlKG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0Rlbmll
ZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgdWludDY0X3QgcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlk
Q29uc3RyYWludCkKK3ZvaWQgV2ViUGFnZTo6dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFVzZXJN
ZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCB1aW50NjRfdCByZWFzb24sIFN0cmlu
ZyYmIGludmFsaWRDb25zdHJhaW50KQogewogICAgIG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyLT51c2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodXNlck1lZGlhSUQsIHN0YXRpY19j
YXN0PFVzZXJNZWRpYVJlcXVlc3Q6Ok1lZGlhQWNjZXNzRGVuaWFsUmVhc29uPihyZWFzb24pLCBX
VEZNb3ZlKGludmFsaWRDb25zdHJhaW50KSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggZmJjZDhjYzZmYmYyOWUwMWExN2QzOWQ1YjVhZmE5Mjcx
MzZmNzY2OS4uY2Q1Yjc5MGZmMDlmOGJhMDIxN2ExYTJmNmY0NmUyOTU3YWE2OWY4ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtODUsNiArODUsNyBA
QAogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckFjdGl2aXR5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9V
c2VyQ29udGVudFR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW50ZXJmYWNlTGF5b3V0
RGlyZWN0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmll
ci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclNjcmlwdFR5cGVzLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9WaXNpYmlsaXR5U3RhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVLZXlib2Fy
ZFVJTW9kZS5oPgpAQCAtMTY1NSw4ICsxNjU2LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZFJl
Y2VpdmVOb3RpZmljYXRpb25QZXJtaXNzaW9uRGVjaXNpb24odWludDY0X3Qgbm90aWZpY2F0aW9u
SUQsIGJvb2wgYWxsb3dlZCk7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotICAgIHZvaWQg
dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwgV2ViQ29yZTo6
Q2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNlVUlELCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYg
dmlkZW9EZXZpY2VVSUQsIFN0cmluZyYmIG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsK
LSAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dhc0RlbmllZCh1aW50NjRfdCB1c2VyTWVkaWFJRCwg
dWludDY0X3QgcmVhc29uLCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCk7CisgICAgdm9pZCB1
c2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlm
aWVyLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgYXVkaW9EZXZpY2VVSUQsIFdlYkNvcmU6OkNh
cHR1cmVEZXZpY2UmJiB2aWRlb0RldmljZVVJRCwgU3RyaW5nJiYgbWVkaWFEZXZpY2VJZGVudGlm
aWVySGFzaFNhbHQsIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFdlYkNvcmU6
OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLCB1aW50NjRfdCByZWFzb24sIFN0cmluZyYmIGlu
dmFsaWRDb25zdHJhaW50KTsKIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDE1NWYxZjRhNGE5NjI4
OWUxMDg3MWYyMmE1OTU1MDcwZWQwZWU1OGQuLjNhN2QxYWYyNWY1YWE2N2VkNTIyZTA1MzI2ZDQ4
YTliY2U0OGZkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbgpAQCAtMzczLDggKzM3Myw4IEBAIEdlbmVyYXRlU3ludGhl
dGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50OF90IFdlYktpdDo6U3ludGhldGljRWRpdGluZ0Nv
bW1hbmRUeXBlCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICMgTWVkaWFTdGVhbQot
ICAgIFVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQodWludDY0X3QgdXNlck1lZGlhSUQsIFdlYkNv
cmU6OkNhcHR1cmVEZXZpY2UgYXVkaW9EZXZpY2UsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2Ugdmlk
ZW9EZXZpY2UsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2FsdCwgV2ViS2l0OjpT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkgLT4gKCkgQXN5
bmMKLSAgICBVc2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQodWludDY0X3QgdXNlck1lZGlhSUQsIHVp
bnQ2NF90IHJlYXNvbiwgU3RyaW5nIGludmFsaWRDb25zdHJhaW50KQorICAgIFVzZXJNZWRpYUFj
Y2Vzc1dhc0dyYW50ZWQoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1l
ZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UgYXVkaW9EZXZpY2UsIFdlYkNvcmU6OkNhcHR1
cmVEZXZpY2UgdmlkZW9EZXZpY2UsIFN0cmluZyBtZWRpYURldmljZUlkZW50aWZpZXJIYXNoU2Fs
dCwgV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSkgLT4gKCkgQXN5bmMKKyAgICBVc2VyTWVkaWFBY2Nlc3NXYXNEZW5pZWQoV2ViQ29yZTo6VXNl
ck1lZGlhUmVxdWVzdElkZW50aWZpZXIgdXNlck1lZGlhSUQsIHVpbnQ2NF90IHJlYXNvbiwgU3Ry
aW5nIGludmFsaWRDb25zdHJhaW50KQogICAgIENhcHR1cmVEZXZpY2VzQ2hhbmdlZCgpCiAjZW5k
aWYKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>