<?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>225294</bug_id>
          
          <creation_ts>2021-05-03 02:10:45 -0700</creation_ts>
          <short_desc>[OpenSSL] Implement CryptoAlgorithmRSA*</short_desc>
          <delta_ts>2021-07-07 16:04:51 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>206439</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</reporter>
          <assigned_to name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</assigned_to>
          <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>chris.reid</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1756122</commentid>
    <comment_count>0</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-03 02:10:45 -0700</bug_when>
    <thetext>Implement CryptoAlgorithmRSA_OAEP for OpenSSL along with CryptoKeyRSA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756140</commentid>
    <comment_count>1</comment_count>
      <attachid>427550</attachid>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-03 03:50:59 -0700</bug_when>
    <thetext>Created attachment 427550
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756501</commentid>
    <comment_count>2</comment_count>
      <attachid>427550</attachid>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-04 05:29:05 -0700</bug_when>
    <thetext>Comment on attachment 427550
Patch

Taking down the first patch to add some more RSA implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756916</commentid>
    <comment_count>3</comment_count>
      <attachid>427762</attachid>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-05 05:58:40 -0700</bug_when>
    <thetext>Created attachment 427762
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757184</commentid>
    <comment_count>4</comment_count>
      <attachid>427762</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2021-05-05 17:16:07 -0700</bug_when>
    <thetext>Comment on attachment 427762
Patch

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

Just have an informal comment

&gt; Source/WebCore/crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp:38
&gt; +    RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(!(key.keySizeInBits() % 8));

Are these RELEASE_ASSERT_WITH_SECURITY_IMPLICATION checks needed? It looks like keySizeInBits returns either 0 or a multiple of 8 from getRSAModulusLength.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757205</commentid>
    <comment_count>5</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-05 18:05:31 -0700</bug_when>
    <thetext>&gt; Are these RELEASE_ASSERT_WITH_SECURITY_IMPLICATION checks needed? It looks like keySizeInBits returns either 0 or a multiple of 8 from getRSAModulusLength.

Nope, not really needed. I&apos;ll remove these.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757351</commentid>
    <comment_count>6</comment_count>
      <attachid>427871</attachid>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-06 04:50:47 -0700</bug_when>
    <thetext>Created attachment 427871
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757352</commentid>
    <comment_count>7</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-05-06 04:53:42 -0700</bug_when>
    <thetext>(In reply to Yoshiaki Jitsukawa from comment #6)
&gt; Created attachment 427871 [details]
&gt; Patch

Removed RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(!(key.keySizeInBits() % 8)).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757731</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-06 17:17:13 -0700</bug_when>
    <thetext>Committed r277142 (237429@main): &lt;https://commits.webkit.org/237429@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427871.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757734</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-06 17:18:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/77632965&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758364</commentid>
    <comment_count>10</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2021-05-09 13:23:05 -0700</bug_when>
    <thetext>Filed: Bug 225581 – [WinCairo][Clang] lld-link: error: undefined symbol: public: static class GenericTypedArrayView&lt;&gt; in CryptoKeyRSAOpenSSL.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775512</commentid>
    <comment_count>11</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-07-07 16:04:51 -0700</bug_when>
    <thetext>*** Bug 206635 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427550</attachid>
            <date>2021-05-03 03:50:59 -0700</date>
            <delta_ts>2021-05-04 05:29:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225294-20210503195058.patch</filename>
            <type>text/plain</type>
            <size>42781</size>
            <attacher name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2Njk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDY4NDlhZWM1YTBkMDdi
ODQyYTAyNzc4NDk0MDRmMzQwYjQzZjZmMS4uOTNjZmNiZjE5ZWViNTViMDQ0ZWE4MzZiNWQyNTVm
ZWZkYjdjZWY1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIxLTA1LTAzICBZb3No
aWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FAc29ueS5jb20+CisKKyAgICAgICAg
W09wZW5TU0xdIEltcGxlbWVudCBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1Mjk0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IENyeXB0b0FsZ29y
aXRobVJTQV9PQUVQIGZvciBPcGVuU1NMIGFsb25nIHdpdGggQ3J5cHRvS2V5UlNBLgorCisgICAg
ICAgIFRlc3Q6IEV4aXN0aW5nIGNyeXB0by9zdWJ0bGUgdGVzdHMKKworICAgICAgICAqIGNyeXB0
by9rZXlzL0NyeXB0b0tleVJTQS5oOiBVc2UgdGhlIFJTQSBzdHJ1Y3Qgb2YgT3BlblNTTCBmb3Ig
dGhlIHBsYXRmb3JtIFJTQSBrZXkuCisKKyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9B
bGdvcml0aG1ITUFDT3BlblNTTC5jcHA6IE1vdmUgSE1BQ0FsZ29yaXRobSgpIHRvIE9wZW5TU0xV
dGlsaXRpZXMgYXMgRGlnZXN0QWxnb3JpdGhtKCkuCisKKyAgICAgICAgKiBjcnlwdG8vb3BlbnNz
bC9DcnlwdG9BbGdvcml0aG1SU0FfT0FFUE9wZW5TU0wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRW5jcnlwdCk6IEltcGxlbWVudGVkLgor
ICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRGVjcnlw
dCk6IEltcGxlbWVudGVkLgorICAgICAgICAqIGNyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRo
bVJlZ2lzdHJ5T3BlblNTTC5jcHA6IFJlZ2lzdGVyIENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLgor
ICAgICAgICAqIGNyeXB0by9vcGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Z2V0UlNBTW9kdWx1c0xlbmd0aCk6CisgICAgICAgIChXZWJDb3JlOjpjb252
ZXJ0VG9CeXRlcyk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0VG9CaWdOdW1iZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q3J5cHRvS2V5UlNBOjpDcnlwdG9LZXlSU0EpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5
UlNBOjppc1Jlc3RyaWN0ZWRUb0hhc2ggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRv
S2V5UlNBOjprZXlTaXplSW5CaXRzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OmV4cG9uZW50
VmVjdG9yVG9VSW50MzIpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjpnZW5lcmF0
ZVBhaXIpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjppbXBvcnRTcGtpKToKKyAg
ICAgICAgKFdlYkNvcmU6OkNyeXB0b0tleVJTQTo6aW1wb3J0UGtjczgpOgorICAgICAgICAoV2Vi
Q29yZTo6Q3J5cHRvS2V5UlNBOjpleHBvcnRTcGtpIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkNyeXB0b0tleVJTQTo6ZXhwb3J0UGtjczggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5
cHRvS2V5UlNBOjphbGdvcml0aG0gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5
UlNBOjpleHBvcnREYXRhIGNvbnN0KToKKyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9PcGVuU1NM
Q3J5cHRvVW5pcXVlUHRyLmg6IEFkZCBVbmlxdWVQdHIgZm9yIEVWUF9LRVlfQ1RYLCBSU0EsCisg
ICAgICAgIFBLQ1M4X1BSSVZfS0VZX0lORk8sIEJJR05VTSwgYW5kIEJOX0NUWC4KKyAgICAgICAg
KiBjcnlwdG8vb3BlbnNzbC9PcGVuU1NMVXRpbGl0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkRpZ2VzdEFsZ29yaXRobSk6CisgICAgICAgIChXZWJDb3JlOjpjYWxjdWxhdGVEaWdlc3QpOiAK
KyAgICAgICAgKiBwbGF0Zm9ybS9PcGVuU1NMLmNtYWtlOiBBZGQgT3BlblNTTFV0aWxpdGllcy5j
cHAKKwogMjAyMS0wNC0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNv
bT4KIAogICAgICAgICBbc2VsZWN0b3JzXSBVc2luZyBhIG1vZGlmaWVyIGtleSBvbiBhbiBlbGVt
ZW50IG1ha2VzIGl0IHN0b3AgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2NyeXB0by9rZXlzL0NyeXB0b0tleVJTQS5oIGIvU291cmNlL1dlYkNvcmUv
Y3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKaW5kZXggYzQ5ZmU2OGRmODJjMDAzYTZlYzNmOWZj
YjNkOWFiNmU1YzBjNmNkYy4uOTZhNzdkOTdkZmIzZGJlNWVjNTVkOWQwOTE2YWJmZmY4MDBlZDkx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKQEAgLTUxLDgg
KzUxLDkgQEAgdHlwZWRlZiBzdGQ6OnVuaXF1ZV9wdHI8dHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9p
bnRlcjxnY3J5X3NleHBfdD46OnR5cGUsIFBBTDo6R0MKICNlbmRpZgogCiAjaWYgVVNFKE9QRU5T
U0wpCi10eXBlZGVmIHZvaWQqIFBsYXRmb3JtUlNBS2V5OwotdHlwZWRlZiBzdGQ6OnVuaXF1ZV9w
dHI8UGxhdGZvcm1SU0FLZXk+IFBsYXRmb3JtUlNBS2V5Q29udGFpbmVyOworI2luY2x1ZGUgImNy
eXB0by9vcGVuc3NsL09wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaCIKK3R5cGVkZWYgUlNBKiBQbGF0
Zm9ybVJTQUtleTsKK3R5cGVkZWYgV2ViQ29yZTo6UlNBUHRyIFBsYXRmb3JtUlNBS2V5Q29udGFp
bmVyOwogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNw
cAppbmRleCBkM2FkOTRhYTZlNDExMTVlNjcwMzYwZDRjZTA5ZDY4MWMzNDA3ZDFhLi5kZmZjOWM5
ZTQwMjNjZmM1YjE4MjQyZjU1M2M0ODYyYjM5Njc0N2M1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1ITUFDT3BlblNTTC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtSE1BQ09wZW5TU0wu
Y3BwCkBAIC0zMCwyOSArMzAsMTIgQEAKIAogI2luY2x1ZGUgIkNyeXB0b0tleUhNQUMuaCIKICNp
bmNsdWRlICJPcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmgiCisjaW5jbHVkZSAiT3BlblNTTFV0aWxp
dGllcy5oIgogI2luY2x1ZGUgPG9wZW5zc2wvZXZwLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dy
YXBoaWNVdGlsaXRpZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgY29uc3Qg
RVZQX01EKiBITUFDQWxnb3JpdGhtKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFzaEZ1bmN0
aW9uKQotewotICAgIHN3aXRjaCAoaGFzaEZ1bmN0aW9uKSB7Ci0gICAgY2FzZSBDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyOjpTSEFfMToKLSAgICAgICAgcmV0dXJuIEVWUF9zaGExKCk7Ci0gICAg
Y2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfMjI0OgotICAgICAgICByZXR1cm4g
RVZQX3NoYTIyNCgpOwotICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzI1
NjoKLSAgICAgICAgcmV0dXJuIEVWUF9zaGEyNTYoKTsKLSAgICBjYXNlIENyeXB0b0FsZ29yaXRo
bUlkZW50aWZpZXI6OlNIQV8zODQ6Ci0gICAgICAgIHJldHVybiBFVlBfc2hhMzg0KCk7Ci0gICAg
Y2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfNTEyOgotICAgICAgICByZXR1cm4g
RVZQX3NoYTUxMigpOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAg
IH0KLX0KLQogc3RhdGljIE9wdGlvbmFsPFZlY3Rvcjx1aW50OF90Pj4gY2FsY3VsYXRlU2lnbmF0
dXJlKGNvbnN0IEVWUF9NRCogYWxnb3JpdGhtLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwg
Y29uc3QgdWludDhfdCogZGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgpCiB7CiAgICAgLy8gQ3JlYXRl
IHRoZSBNZXNzYWdlIERpZ2VzdCBDb250ZXh0CkBAIC04Nyw3ICs3MCw3IEBAIHN0YXRpYyBPcHRp
b25hbDxWZWN0b3I8dWludDhfdD4+IGNhbGN1bGF0ZVNpZ25hdHVyZShjb25zdCBFVlBfTUQqIGFs
Z29yaXRobSwgY29uCiAKIEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3Jp
dGhtSE1BQzo6cGxhdGZvcm1TaWduKGNvbnN0IENyeXB0b0tleUhNQUMmIGtleSwgY29uc3QgVmVj
dG9yPHVpbnQ4X3Q+JiBkYXRhKQogewotICAgIGF1dG8gYWxnb3JpdGhtID0gSE1BQ0FsZ29yaXRo
bShrZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7CisgICAgYXV0byBhbGdvcml0aG0gPSBk
aWdlc3RBbGdvcml0aG0oa2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkpOwogICAgIGlmICgh
YWxnb3JpdGhtKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsK
IApAQCAtOTksNyArODIsNyBAQCBFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0Fs
Z29yaXRobUhNQUM6OnBsYXRmb3JtU2lnbihjb25zdCBDcnlwdG9LZXlITQogCiBFeGNlcHRpb25P
cjxib29sPiBDcnlwdG9BbGdvcml0aG1ITUFDOjpwbGF0Zm9ybVZlcmlmeShjb25zdCBDcnlwdG9L
ZXlITUFDJiBrZXksIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgc2lnbmF0dXJlLCBjb25zdCBWZWN0
b3I8dWludDhfdD4mIGRhdGEpCiB7Ci0gICAgYXV0byBhbGdvcml0aG0gPSBITUFDQWxnb3JpdGht
KGtleS5oYXNoQWxnb3JpdGhtSWRlbnRpZmllcigpKTsKKyAgICBhdXRvIGFsZ29yaXRobSA9IGRp
Z2VzdEFsZ29yaXRobShrZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAgICAgaWYgKCFh
bGdvcml0aG0pCiAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0
aG1SU0FfT0FFUE9wZW5TU0wuY3BwIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5
cHRvQWxnb3JpdGhtUlNBX09BRVBPcGVuU1NMLmNwcAppbmRleCAxZDhlM2Q3YWVkMWVhMmUyNGJi
OThhMDViOTM2NjNhMTQwN2NiZGRkLi5jNzE0ZTEwN2YyOTJjOWJhMGQxZDZiYTFmYmNhZGMzYmE2
MjZlYjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9B
bGdvcml0aG1SU0FfT0FFUE9wZW5TU0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9v
cGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQV9PQUVQT3BlblNTTC5jcHAKQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDIwIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVu
dCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5t
ZW50IEluYy4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzAsMjAgKzMwLDE3
NCBAQAogCiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtUnNhT2FlcFBhcmFtcy5oIgogI2luY2x1
ZGUgIkNyeXB0b0tleVJTQS5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVk
ZSAiT3BlblNTTFV0aWxpdGllcy5oIgorI2luY2x1ZGUgPHd0Zi9DcnlwdG9ncmFwaGljYWxseVJh
bmRvbU51bWJlci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlvbk9yPFZlY3Rv
cjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRW5jcnlwdChjb25z
dCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zJiwgY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JikKKy8qCisgIFBsZWFzZSByZWZlciB0byB0aGlzIGRpYWdyYW0g
Zm9yIHRoZSBsb2NhbCB2YXJpYWJsZSBuYW1lcyB1c2VkIGluIHBsYXRmb3JtRW5jcnlwdCgpIGFu
ZCBwbGF0Zm9ybURlY3J5cHQoKS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0t
LS0tLS0tLS0rLS0tLS0tKy0tKy0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgICBE
QiA9IHwgIGxIYXNoICAgfCAgUFMgIHwwMXwgICBNICAgfAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICArLS0tLS0tLS0tLSstLS0tLS0rLS0rLS0tLS0tLSsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAg
Ky0tLS0tLS0tLS0rICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICB8ICAgc2Vl
ZCAgIHwgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tKyAg
ICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg
ICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICB8LS0tLS0tLT4gTUdGIC0tLT4geG9y
CisgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwKKyAgICAg
ICAgICAgICAgICAgICstLSsgICAgIFYgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAg
ICAgICAgfDAwfCAgICB4b3IgPC0tLS0tIE1HRiA8LS0tLS18CisgICAgICAgICAgICAgICAgICAr
LS0rICAgICB8ICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgfCAgICAg
IHwgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICBWICAgICAgViAgICAg
ICAgICAgICAgICAgICBWCisgICAgICAgICAgICAgICAgICArLS0rLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgRU0gPSAgfDAwfG1hc2tlZFNlZWR8
ICAgICAgICAgIG1hc2tlZERCICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICstLSstLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgKi8KK0V4Y2VwdGlvbk9yPFZl
Y3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRW5jcnlwdChj
b25zdCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zJiBwYXJhbWV0ZXJzLCBjb25zdCBDcnlw
dG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBwbGFpblRleHQpCiB7Ci0gICAg
bm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJy
b3IgfTsKKyAgICBSRUxFQVNFX0FTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCEoa2V5
LmtleVNpemVJbkJpdHMoKSAlIDgpKTsKKworICAgIGludCBtTGVuID0gcGxhaW5UZXh0LnNpemUo
KTsKKworICAgIGNvbnN0IEVWUF9NRCogbWQgPSBkaWdlc3RBbGdvcml0aG0oa2V5Lmhhc2hBbGdv
cml0aG1JZGVudGlmaWVyKCkpOworICAgIGlmICghbWQpCisgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworICAgIGludCBoTGVuID0gRVZQX01EX3NpemUobWQp
OworCisgICAgUlNBKiByc2EgPSBrZXkucGxhdGZvcm1LZXkoKTsKKyAgICBpZiAoIXJzYSkKKyAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisgICAgaW50IGsgPSBS
U0Ffc2l6ZShyc2EpOyAvLyB0aGUgbGVuZ3RoIG9mIHRoZSBSU0EgbW9kdWx1cyBuCisKKyAgICBp
ZiAobUxlbiA+IGsgLSAyICogaExlbiAtIDIpIHsKKyAgICAgICAgLy8gbWVzc2FnZSB0b28gbG9u
ZworICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICB9
CisKKyAgICBPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+IGxIYXNoID0gY2FsY3VsYXRlRGlnZXN0
KG1kLCBwYXJhbWV0ZXJzLmxhYmVsVmVjdG9yKCkpOworICAgIGlmICghbEhhc2gpCisgICAgICAg
IHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgLy8gQ29uY2F0ZW5h
dGUgbEhhc2gsIFBTIChhIHBhZGRpbmcgc3RyaW5nIGNvbnNpc3Rpbmcgb2YgayAtIG1MZW4gLQor
ICAgIC8vIDJoTGVuIC0gMiB6ZXJvIG9jdGV0cyksIGEgc2luZ2xlIG9jdGV0IHdpdGggaGV4YWRl
Y2ltYWwgdmFsdWUgMHgwMSwKKyAgICAvLyAgYW5kIHRoZSBtZXNzYWdlIE0gdG8gZm9ybSBhIGRh
dGEgYmxvY2sgREIgb2YgbGVuZ3RoIGsgLSBoTGVuIC0gMSBvY3RldHMgYXMKKyAgICAvLyAgIERC
ID0gbEhhc2ggfHwgUFMgfHwgMHgwMSB8fCBNLgorICAgIFZlY3Rvcjx1aW50OF90PiBkYihrIC0g
aExlbiAtIDEpOworICAgIG1lbWNweShkYi5kYXRhKCksIGxIYXNoLT5kYXRhKCksIGhMZW4pOwor
ICAgIG1lbXNldChkYi5kYXRhKCkgKyBoTGVuLCAwLCBrIC0gbUxlbiAtIDIgKiBoTGVuIC0gMik7
CisgICAgZGJbayAtIG1MZW4gLSBoTGVuIC0gMl0gPSAxOworICAgIG1lbWNweShkYi5kYXRhKCkg
KyBrIC0gbUxlbiAtIGhMZW4gLSAxLCBwbGFpblRleHQuZGF0YSgpLCBtTGVuKTsKKworICAgIC8v
IEdlbmVyYXRlIGEgcmFuZG9tIG9jdGV0IHN0cmluZyBzZWVkIG9mIGxlbmd0aCBoTGVuLgorICAg
IFZlY3Rvcjx1aW50OF90PiBzZWVkKGhMZW4pOworICAgIGNyeXB0b2dyYXBoaWNhbGx5UmFuZG9t
VmFsdWVzKHNlZWQuZGF0YSgpLCBzZWVkLnNpemUoKSk7CisKKyAgICAvLyBMZXQgZGJNYXNrID0g
TUdGKHNlZWQsIGsgLSBoTGVuIC0gMSkKKyAgICBWZWN0b3I8dWludDhfdD4gZGJNYXNrKGRiLnNp
emUoKSk7CisgICAgaWYgKFBLQ1MxX01HRjEoZGJNYXNrLmRhdGEoKSwgZGJNYXNrLnNpemUoKSwg
c2VlZC5kYXRhKCksIHNlZWQuc2l6ZSgpLCBtZCkgPCAwKQorICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIC8vIENvbmNhdGVuYXRlIGEgc2luZ2xlIG9j
dGV0IHdpdGggaGV4YWRlY2ltYWwgdmFsdWUgMHgwMCwKKyAgICAvLyBtYXNrZWRTZWVkLCBhbmQg
bWFza2VkREIgdG8gZm9ybSBhbiBlbmNvZGVkIG1lc3NhZ2UgRU0gb2YKKyAgICAvLyBsZW5ndGgg
ayBvY3RldHMgYXMKKyAgICAvLyAgIEVNID0gMHgwMCB8fCBtYXNrZWRTZWVkIHx8IG1hc2tlZERC
CisgICAgLy8gd2hlcmUKKyAgICAvLyAgIG1hc2tlZERCID0gREIgeG9yIGRiTWFzaworICAgIC8v
IGFuZAorICAgIC8vICAgbWFza2VkU2VlZCA9IHNlZWQgeG9yIE1HRihtYXNrZWREQiwgaExlbikg
IAorICAgIFZlY3Rvcjx1aW50OF90PiBlbShrKTsKKyAgICBpbnQgZGJPZmZzZXQgPSAxICsgaExl
bjsKKworICAgIGVtWzBdID0gMDsKKworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZGIuc2l6ZSgp
OyBpKyspCisgICAgICAgIGVtW2RiT2Zmc2V0ICsgaV0gPSBkYltpXSBeIGRiTWFza1tpXTsKKwor
ICAgIFZlY3Rvcjx1aW50OF90PiBzZWVkTWFzayhoTGVuKTsKKyAgICBpZiAoUEtDUzFfTUdGMShz
ZWVkTWFzay5kYXRhKCksIHNlZWRNYXNrLnNpemUoKSwgZW0uZGF0YSgpICsgZGJPZmZzZXQsIGRi
LnNpemUoKSwgbWQpIDwgMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVy
cm9yIH07CisKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IHNlZWQuc2l6ZSgpOyBpKyspCisgICAg
ICAgIGVtW2kgKyAxXSA9IHNlZWRbaV0gXiBzZWVkTWFza1tpXTsKKyAgICAKKyAgICBWZWN0b3I8
dWludDhfdD4gY2lwaGVyVGV4dChrKTsKKyAgICBpZiAoayAhPSBSU0FfcHVibGljX2VuY3J5cHQo
aywgZW0uZGF0YSgpLCBjaXBoZXJUZXh0LmRhdGEoKSwgcnNhLCBSU0FfTk9fUEFERElORykpCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgcmV0dXJu
IGNpcGhlclRleHQ7CiB9CiAKLUV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxn
b3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRGVjcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FP
YWVwUGFyYW1zJiwgY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JikK
K0V4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBs
YXRmb3JtRGVjcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zJiBwYXJhbWV0
ZXJzLCBjb25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBjaXBo
ZXJUZXh0KQogewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IE5vdFN1cHBvcnRlZEVycm9yIH07CisgICAgUkVMRUFTRV9BU1NFUlRfV0lUSF9TRUNVUklUWV9J
TVBMSUNBVElPTighKGtleS5rZXlTaXplSW5CaXRzKCkgJSA4KSk7CisKKyAgICBjb25zdCBFVlBf
TUQqIG1kID0gZGlnZXN0QWxnb3JpdGhtKGtleS5oYXNoQWxnb3JpdGhtSWRlbnRpZmllcigpKTsK
KyAgICBpZiAoIW1kKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJy
b3IgfTsKKworICAgIGludCBoTGVuID0gRVZQX01EX3NpemUobWQpOworCisgICAgUlNBKiByc2Eg
PSBrZXkucGxhdGZvcm1LZXkoKTsKKyAgICBpZiAoIXJzYSkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpbnQgayA9IFJTQV9zaXplKHJzYSk7CisK
KyAgICBpZiAoayAhPSBjaXBoZXJUZXh0LnNpemUoKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE5vdFN1cHBvcnRlZEVycm9yIH07CisKKyAgICBPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+
IGxIYXNoID0gY2FsY3VsYXRlRGlnZXN0KG1kLCBwYXJhbWV0ZXJzLmxhYmVsVmVjdG9yKCkpOwor
ICAgIGlmICghbEhhc2gpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJv
ciB9OworCisgICAgLy8gRGVjcnlwdCB0aGUgY2lwaGVyVGV4dCB0byB0aGUgZW5jb2RlZCBtZXNz
YWdlIGJ1ZmZlci4KKyAgICBWZWN0b3I8dWludDhfdD4gZW0oayk7CisgICAgaW50IGRiT2Zmc2V0
ID0gMSArIGhMZW47CisgICAgaW50IGRiTGVuID0gayAtIDEgLSBoTGVuOworICAgIGludCBzZWVk
T2Zmc2V0ID0gMTsKKyAgICBpZiAoayAhPSBSU0FfcHJpdmF0ZV9kZWNyeXB0KGssIGNpcGhlclRl
eHQuZGF0YSgpLCBlbS5kYXRhKCksIHJzYSwgUlNBX05PX1BBRERJTkcpKQorICAgICAgICByZXR1
cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBz
ZWVkTWFzayhoTGVuKTsKKyAgICBQS0NTMV9NR0YxKHNlZWRNYXNrLmRhdGEoKSwgc2VlZE1hc2su
c2l6ZSgpLCBlbS5kYXRhKCkgKyBkYk9mZnNldCwgZGJMZW4sIG1kKTsKKyAgICBmb3IgKGludCBp
ID0gMDsgaSA8IHNlZWRNYXNrLnNpemUoKTsgaSsrKQorICAgICAgICBlbVtpICsgc2VlZE9mZnNl
dF0gXj0gc2VlZE1hc2tbaV07CisKKyAgICBWZWN0b3I8dWludDhfdD4gZGJNYXNrKGRiTGVuKTsK
KyAgICBQS0NTMV9NR0YxKGRiTWFzay5kYXRhKCksIGRiTWFzay5zaXplKCksIGVtLmRhdGEoKSAr
IHNlZWRPZmZzZXQsIGhMZW4sIG1kKTsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGRiTWFzay5z
aXplKCk7IGkrKykKKyAgICAgICAgZW1bZGJPZmZzZXQgKyBpXSBePSBkYk1hc2tbaV07CisKKyAg
ICBib29sIHZhbGlkID0gdHJ1ZTsKKyAgICAvLyBUaGUgZmlyc3Qgb2N0ZXQgb2YgdGhlIGVuY29k
ZWQgbWVzc2FnZSBtdXN0IGJlIDB4MDAuCisgICAgaWYgKCFlbVswXSkKKyAgICAgICAgdmFsaWQg
PSBmYWxzZTsKKyAgICAvLyBWYWxpZGF0ZSB0aGUgbGFiZWwgaGFzaC4KKyAgICBmb3IgKGludCBp
ID0gMDsgaSA8IGhMZW47IGkrKykgeworICAgICAgICBpZiAoKCpsSGFzaClbaV0gIT0gZW1bZGJP
ZmZzZXQgKyBpXSkKKyAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CisgICAgfQorCisgICAgaW50
IG1lc3NhZ2VPZmZzZXQgPSBkYk9mZnNldCArIGhMZW47CisgICAgLy8gU2tpcCB0aGUgemVybyBw
YWRkaW5nIHN0cmluZy4KKyAgICB3aGlsZSAobWVzc2FnZU9mZnNldCA8IGsgJiYgIWVtW21lc3Nh
Z2VPZmZzZXRdKQorICAgICAgICBtZXNzYWdlT2Zmc2V0Kys7CisgICAgLy8gbWVzc2FnZU9mZnNl
dCBtdXN0IGJlIHBvaW50aW5nIHRoZSBzZXBhcmF0b3Igb2N0ZXQgMHgwMQorICAgIGlmIChtZXNz
YWdlT2Zmc2V0ID09IGsgfHwgZW1bbWVzc2FnZU9mZnNldF0gIT0gMSkKKyAgICAgICAgdmFsaWQg
PSBmYWxzZTsKKworICAgIGlmICghdmFsaWQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBP
cGVyYXRpb25FcnJvciB9OworICAgIAorICAgIG1lc3NhZ2VPZmZzZXQrKzsKKyAgICBpbnQgbUxl
biA9IGsgLSBtZXNzYWdlT2Zmc2V0OworICAgIFZlY3Rvcjx1aW50OF90PiBwbGFpblRleHQobUxl
bik7CisgICAgbWVtY3B5KHBsYWluVGV4dC5kYXRhKCksIGVtLmRhdGEoKSArIG1lc3NhZ2VPZmZz
ZXQsIHBsYWluVGV4dC5zaXplKCkpOworICAgIG1lbXNldChlbS5kYXRhKCksIDAsIGVtLnNpemUo
KSk7CisgICAgcmV0dXJuIHBsYWluVGV4dDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGht
UmVnaXN0cnlPcGVuU1NMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0
b0FsZ29yaXRobVJlZ2lzdHJ5T3BlblNTTC5jcHAKaW5kZXggODFiNzBmNzc4Njg3OTk0OGEwMDNi
MGZkNzgzMTliZTQwODFmMjcwYi4uNWU1ZGFkMmY3NmJkYTY0MzhmMDEzZjRkOWM0NGYxYzc5Y2Nk
OTkzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxn
b3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3Bl
bnNzbC9DcnlwdG9BbGdvcml0aG1SZWdpc3RyeU9wZW5TU0wuY3BwCkBAIC0zNCw2ICszNCw3IEBA
CiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtQUVTX0dDTS5oIgogI2luY2x1ZGUgIkNyeXB0b0Fs
Z29yaXRobUFFU19LVy5oIgogI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRobUhNQUMuaCIKKyNpbmNs
dWRlICJDcnlwdG9BbGdvcml0aG1SU0FfT0FFUC5oIgogI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRo
bVNIQTEuaCIKICNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1TSEEyMjQuaCIKICNpbmNsdWRlICJD
cnlwdG9BbGdvcml0aG1TSEEyNTYuaCIKQEAgLTUwLDYgKzUxLDcgQEAgdm9pZCBDcnlwdG9BbGdv
cml0aG1SZWdpc3RyeTo6cGxhdGZvcm1SZWdpc3RlckFsZ29yaXRobXMoKQogICAgIHJlZ2lzdGVy
QWxnb3JpdGhtPENyeXB0b0FsZ29yaXRobUFFU19HQ00+KCk7CiAgICAgcmVnaXN0ZXJBbGdvcml0
aG08Q3J5cHRvQWxnb3JpdGhtQUVTX0tXPigpOwogICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENyeXB0
b0FsZ29yaXRobUhNQUM+KCk7CisgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxnb3JpdGht
UlNBX09BRVA+KCk7CiAgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxnb3JpdGhtU0hBMT4o
KTsKICAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1TSEEyMjQ+KCk7CiAgICAg
cmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxnb3JpdGhtU0hBMjU2PigpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5UlNBT3BlblNTTC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlSU0FPcGVuU1NMLmNwcAppbmRl
eCA1ZDM2MDY3MGVjZTY3NDMxNzg2YTVhMDdhYzIzNTVmY2RiZGIzOTU3Li5jMDM0NGQ3YmFmM2Nm
MzM2N2UyODViODU3MTM5NWM3YTdiMGQ0Mjg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
cnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlSU0FPcGVuU1NMLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlSU0FPcGVuU1NMLmNwcApAQCAtMSw1ICsxLDUgQEAK
IC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50
IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVyYWN0aXZlIEVudGVydGFpbm1l
bnQgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOCw3MSArMjgsMzM1
IEBACiAKICNpZiBFTkFCTEUoV0VCX0NSWVBUTykKIAorI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRo
bVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAiQ3J5cHRvS2V5UGFpci5oIgogI2luY2x1ZGUgIkNyeXB0
b0tleVJTQUNvbXBvbmVudHMuaCIKLSNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1
ZGUgPG9wZW5zc2wvWDUwOS5oPgorI2luY2x1ZGUgPG9wZW5zc2wvZXZwLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotUmVmUHRyPENyeXB0b0tleVJTQT4gQ3J5cHRvS2V5UlNBOjpjcmVhdGUo
Q3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgYm9v
bCBoYXNIYXNoLCBjb25zdCBDcnlwdG9LZXlSU0FDb21wb25lbnRzJiwgYm9vbCBleHRyYWN0YWJs
ZSwgQ3J5cHRvS2V5VXNhZ2VCaXRtYXApCitzdGF0aWMgc2l6ZV90IGdldFJTQU1vZHVsdXNMZW5n
dGgoUlNBKiByc2EpCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGhhc0hhc2gpOwotICAgIFVOVVNFRF9Q
QVJBTShleHRyYWN0YWJsZSk7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICBpZiAoIXJzYSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIEJOX251
bV9iaXRzKHJzYS0+bik7CiB9CiAKLWJvb2wgQ3J5cHRvS2V5UlNBOjppc1Jlc3RyaWN0ZWRUb0hh
c2goQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciYpIGNvbnN0CitzdGF0aWMgVmVjdG9yPHVpbnQ4
X3Q+IGNvbnZlcnRUb0J5dGVzKEJJR05VTSogYmlnbnVtKQogewotICAgIG5vdEltcGxlbWVudGVk
KCk7CisgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzKEJOX251bV9ieXRlcyhiaWdudW0pKTsKKyAg
ICBCTl9ibjJiaW4oYmlnbnVtLCBieXRlcy5kYXRhKCkpOworICAgIHJldHVybiBieXRlczsKK30K
Kworc3RhdGljIEJJR05VTSogY29udmVydFRvQmlnTnVtYmVyKEJJR05VTSogYmlnbnVtLCBjb25z
dCBWZWN0b3I8dWludDhfdD4mIGJ5dGVzKQoreworICAgIHJldHVybiBCTl9iaW4yYm4oYnl0ZXMu
ZGF0YSgpLCBieXRlcy5zaXplKCksIGJpZ251bSk7Cit9CisKK1JlZlB0cjxDcnlwdG9LZXlSU0E+
IENyeXB0b0tleVJTQTo6Y3JlYXRlKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRlbnRpZmll
ciwgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBoYXNoLCBib29sIGhhc0hhc2gsIGNvbnN0IENy
eXB0b0tleVJTQUNvbXBvbmVudHMmIGtleURhdGEsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tl
eVVzYWdlQml0bWFwIHVzYWdlcykKK3sKKyAgICBDcnlwdG9LZXlUeXBlIGtleVR5cGU7CisgICAg
c3dpdGNoIChrZXlEYXRhLnR5cGUoKSkgeworICAgIGNhc2UgQ3J5cHRvS2V5UlNBQ29tcG9uZW50
czo6VHlwZTo6UHVibGljOgorICAgICAgICBrZXlUeXBlID0gQ3J5cHRvS2V5VHlwZTo6UHVibGlj
OworICAgICAgICBicmVhazsKKyAgICBjYXNlIENyeXB0b0tleVJTQUNvbXBvbmVudHM6OlR5cGU6
OlByaXZhdGU6CisgICAgICAgIGtleVR5cGUgPSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlOworICAg
ICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9
CisKKyAgICAvLyBXaGVuIGNyZWF0aW5nIGEgcHJpdmF0ZSBrZXksIHdlIHJlcXVpcmUgdGhlIHAg
YW5kIHEgcHJpbWUgaW5mb3JtYXRpb24uCisgICAgaWYgKGtleVR5cGUgPT0gQ3J5cHRvS2V5VHlw
ZTo6UHJpdmF0ZSAmJiAha2V5RGF0YS5oYXNBZGRpdGlvbmFsUHJpdmF0ZUtleVBhcmFtZXRlcnMo
KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAvLyBCdXQgd2UgZG9uJ3QgY3VycmVu
dGx5IHN1cHBvcnQgY3JlYXRpbmcga2V5cyB3aXRoIGFueSBhZGRpdGlvbmFsIHByaW1lIGluZm9y
bWF0aW9uLgorICAgIGlmICgha2V5RGF0YS5vdGhlclByaW1lSW5mb3MoKS5pc0VtcHR5KCkpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgLy8gRm9yIGJvdGggcHVibGljIGFuZCBwcml2
YXRlIGtleXMsIHdlIG5lZWQgdGhlIHB1YmxpYyBtb2R1bHVzIGFuZCBleHBvbmVudC4KKyAgICBp
ZiAoa2V5RGF0YS5tb2R1bHVzKCkuaXNFbXB0eSgpIHx8IGtleURhdGEuZXhwb25lbnQoKS5pc0Vt
cHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgLy8gRm9yIHByaXZhdGUga2V5
cywgd2UgcmVxdWlyZSB0aGUgcHJpdmF0ZSBleHBvbmVudCwgYXMgd2VsbCBhcyBwIGFuZCBxIHBy
aW1lIGluZm9ybWF0aW9uLgorICAgIGlmIChrZXlUeXBlID09IENyeXB0b0tleVR5cGU6OlByaXZh
dGUpIHsKKyAgICAgICAgaWYgKGtleURhdGEucHJpdmF0ZUV4cG9uZW50KCkuaXNFbXB0eSgpIHx8
IGtleURhdGEuZmlyc3RQcmltZUluZm8oKS5wcmltZUZhY3Rvci5pc0VtcHR5KCkgfHwga2V5RGF0
YS5zZWNvbmRQcmltZUluZm8oKS5wcmltZUZhY3Rvci5pc0VtcHR5KCkpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICBhdXRvIHJzYSA9IFJTQVB0cihSU0FfbmV3KCkp
OworICAgIGlmICghcnNhKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJzYS0+biA9
IGNvbnZlcnRUb0JpZ051bWJlcihyc2EtPm4sIGtleURhdGEubW9kdWx1cygpKTsKKyAgICByc2Et
PmUgPSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5lLCBrZXlEYXRhLmV4cG9uZW50KCkpOworICAg
IGlmICghcnNhLT5uIHx8ICFyc2EtPmUpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAg
aWYgKGtleVR5cGUgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSkgeworICAgICAgICByc2EtPmQg
PSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5kLCBrZXlEYXRhLnByaXZhdGVFeHBvbmVudCgpKTsK
KyAgICAgICAgcnNhLT5wID0gY29udmVydFRvQmlnTnVtYmVyKHJzYS0+cCwga2V5RGF0YS5maXJz
dFByaW1lSW5mbygpLnByaW1lRmFjdG9yKTsKKyAgICAgICAgcnNhLT5xID0gY29udmVydFRvQmln
TnVtYmVyKHJzYS0+cSwga2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5wcmltZUZhY3Rvcik7Cisg
ICAgICAgIGlmICghcnNhLT5kIHx8ICFyc2EtPnAgfHwgIXJzYS0+cSkKKyAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOworCisgICAgICAgIC8vIFdlIHNldCBkbXAxLCBkbXBxMSwgYW5kIGlxbXAg
bWVtYmVyIG9mIHRoZSBSU0Egc3RydWN0IGlmIHRoZSBrZXlEYXRhIGhhcyBjb3JyZXNwb25kaW5n
IGRhdGEuCisKKyAgICAgICAgLy8gZG1wMSAtLSBkIG1vZCAocCAtIDEpCisgICAgICAgIGlmICgh
a2V5RGF0YS5maXJzdFByaW1lSW5mbygpLmZhY3RvckNSVEV4cG9uZW50LmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgIHJzYS0+ZG1wMSA9IGNvbnZlcnRUb0JpZ051bWJlcihyc2EtPmRtcDEsIGtleURh
dGEuZmlyc3RQcmltZUluZm8oKS5mYWN0b3JDUlRFeHBvbmVudCk7CisgICAgICAgIC8vIGRtcTEg
LS0gZCBtb2QgKHEgLSAxKQorICAgICAgICBpZiAoIWtleURhdGEuc2Vjb25kUHJpbWVJbmZvKCku
ZmFjdG9yQ1JURXhwb25lbnQuaXNFbXB0eSgpKQorICAgICAgICAgICAgcnNhLT5kbXExID0gY29u
dmVydFRvQmlnTnVtYmVyKHJzYS0+ZG1xMSwga2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5mYWN0
b3JDUlRFeHBvbmVudCk7CisgICAgICAgIC8vIGlxbXAgLS0gcV4oLTEpIG1vZCBwCisgICAgICAg
IGlmICgha2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5mYWN0b3JDUlRDb2VmZmljaWVudC5pc0Vt
cHR5KCkpCisgICAgICAgICAgICByc2EtPmlxbXAgPSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5p
cW1wLCBrZXlEYXRhLnNlY29uZFByaW1lSW5mbygpLmZhY3RvckNSVENvZWZmaWNpZW50KTsKKyAg
ICB9CisKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tleVJTQShpZGVudGlmaWVyLCBo
YXNoLCBoYXNIYXNoLCBrZXlUeXBlLCBXVEZNb3ZlKHJzYSksIGV4dHJhY3RhYmxlLCB1c2FnZXMp
KTsKK30KKworQ3J5cHRvS2V5UlNBOjpDcnlwdG9LZXlSU0EoQ3J5cHRvQWxnb3JpdGhtSWRlbnRp
ZmllciBpZGVudGlmaWVyLCBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyIGhhc2gsIGJvb2wgaGFz
SGFzaCwgQ3J5cHRvS2V5VHlwZSB0eXBlLCBQbGF0Zm9ybVJTQUtleUNvbnRhaW5lciYmIHBsYXRm
b3JtS2V5LCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCB1c2FnZXMpCisg
ICAgOiBDcnlwdG9LZXkoaWRlbnRpZmllciwgdHlwZSwgZXh0cmFjdGFibGUsIHVzYWdlcykKKyAg
ICAsIG1fcGxhdGZvcm1LZXkoV1RGTW92ZShwbGF0Zm9ybUtleSkpCisgICAgLCBtX3Jlc3RyaWN0
ZWRUb1NwZWNpZmljSGFzaChoYXNIYXNoKQorICAgICwgbV9oYXNoKGhhc2gpCit7Cit9CisKK2Jv
b2wgQ3J5cHRvS2V5UlNBOjppc1Jlc3RyaWN0ZWRUb0hhc2goQ3J5cHRvQWxnb3JpdGhtSWRlbnRp
ZmllciYgaWRlbnRpZmllcikgY29uc3QKK3sKKyAgICBpZiAoIW1fcmVzdHJpY3RlZFRvU3BlY2lm
aWNIYXNoKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZGVudGlmaWVyID0gbV9oYXNo
OwogICAgIHJldHVybiB0cnVlOwogfQogCiBzaXplX3QgQ3J5cHRvS2V5UlNBOjprZXlTaXplSW5C
aXRzKCkgY29uc3QKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiAwOworICAg
IHJldHVybiBnZXRSU0FNb2R1bHVzTGVuZ3RoKG1fcGxhdGZvcm1LZXkuZ2V0KCkpOwogfQogCi12
b2lkIENyeXB0b0tleVJTQTo6Z2VuZXJhdGVQYWlyKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIs
IENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIsIGJvb2wgaGFzSGFzaCwgdW5zaWduZWQgbW9kdWx1
c0xlbmd0aCwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBwdWJsaWNFeHBvbmVudCwgYm9vbCBleHRy
YWN0YWJsZSwgQ3J5cHRvS2V5VXNhZ2VCaXRtYXAsIEtleVBhaXJDYWxsYmFjayYmLCBWb2lkQ2Fs
bGJhY2smJiBmYWlsdXJlQ2FsbGJhY2ssIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKQorLy8gQ29u
dmVydCB0aGUgZXhwb25lbnQgdmVjdG9yIHRvIGEgMzItYml0IHZhbHVlLCBpZiBwb3NzaWJsZS4K
K3N0YXRpYyBPcHRpb25hbDx1aW50MzJfdD4gZXhwb25lbnRWZWN0b3JUb1VJbnQzMihjb25zdCBW
ZWN0b3I8dWludDhfdD4mIGV4cG9uZW50KQogewotICAgIFVOVVNFRF9QQVJBTShoYXNIYXNoKTsK
LSAgICBVTlVTRURfUEFSQU0obW9kdWx1c0xlbmd0aCk7Ci0gICAgVU5VU0VEX1BBUkFNKHB1Ymxp
Y0V4cG9uZW50KTsKLSAgICBVTlVTRURfUEFSQU0oZXh0cmFjdGFibGUpOwotICAgIFVOVVNFRF9Q
QVJBTShmYWlsdXJlQ2FsbGJhY2spOwotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKGV4
cG9uZW50LnNpemUoKSA+IDQpIHsKKyAgICAgICAgaWYgKHN0ZDo6YW55X29mKGV4cG9uZW50LmJl
Z2luKCksIGV4cG9uZW50LmVuZCgpIC0gNCwgW10odWludDhfdCBlbGVtZW50KSB7IHJldHVybiAh
IWVsZW1lbnQ7IH0pKQorICAgICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICB9CisK
KyAgICB1aW50MzJfdCByZXN1bHQgPSAwOworICAgIGZvciAoc2l6ZV90IHNpemUgPSBleHBvbmVu
dC5zaXplKCksIGkgPSBzdGQ6Om1pbjxzaXplX3Q+KDQsIHNpemUpOyBpID4gMDsgLS1pKSB7Cisg
ICAgICAgIHJlc3VsdCA8PD0gODsKKyAgICAgICAgcmVzdWx0ICs9IGV4cG9uZW50W3NpemUgLSBp
XTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCi1SZWZQdHI8Q3J5cHRvS2V5UlNB
PiBDcnlwdG9LZXlSU0E6OmltcG9ydFNwa2koQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgT3B0
aW9uYWw8Q3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcj4sIFZlY3Rvcjx1aW50OF90PiYmLCBib29s
IGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCkKK3ZvaWQgQ3J5cHRvS2V5UlNBOjpn
ZW5lcmF0ZVBhaXIoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBhbGdvcml0aG0sIENyeXB0b0Fs
Z29yaXRobUlkZW50aWZpZXIgaGFzaCwgYm9vbCBoYXNIYXNoLCB1bnNpZ25lZCBtb2R1bHVzTGVu
Z3RoLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIHB1YmxpY0V4cG9uZW50LCBib29sIGV4dHJhY3Rh
YmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCB1c2FnZXMsIEtleVBhaXJDYWxsYmFjayYmIGNhbGxi
YWNrLCBWb2lkQ2FsbGJhY2smJiBmYWlsdXJlQ2FsbGJhY2ssIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqKQogewotICAgIFVOVVNFRF9QQVJBTShleHRyYWN0YWJsZSk7Ci0gICAgbm90SW1wbGVtZW50
ZWQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAvLyBPcGVuU1NMIGRvZXNuJ3QgcmVwb3J0
IGFuIGVycm9yIGlmIHRoZSBleHBvbmVudCBpcyBzbWFsbGVyIHRoYW4gdGhyZWUgb3IgZXZlbi4K
KyAgICBhdXRvIGUgPSBleHBvbmVudFZlY3RvclRvVUludDMyKHB1YmxpY0V4cG9uZW50KTsKKyAg
ICBpZiAoIWUgfHwgKmUgPCAzIHx8ICEoKmUgJiAweDEpKSB7CisgICAgICAgIGZhaWx1cmVDYWxs
YmFjaygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBleHBvbmVudCA9IEJJ
R05VTVB0cihjb252ZXJ0VG9CaWdOdW1iZXIobnVsbHB0ciwgcHVibGljRXhwb25lbnQpKTsKKyAg
ICBhdXRvIHJzYSA9IFJTQVB0cihSU0FfbmV3KCkpOworICAgIGlmICghZXhwb25lbnQgfHwgIXJz
YSB8fCBSU0FfZ2VuZXJhdGVfa2V5X2V4KHJzYS5nZXQoKSwgbW9kdWx1c0xlbmd0aCwgZXhwb25l
bnQuZ2V0KCksIG51bGxwdHIpICE9IDEpIHsKKyAgICAgICAgZmFpbHVyZUNhbGxiYWNrKCk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIHB1YmxpY0tleSA9IENyeXB0b0tleVJT
QTo6Y3JlYXRlKGFsZ29yaXRobSwgaGFzaCwgaGFzSGFzaCwgQ3J5cHRvS2V5VHlwZTo6UHVibGlj
LCBSU0FQdHIoUlNBUHVibGljS2V5X2R1cChyc2EuZ2V0KCkpKSwgdHJ1ZSwgdXNhZ2VzKTsKKyAg
ICBhdXRvIHByaXZhdGVLZXkgPSBDcnlwdG9LZXlSU0E6OmNyZWF0ZShhbGdvcml0aG0sIGhhc2gs
IGhhc0hhc2gsIENyeXB0b0tleVR5cGU6OlByaXZhdGUsIFdURk1vdmUocnNhKSwgZXh0cmFjdGFi
bGUsIHVzYWdlcyk7CisgICAgY2FsbGJhY2soQ3J5cHRvS2V5UGFpciB7IFdURk1vdmUocHVibGlj
S2V5KSwgV1RGTW92ZShwcml2YXRlS2V5KSB9KTsKIH0KIAotUmVmUHRyPENyeXB0b0tleVJTQT4g
Q3J5cHRvS2V5UlNBOjppbXBvcnRQa2NzOChDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLCBPcHRp
b25hbDxDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyPiwgVmVjdG9yPHVpbnQ4X3Q+JiYsIGJvb2wg
ZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFwKQorUmVmUHRyPENyeXB0b0tleVJTQT4g
Q3J5cHRvS2V5UlNBOjppbXBvcnRTcGtpKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgT3B0aW9uYWw8Q3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcj4gaGFzaCwgVmVjdG9yPHVp
bnQ4X3Q+JiYga2V5RGF0YSwgYm9vbCBleHRyYWN0YWJsZSwgQ3J5cHRvS2V5VXNhZ2VCaXRtYXAg
dXNhZ2VzKQogewotICAgIFVOVVNFRF9QQVJBTShleHRyYWN0YWJsZSk7Ci0gICAgbm90SW1wbGVt
ZW50ZWQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAvLyBXZSBuZWVkIGEgbG9jYWwgcG9p
bnRlciB2YXJpYWJsZSB0byBwYXNzIHRvIGQyaSAoREVSIHRvIGludGVybmFsKSBmdW5jdGlvbnMo
KS4KKyAgICBjb25zdCB1aW50OF90KiBwdHIgPSBrZXlEYXRhLmRhdGEoKTsKKworICAgIC8vIFdl
IHVzZSBkMmlfUFVCS0VZKCkgdG8gaW1wb3J0IGEgcHVibGljIGtleS4KKyAgICBhdXRvIHBrZXkg
PSBFdnBQS2V5UHRyKGQyaV9QVUJLRVkobnVsbHB0ciwgJnB0ciwga2V5RGF0YS5zaXplKCkpKTsK
KyAgICBpZiAoIXBrZXkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgYXV0byByc2Eg
PSBSU0FQdHIoRVZQX1BLRVlfZ2V0MV9SU0EocGtleS5nZXQoKSkpOworICAgIGlmICghcnNhKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ3J5cHRv
S2V5UlNBKGlkZW50aWZpZXIsIGhhc2gudmFsdWVPcihDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVy
OjpTSEFfMSksICEhaGFzaCwgQ3J5cHRvS2V5VHlwZTo6UHVibGljLCBXVEZNb3ZlKHJzYSksIGV4
dHJhY3RhYmxlLCB1c2FnZXMpKTsKK30KKworUmVmUHRyPENyeXB0b0tleVJTQT4gQ3J5cHRvS2V5
UlNBOjppbXBvcnRQa2NzOChDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyIGlkZW50aWZpZXIsIE9w
dGlvbmFsPENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI+IGhhc2gsIFZlY3Rvcjx1aW50OF90PiYm
IGtleURhdGEsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFwIHVzYWdlcykK
K3sKKyAgICAvLyBXZSBuZWVkIGEgbG9jYWwgcG9pbnRlciB2YXJpYWJsZSB0byBwYXNzIHRvIGQy
aSAoREVSIHRvIGludGVybmFsKSBmdW5jdGlvbnMoKS4KKyAgICBjb25zdCB1aW50OF90KiBwdHIg
PSBrZXlEYXRhLmRhdGEoKTsKKworICAgIC8vIFdlIHVzZSBkMmlfUEtDUzhfUFJJVl9LRVlfSU5G
TygpIHRvIGltcG9ydCBhIHByaXZhdGUga2V5LgorICAgIGF1dG8gcDhpbmYgPSBQS0NTOFByaXZL
ZXlJbmZvUHRyKGQyaV9QS0NTOF9QUklWX0tFWV9JTkZPKG51bGxwdHIsICZwdHIsIGtleURhdGEu
c2l6ZSgpKSk7CisgICAgaWYgKCFwOGluZikKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBhdXRvIHBrZXkgPSBFdnBQS2V5UHRyKEVWUF9QS0NTODJQS0VZKHA4aW5mLmdldCgpKSk7Cisg
ICAgaWYgKCFwa2V5KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGF1dG8gcnNhID0g
UlNBUHRyKEVWUF9QS0VZX2dldDFfUlNBKHBrZXkuZ2V0KCkpKTsKKyAgICBpZiAoIXJzYSkKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tl
eVJTQShpZGVudGlmaWVyLCBoYXNoLnZhbHVlT3IoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6
U0hBXzEpLCAhIWhhc2gsIENyeXB0b0tleVR5cGU6OlByaXZhdGUsIFdURk1vdmUocnNhKSwgZXh0
cmFjdGFibGUsIHVzYWdlcykpOwogfQogCiBFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENy
eXB0b0tleVJTQTo6ZXhwb3J0U3BraSgpIGNvbnN0CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsK
LSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBpZiAodHlw
ZSgpICE9IENyeXB0b0tleVR5cGU6OlB1YmxpYykKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRBY2Nlc3NFcnJvciB9OworCisgICAgUlNBKiByc2EgPSBtX3BsYXRmb3JtS2V5Lmdl
dCgpOworICAgIGlmICghcnNhKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9u
RXJyb3IgfTsKKworICAgIGF1dG8gcGtleSA9IEV2cFBLZXlQdHIoRVZQX1BLRVlfbmV3KCkpOwor
ICAgIGlmICghcGtleSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9y
IH07CisKKyAgICBpZiAoRVZQX1BLRVlfc2V0MV9SU0EocGtleS5nZXQoKSwgcnNhKSAhPSAxKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGludCBs
ZW4gPSBpMmRfUFVCS0VZKHBrZXkuZ2V0KCksIG51bGxwdHIpOworICAgIGlmIChsZW4gPCAwKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rv
cjx1aW50OF90PiBrZXlEYXRhKGxlbik7CisgICAgYXV0byBwdHIgPSBrZXlEYXRhLmRhdGEoKTsK
KyAgICBpZiAoaTJkX1BVQktFWShwa2V5LmdldCgpLCAmcHRyKSA8IDApCisgICAgICAgIHJldHVy
biBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgcmV0dXJuIGtleURhdGE7CiB9
CiAKIEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvS2V5UlNBOjpleHBvcnRQa2Nz
OCgpIGNvbnN0CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gRXhjZXB0aW9u
IHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBSU0EqIHJzYSA9IG1fcGxhdGZvcm1LZXkuZ2V0
KCk7CisgICAgaWYgKCFyc2EpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25F
cnJvciB9OworCisgICAgYXV0byBwa2V5ID0gRXZwUEtleVB0cihFVlBfUEtFWV9uZXcoKSk7Cisg
ICAgaWYgKCFwa2V5KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3Ig
fTsKKworICAgIGlmIChFVlBfUEtFWV9zZXQxX1JTQShwa2V5LmdldCgpLCByc2EpICE9IDEpCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgYXV0byBw
OGluZiA9IFBLQ1M4UHJpdktleUluZm9QdHIoRVZQX1BLRVkyUEtDUzgocGtleS5nZXQoKSkpOwor
ICAgIGlmICghcDhpbmYpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJv
ciB9OworCisgICAgaW50IGxlbiA9IGkyZF9QS0NTOF9QUklWX0tFWV9JTkZPKHA4aW5mLmdldCgp
LCBudWxscHRyKTsKKyAgICBpZiAobGVuIDwgMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBWZWN0b3I8dWludDhfdD4ga2V5RGF0YShsZW4pOwor
ICAgIGF1dG8gcHRyID0ga2V5RGF0YS5kYXRhKCk7CisgICAgaWYgKGkyZF9QS0NTOF9QUklWX0tF
WV9JTkZPKHA4aW5mLmdldCgpLCAmcHRyKSA8IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBPcGVyYXRpb25FcnJvciB9OworCisgICAgcmV0dXJuIGtleURhdGE7Cit9CisKK2F1dG8gQ3J5
cHRvS2V5UlNBOjphbGdvcml0aG0oKSBjb25zdCAtPiBLZXlBbGdvcml0aG0KK3sKKyAgICBSU0Eq
IHJzYSA9IG1fcGxhdGZvcm1LZXkuZ2V0KCk7CisgICAgYXV0byBtb2R1bHVzTGVuZ3RoID0gZ2V0
UlNBTW9kdWx1c0xlbmd0aChyc2EpOworICAgIGF1dG8gcHVibGljRXhwb25lbnQgPSByc2EgPyBj
b252ZXJ0VG9CeXRlcyhyc2EtPmUpIDogVmVjdG9yPHVpbnQ4X3Q+IHsgfTsKKworICAgIGlmICht
X3Jlc3RyaWN0ZWRUb1NwZWNpZmljSGFzaCkgeworICAgICAgICBDcnlwdG9Sc2FIYXNoZWRLZXlB
bGdvcml0aG0gcmVzdWx0OworICAgICAgICByZXN1bHQubmFtZSA9IENyeXB0b0FsZ29yaXRobVJl
Z2lzdHJ5OjpzaW5nbGV0b24oKS5uYW1lKGFsZ29yaXRobUlkZW50aWZpZXIoKSk7CisgICAgICAg
IHJlc3VsdC5tb2R1bHVzTGVuZ3RoID0gbW9kdWx1c0xlbmd0aDsKKyAgICAgICAgcmVzdWx0LnB1
YmxpY0V4cG9uZW50ID0gVWludDhBcnJheTo6dHJ5Q3JlYXRlKHB1YmxpY0V4cG9uZW50LmRhdGEo
KSwgcHVibGljRXhwb25lbnQuc2l6ZSgpKTsKKyAgICAgICAgcmVzdWx0Lmhhc2gubmFtZSA9IENy
eXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5uYW1lKG1faGFzaCk7CisgICAgICAg
IHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAgQ3J5cHRvUnNhS2V5QWxnb3JpdGhtIHJlc3Vs
dDsKKyAgICByZXN1bHQubmFtZSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24o
KS5uYW1lKGFsZ29yaXRobUlkZW50aWZpZXIoKSk7CisgICAgcmVzdWx0Lm1vZHVsdXNMZW5ndGgg
PSBtb2R1bHVzTGVuZ3RoOworICAgIHJlc3VsdC5wdWJsaWNFeHBvbmVudCA9IFVpbnQ4QXJyYXk6
OnRyeUNyZWF0ZShwdWJsaWNFeHBvbmVudC5kYXRhKCksIHB1YmxpY0V4cG9uZW50LnNpemUoKSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogc3RkOjp1bmlxdWVfcHRyPENyeXB0b0tleVJTQUNv
bXBvbmVudHM+IENyeXB0b0tleVJTQTo6ZXhwb3J0RGF0YSgpIGNvbnN0CiB7Ci0gICAgbm90SW1w
bGVtZW50ZWQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBSU0EqIHJzYSA9IG1fcGxhdGZv
cm1LZXkuZ2V0KCk7CisgICAgaWYgKCFyc2EpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisg
ICAgc3dpdGNoICh0eXBlKCkpIHsKKyAgICBjYXNlIENyeXB0b0tleVR5cGU6OlB1YmxpYzoKKyAg
ICAgICAgLy8gV2UgbmVlZCB0aGUgcHVibGljIG1vZHVsdXMgYW5kIGV4cG9uZW50IGZvciB0aGUg
cHVibGljIGtleS4KKyAgICAgICAgaWYgKCFyc2EtPm4gfHwgIXJzYS0+ZSkKKyAgICAgICAgICAg
IHJldHVybiBudWxscHRyOworICAgICAgICByZXR1cm4gQ3J5cHRvS2V5UlNBQ29tcG9uZW50czo6
Y3JlYXRlUHVibGljKGNvbnZlcnRUb0J5dGVzKHJzYS0+biksIGNvbnZlcnRUb0J5dGVzKHJzYS0+
ZSkpOworICAgIGNhc2UgQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZTogeworICAgICAgICAvLyBXZSBu
ZWVkIHRoZSBwdWJsaWMgbW9kdWx1cywgZXhwb25lbnQsIGFuZCBwcml2YXRlIGV4cG9uZW50LCBh
cyB3ZWxsIGFzIHAgYW5kIHEgcHJpbWUgaW5mb3JtYXRpb24uCisgICAgICAgIGlmICghcnNhLT5u
IHx8ICFyc2EtPmUgfHwgIXJzYS0+ZCB8fCAhcnNhLT5wIHx8ICFyc2EtPnEpCisgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICBDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpQcmlt
ZUluZm8gZmlyc3RQcmltZUluZm87CisgICAgICAgIGZpcnN0UHJpbWVJbmZvLnByaW1lRmFjdG9y
ID0gY29udmVydFRvQnl0ZXMocnNhLT5wKTsKKworICAgICAgICBDcnlwdG9LZXlSU0FDb21wb25l
bnRzOjpQcmltZUluZm8gc2Vjb25kUHJpbWVJbmZvOworICAgICAgICBzZWNvbmRQcmltZUluZm8u
cHJpbWVGYWN0b3IgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPnEpOworCisgICAgICAgIGF1dG8gY29u
dGV4dCA9IEJOQ3R4UHRyKEJOX0NUWF9uZXcoKSk7CisgICAgICAgIC8vIGRtcDEgLS0gZCBtb2Qg
KHAgLSAxKQorICAgICAgICBpZiAocnNhLT5kbXAxKQorICAgICAgICAgICAgZmlyc3RQcmltZUlu
Zm8uZmFjdG9yQ1JURXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmRtcDEpOworICAgICAg
ICBlbHNlIHsKKyAgICAgICAgICAgIGF1dG8gZG1wMSA9IEJJR05VTVB0cihCTl9uZXcoKSk7Cisg
ICAgICAgICAgICBhdXRvIHBtMSA9IEJJR05VTVB0cihCTl9kdXAocnNhLT5wKSk7CisgICAgICAg
ICAgICBpZiAoQk5fc3ViX3dvcmQocG0xLmdldCgpLCAxKSA9PSAxICYmIEJOX21vZChkbXAxLmdl
dCgpLCByc2EtPmQsIHBtMS5nZXQoKSwgY29udGV4dC5nZXQoKSkgPT0gMSkKKyAgICAgICAgICAg
ICAgICBmaXJzdFByaW1lSW5mby5mYWN0b3JDUlRFeHBvbmVudCA9IGNvbnZlcnRUb0J5dGVzKGRt
cDEuZ2V0KCkpOworICAgICAgICB9CisKKyAgICAgICAgLy8gZG1xMSAtLSBkIG1vZCAocSAtIDEp
CisgICAgICAgIGlmIChyc2EtPmRtcTEpCisgICAgICAgICAgICBzZWNvbmRQcmltZUluZm8uZmFj
dG9yQ1JURXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmRtcTEpOworICAgICAgICBlbHNl
IHsKKyAgICAgICAgICAgIGF1dG8gZG1xMSA9IEJJR05VTVB0cihCTl9uZXcoKSk7CisgICAgICAg
ICAgICBhdXRvIHFtMSA9IEJJR05VTVB0cihCTl9kdXAocnNhLT5xKSk7CisgICAgICAgICAgICBp
ZiAoQk5fc3ViX3dvcmQocW0xLmdldCgpLCAxKSA9PSAxICYmIEJOX21vZChkbXExLmdldCgpLCBy
c2EtPmQsIHFtMS5nZXQoKSwgY29udGV4dC5nZXQoKSkgPT0gMSkKKyAgICAgICAgICAgICAgICBz
ZWNvbmRQcmltZUluZm8uZmFjdG9yQ1JURXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhkbXExLmdl
dCgpKTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIGlxbXAgLS0gcV4oLTEpIG1vZCBwCisgICAg
ICAgIGlmIChyc2EtPmlxbXApCisgICAgICAgICAgICBzZWNvbmRQcmltZUluZm8uZmFjdG9yQ1JU
Q29lZmZpY2llbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmlxbXApOworICAgICAgICBlbHNlIHsK
KyAgICAgICAgICAgIGF1dG8gaXFtcCA9IEJJR05VTVB0cihCTl9tb2RfaW52ZXJzZShudWxscHRy
LCByc2EtPnEsIHJzYS0+cCwgY29udGV4dC5nZXQoKSkpOworICAgICAgICAgICAgaWYgKGlxbXAp
CisgICAgICAgICAgICAgICAgc2Vjb25kUHJpbWVJbmZvLmZhY3RvckNSVENvZWZmaWNpZW50ID0g
Y29udmVydFRvQnl0ZXMoaXFtcC5nZXQoKSk7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4g
Q3J5cHRvS2V5UlNBQ29tcG9uZW50czo6Y3JlYXRlUHJpdmF0ZVdpdGhBZGRpdGlvbmFsRGF0YSgK
KyAgICAgICAgICAgIGNvbnZlcnRUb0J5dGVzKHJzYS0+biksIGNvbnZlcnRUb0J5dGVzKHJzYS0+
ZSksIGNvbnZlcnRUb0J5dGVzKHJzYS0+ZCksCisgICAgICAgICAgICBXVEZNb3ZlKGZpcnN0UHJp
bWVJbmZvKSwgV1RGTW92ZShzZWNvbmRQcmltZUluZm8pLCBWZWN0b3I8Q3J5cHRvS2V5UlNBQ29t
cG9uZW50czo6UHJpbWVJbmZvPiB7IH0pOworICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlw
dG8vb3BlbnNzbC9PcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlw
dG8vb3BlbnNzbC9PcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmgKaW5kZXggZWUwYjk1ZGU4MzNhMGZk
MTQ4MzNkMGRmYWVjMzIyZTQ0NGQ3NWQzOS4uYjBlZTQxMTQ4ZjdmYmQ1N2RiNWIxZWI2Njg5ZDgy
ZDM5Y2U0M2ZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3Bl
blNTTENyeXB0b1VuaXF1ZVB0ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3Ns
L09wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaApAQCAtMjcsNyArMjcsNyBAQAogI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlIDxtZW1vcnk+Ci0jaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KKyNpbmNsdWRl
IDxvcGVuc3NsL1g1MDkuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC02OSw0ICs2OSw1
NSBAQCBzdHJ1Y3QgT3BlblNTTENyeXB0b1B0ckRlbGV0ZXI8RVZQX1BLRVk+IHsKIAogdXNpbmcg
RXZwUEtleVB0ciA9IE9wZW5TU0xDcnlwdG9QdHI8RVZQX1BLRVk+OwogCit0ZW1wbGF0ZSA8Pgor
c3RydWN0IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEVWUF9QS0VZX0NUWD4geworICAgIHZvaWQg
b3BlcmF0b3IoKShFVlBfUEtFWV9DVFgqIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIEVWUF9Q
S0VZX0NUWF9mcmVlKHB0cik7CisgICAgfQorfTsKKwordXNpbmcgRXZwUEtleUN0eFB0ciA9IE9w
ZW5TU0xDcnlwdG9QdHI8RVZQX1BLRVlfQ1RYPjsKKwordGVtcGxhdGUgPD4KK3N0cnVjdCBPcGVu
U1NMQ3J5cHRvUHRyRGVsZXRlcjxSU0E+IHsKKyAgICB2b2lkIG9wZXJhdG9yKCkoUlNBKiBwdHIp
IGNvbnN0CisgICAgeworICAgICAgICBSU0FfZnJlZShwdHIpOworICAgIH0KK307CisKK3VzaW5n
IFJTQVB0ciA9IE9wZW5TU0xDcnlwdG9QdHI8UlNBPjsKKwordGVtcGxhdGUgPD4KK3N0cnVjdCBP
cGVuU1NMQ3J5cHRvUHRyRGVsZXRlcjxQS0NTOF9QUklWX0tFWV9JTkZPPiB7CisgICAgdm9pZCBv
cGVyYXRvcigpKFBLQ1M4X1BSSVZfS0VZX0lORk8qIHB0cikgY29uc3QKKyAgICB7CisgICAgICAg
IFBLQ1M4X1BSSVZfS0VZX0lORk9fZnJlZShwdHIpOworICAgIH0KK307CisKK3VzaW5nIFBLQ1M4
UHJpdktleUluZm9QdHIgPSBPcGVuU1NMQ3J5cHRvUHRyPFBLQ1M4X1BSSVZfS0VZX0lORk8+Owor
Cit0ZW1wbGF0ZSA8Pgorc3RydWN0IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEJJR05VTT4gewor
ICAgIHZvaWQgb3BlcmF0b3IoKShCSUdOVU0qIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIEJO
X2NsZWFyX2ZyZWUocHRyKTsKKyAgICB9Cit9OworCit1c2luZyBCSUdOVU1QdHIgPSBPcGVuU1NM
Q3J5cHRvUHRyPEJJR05VTT47CisKK3RlbXBsYXRlIDw+CitzdHJ1Y3QgT3BlblNTTENyeXB0b1B0
ckRlbGV0ZXI8Qk5fQ1RYPiB7CisgICAgdm9pZCBvcGVyYXRvcigpKEJOX0NUWCogcHRyKSBjb25z
dAorICAgIHsKKyAgICAgICAgQk5fQ1RYX2ZyZWUocHRyKTsKKyAgICB9Cit9OworCit1c2luZyBC
TkN0eFB0ciA9IE9wZW5TU0xDcnlwdG9QdHI8Qk5fQ1RYPjsKKworCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NM
VXRpbGl0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGls
aXRpZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ2MDFhYTI2MWMzZmMzODEyNDE5N2FhYWUxMzgxOTk4MDEy
YjEwN2MKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9P
cGVuU1NMVXRpbGl0aWVzLmNwcApAQCAtMCwwICsxLDc5IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJPcGVuU1NMVXRpbGl0aWVzLmgiCisKKyNpZiBF
TkFCTEUoV0VCX0NSWVBUTykKKworI2luY2x1ZGUgIk9wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaCIK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjb25zdCBFVlBfTUQqIGRpZ2VzdEFsZ29yaXRobShD
cnlwdG9BbGdvcml0aG1JZGVudGlmaWVyIGhhc2hGdW5jdGlvbikKK3sKKyAgICBzd2l0Y2ggKGhh
c2hGdW5jdGlvbikgeworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzE6
CisgICAgICAgIHJldHVybiBFVlBfc2hhMSgpOworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRl
bnRpZmllcjo6U0hBXzIyNDoKKyAgICAgICAgcmV0dXJuIEVWUF9zaGEyMjQoKTsKKyAgICBjYXNl
IENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI6OlNIQV8yNTY6CisgICAgICAgIHJldHVybiBFVlBf
c2hhMjU2KCk7CisgICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfMzg0Ogor
ICAgICAgICByZXR1cm4gRVZQX3NoYTM4NCgpOworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRl
bnRpZmllcjo6U0hBXzUxMjoKKyAgICAgICAgcmV0dXJuIEVWUF9zaGE1MTIoKTsKKyAgICBkZWZh
dWx0OgorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9Cit9CisKK09wdGlvbmFsPFZlY3Rv
cjx1aW50OF90Pj4gY2FsY3VsYXRlRGlnZXN0KGNvbnN0IEVWUF9NRCogYWxnb3JpdGhtLCBjb25z
dCBWZWN0b3I8dWludDhfdD4mIG1lc3NhZ2UpCit7CisgICAgRXZwRGlnZXN0Q3R4UHRyIGN0eDsg
CisgICAgaWYgKCEoY3R4ID0gRXZwRGlnZXN0Q3R4UHRyKEVWUF9NRF9DVFhfY3JlYXRlKCkpKSkK
KyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIGludCBkaWdlc3RMZW5ndGggPSBF
VlBfTURfc2l6ZShhbGdvcml0aG0pOworICAgIGlmIChkaWdlc3RMZW5ndGggPD0gMCkKKyAgICAg
ICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICBWZWN0b3I8dWludDhfdD4gZGlnZXN0KGRpZ2Vz
dExlbmd0aCk7CisKKyAgICBpZiAoRVZQX0RpZ2VzdEluaXRfZXgoY3R4LmdldCgpLCBhbGdvcml0
aG0sIG51bGxwdHIpICE9IDEpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBp
ZiAoRVZQX0RpZ2VzdFVwZGF0ZShjdHguZ2V0KCksIG1lc3NhZ2UuZGF0YSgpLCBtZXNzYWdlLnNp
emUoKSkgIT0gMSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIGlmIChFVlBf
RGlnZXN0RmluYWxfZXgoY3R4LmdldCgpLCBkaWdlc3QuZGF0YSgpLCBudWxscHRyKSAhPSAxKQor
ICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgcmV0dXJuIGRpZ2VzdDsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0NSWVBUTykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRp
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRpZXMuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5kMmM5MWJmYzQ3Yjg4ZjNiZGZjNDZkNWY5ODg2ODA3NmYzNmRhOTY4Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxp
dGllcy5oCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgU29ueSBJ
bnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8b3BlbnNz
bC9ldnAuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4K
KyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKKyNpZiBFTkFCTEUoV0VCX0NSWVBUTykKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjb25zdCBFVlBfTUQqIGRpZ2VzdEFsZ29yaXRobShDcnlwdG9B
bGdvcml0aG1JZGVudGlmaWVyIGhhc2hGdW5jdGlvbik7CisKK09wdGlvbmFsPFZlY3Rvcjx1aW50
OF90Pj4gY2FsY3VsYXRlRGlnZXN0KGNvbnN0IEVWUF9NRCogYWxnb3JpdGhtLCBjb25zdCBWZWN0
b3I8dWludDhfdD4mIG1lc3NhZ2UpOworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRp
ZiAvLyBFTkFCTEUoV0VCX0NSWVBUTykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL09wZW5TU0wuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9PcGVuU1NMLmNtYWtl
CmluZGV4IGE0ZTJhYTU1MTEwN2ViMDBjYjc4MTM4ZTU3NzM1NzBjYTE0OWZhMTYuLjdlNjdkMmVi
MTJlNjY1ODg5Zjg2N2I3MDU3YmUzM2JhMjZhMTAyOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL09wZW5TU0wuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
T3BlblNTTC5jbWFrZQpAQCAtMTcsNiArMTcsNyBAQCBpZiAoRU5BQkxFX1dFQl9DUllQVE8pCiAg
ICAgICAgIGNyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5T3BlblNTTC5jcHAK
ICAgICAgICAgY3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5RUNPcGVuU1NMLmNwcAogICAgICAgICBj
cnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlSU0FPcGVuU1NMLmNwcAorICAgICAgICBjcnlwdG8vb3Bl
bnNzbC9PcGVuU1NMVXRpbGl0aWVzLmNwcAogICAgICAgICBjcnlwdG8vb3BlbnNzbC9TZXJpYWxp
emVkQ3J5cHRvS2V5V3JhcE9wZW5TU0wuY3BwCiAgICAgKQogZW5kaWYgKCkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlNmFm
YTE2YmVmNmE2NjFiNGE1Njg4ODYwMjFlNWFmZjdlZTViMTQxLi5jMjgxN2JmYmM3OTc1N2U1NzM1
ZmU3NGQ4MWE5M2VjNGE4OWQ1NTIxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDUtMDMg
IFlvc2hpYWtpIEppdHN1a2F3YSAgPHlvc2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAg
ICAgICBbT3BlblNTTF0gSW1wbGVtZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUyOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL3dpbmNh
aXJvL1Rlc3RFeHBlY3RhdGlvbnM6IFVuc2tpcCB0ZXN0cyB3aGljaCBhcmUgbm93IHN1cHBvcnRl
ZC4KKwogMjAyMS0wNC0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNv
bT4KIAogICAgICAgICBbc2VsZWN0b3JzXSBVc2luZyBhIG1vZGlmaWVyIGtleSBvbiBhbiBlbGVt
ZW50IG1ha2VzIGl0IHN0b3AgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDZmYWIzNDQwMjJiNTFi
ZDA2ZGI3OTU5NGYxZDE4ZTBiZmFhNWMzMmEuLmMxZWQ1Yzc4MjNhYmZmMWQ2YzVjYjc3ZmJhYTU4
OGJlMGRhOGJiYmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4
cGVjdGF0aW9ucwpAQCAtNzM1LDIxICs3MzUsOSBAQCB3ZWJraXQub3JnL2IvMjIxNDQ1IGZhc3Qv
dGV4dC9pbnRlcm5hdGlvbmFsL3N5c3RlbS1sYW5ndWFnZS9qcC1jaXJjbGVkLmh0bWwgWyBTawog
Iy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogCiAjIENyeXB0cyBvdGhlciB0aGFu
IEFFUyBhcmUgbm90IHN1cHBvcnRlZC4KLWNyeXB0by9zdWJ0bGUvYWVzLWNiYy1pbXBvcnQta2V5
LXVud3JhcC1qd2stcnNhLWtleS1wcml2YXRlLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
YWVzLWNiYy1pbXBvcnQta2V5LXVud3JhcC1qd2stcnNhLWtleS1wdWJsaWMuaHRtbCBbIFNraXAg
XQotY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9ydC1rZXktdW53cmFwLXBrY3M4LWtleS5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS11bndyYXAtc3BraS1r
ZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9ydC1rZXktd3JhcC1q
d2stcnNhLWtleS1wcml2YXRlLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvYWVzLWNiYy1p
bXBvcnQta2V5LXdyYXAtandrLXJzYS1rZXktcHVibGljLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvYWVzLWNiYy1pbXBvcnQta2V5LXdyYXAtcGtjczgta2V5Lmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvYWVzLWNiYy1pbXBvcnQta2V5LXdyYXAtc3BraS1rZXkuaHRtbCBbIFNraXAg
XQotY3J5cHRvL3N1YnRsZS9hZXMtZXhwb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1s
IFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2Flcy1nY20taW1wb3J0LWtleS11bndyYXAtZWMtcmF3
LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2Flcy1pbXBvcnQta2V5LW1hbGZvcm1l
ZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvZGVjcnlwdC1tYWxmb3Jt
ZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2Rlcml2ZS1iaXRzLW1h
bGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZGVyaXZlLWtl
eS1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2RpZ2Vz
dC1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2VjZGgt
ZGVyaXZlLWJpdHMtbGVuZ3RoLWxpbWl0cy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2Vj
ZGgtZGVyaXZlLWJpdHMtbWFsZm9ybWVkLXBhcmFtZXRycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8v
c3VidGxlL2VjZGgtZ2VuZXJhdGUtZXhwb3J0LWp3ay1rZXktcDI1Ni5odG1sIFsgU2tpcCBdCkBA
IC04ODAsNDkgKzg2OCwxMSBAQCBjcnlwdG8vc3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0
LXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1p
bXBvcnQtc3BraS1rZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUv
cnNhLWV4cG9ydC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQogY3J5cHRv
L3N1YnRsZS9yc2EtZ2VuZXJhdGUta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1qd2sta2V5LWV4cG9ydC1qd2sta2V5LXByaXZh
dGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LWp3ay1rZXktZXhwb3J0
LWp3ay1rZXktcHVibGljLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1q
d2sta2V5LWV4cG9ydC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Et
aW1wb3J0LWp3ay1rZXktZXhwb3J0LXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0
bGUvcnNhLWltcG9ydC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5
cHRvL3N1YnRsZS9yc2EtaW1wb3J0LXBrY3M4LWtleS1leHBvcnQtandrLWtleS5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQtcGtjczgta2V5LWV4cG9ydC1wa2NzOC1rZXku
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LXNwa2kta2V5LWV4cG9ydC1q
d2sta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1zcGtpLWtleS1l
eHBvcnQtc3BraS1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LXNw
a2ktc21hbGwta2V5Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi5o
dG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUu
aHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxl
LXByaXZhdGUuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLXByaXZh
dGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1kZWNyeXB0LW1hbGZvcm1l
ZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZW5jcnlw
dC1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1v
YWVwLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTEuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1
YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGEyMjQuaHRtbCBbIFNraXAg
XQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGEyNTYu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5
LWp3ay1zaGEzODQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0
ZS1leHBvcnQta2V5LWp3ay1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Et
b2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LXBrY3M4Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvcnNhLW9hZXAtZ2VuZXJhdGUtZXhwb3J0LWtleS1zcGtpLmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvcnNhLW9hZXAtZ2VuZXJhdGUta2V5LWVuY3J5cHQtZGVjcnlwdC5odG1sIFsgU2tpcCBdCi1j
cnlwdG8vc3VidGxlL3JzYS1vYWVwLWdlbmVyYXRlLWtleS1lbmNyeXB0LWRlY3J5cHQtbGFiZWwu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQtandrLXByaXZhdGUt
a2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJs
aWMta2V5LWVtcHR5LXVzYWdlcy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVw
LWltcG9ydC1qd2stcHVibGljLWtleS1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
cnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTIyNC5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1qd2stcHVibGljLWtleS1zaGEyNTYuaHRtbCBbIFNr
aXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMzg0
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMt
a2V5LXNoYTUxMi5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1r
ZXktZGVjcnlwdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1r
ZXktZGVjcnlwdC1sYWJlbC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWlt
cG9ydC1rZXktZW5jcnlwdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWlt
cG9ydC1rZXktZW5jcnlwdC1sYWJlbC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1v
YWVwLWltcG9ydC1rZXktdW53cmFwLWp3ay1vY3Qta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWtleS13cmFwLWp3ay1vY3Qta2V5Lmh0bWwgWyBTa2lwIF0K
LWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LXBrY3M4LWtleS5odG1sIFsgU2tpcCBdCi1j
cnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1zcGtpLWtleS5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1zcGtpLWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFNr
aXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVuZ3RoLmh0bWwgWyBTa2lw
IF0KIGNyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGExLmh0
bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LWp3
ay1zaGEyMjQuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4
cG9ydC1rZXktandrLXNoYTI1Ni5odG1sIFsgU2tpcCBdCkBAIC05NzQsMTEgKzkyNCw2IEBAIGNy
eXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS12ZXJpZnktc2hhNTEyLmh0
bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LXBrY3M4
LWtleS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9y
dC1zcGtpLWtleS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81
LWltcG9ydC1zcGtpLWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9zaGExLWRpZ2VzdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3NoYTIyNC1kaWdlc3Qu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9zaGEyNTYtZGlnZXN0Lmh0bWwgWyBTa2lwIF0K
LWNyeXB0by9zdWJ0bGUvc2hhMzg0LWRpZ2VzdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxl
L3NoYTUxMi1kaWdlc3QuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9zaWduLW1hbGZvcm1l
ZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvdW53cmFwLWtleS1tYWxm
b3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3ZlcmlmeS1tYWxm
b3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427762</attachid>
            <date>2021-05-05 05:58:40 -0700</date>
            <delta_ts>2021-05-06 04:50:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225294-20210505215839.patch</filename>
            <type>text/plain</type>
            <size>93837</size>
            <attacher name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2Njk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDM3ZGRkMzY1MzM0NmQ0YzRmODM0YmM1
NzJhOTczOTIwYzRmODljYjQuLjJjMDZlODNhZmVlNDU1Yzk0OTI5NzQ3OTMwY2I5MzY5MDg0ZmM1
NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDUtMDUgIFlvc2hpYWtpIEppdHN1a2F3YSAg
PHlvc2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAgICAgICBbT3BlblNTTF0gSW1wbGVt
ZW50IENyeXB0b0FsZ29yaXRobVJTQSoKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTI5NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEltcGxlbWVudCBSU0EgZm9yIE9wZW5TU0wuCisKKyAgICAgICAgSW1w
bGVtZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLCBDcnlwdG9BbGdvcml0aG1SU0FfUFNTLAor
ICAgICAgICBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LCBDcnlwdG9BbGdvcml0aG1S
U0FTQV9QS0NTMV92MV81LAorICAgICAgICBhbmQgQ3J5cHRvS2V5UlNBIGZvciBPcGVuU1NMLgor
CisgICAgICAgIE5vdGUgdGhhdCBpZiBzdWNoIE9wZW5TU0wgdmVyc2lvbiB0aGF0IGRvZXMgbm90
IHN1cHBvcnQgUlNBX09BRVAgb3IKKyAgICAgICAgUlNBX1BTUywgdGhlIFdlYkNyeXB0byBBUEkg
Zm9yIHRob3NlIGFsZ29yaXRobSB3aWxsIHJldHVybiBhCisgICAgICAgIE5vdFN1cHBvcnRlZEVy
cm9yLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6IFNldCBIQVZFX1JTQV9QU1MgZm9yIFVT
RShPUEVOU1NMKQorCiAyMDIxLTA0LTI4ICBEYW5pZWwgS29sZXNhICA8ZGtvbGVzYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtXUEVdW0dUS10gTW9yZSBjb3JyZWN0IGZpeGVzIGZvciBzdGFjayBz
aXplIGlzc3VlcyBvbiBtdXNsIGxpYmMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkNjg0OWFlYzVhMGQwN2I4NDJh
MDI3Nzg0OTQwNGYzNDBiNDNmNmYxLi5jNDg5NzAyMzE0N2ZlYWY3NjYzNTcxMjVhMGNiZjYwMzE0
ZGQxMWFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzggQEAKKzIwMjEtMDUtMDUgIFlvc2hpYWtp
IEppdHN1a2F3YSAgPHlvc2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAgICAgICBbT3Bl
blNTTF0gSW1wbGVtZW50IENyeXB0b0FsZ29yaXRobVJTQSoKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTI5NAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBSU0EgZm9yIE9wZW5TU0wuCisK
KyAgICAgICAgSW1wbGVtZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLCBDcnlwdG9BbGdvcml0
aG1SU0FfUFNTLAorICAgICAgICBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LCBDcnlw
dG9BbGdvcml0aG1SU0FTQV9QS0NTMV92MV81LAorICAgICAgICBhbmQgQ3J5cHRvS2V5UlNBIGZv
ciBPcGVuU1NMLgorCisgICAgICAgIE5vdGUgdGhhdCBpZiBzdWNoIE9wZW5TU0wgdmVyc2lvbiB0
aGF0IGRvZXMgbm90IHN1cHBvcnQgUlNBX09BRVAgb3IKKyAgICAgICAgUlNBX1BTUywgdGhlIFdl
YkNyeXB0byBBUEkgZm9yIHRob3NlIGFsZ29yaXRobSB3aWxsIHJldHVybiBhCisgICAgICAgIE5v
dFN1cHBvcnRlZEVycm9yLgorCisgICAgICAgIEFsc28gbm90ZSB0aGF0IE9wZW5TU0wgYWNjZXB0
cyBSU0FfUFNTIHNhbHQgbGVuZ3RoIGxvbmdlciB0aGFuIHRoZSBoYXNoCisgICAgICAgIGxlbmd0
aC4gVGhpcyBtYWtlcyB0aGUKKyAgICAgICAgY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1r
ZXktc2lnbi1sYXJnZS1zYWx0Lmh0bWwgdGVzdCBmYWlsLgorCisgICAgICAgIFRlc3Q6IEV4aXN0
aW5nIGNyeXB0by9zdWJ0bGUgdGVzdHMKKworICAgICAgICAqIGNyeXB0by9rZXlzL0NyeXB0b0tl
eVJTQS5oOiBVc2UgdGhlIEVWUF9QS0VZIHN0cnVjdCBmb3IgdGhlIHBsYXRmb3JtCisgICAgICAg
IGtleS4KKyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1ITUFDT3BlblNT
TC5jcHA6IE1vdmUgSE1BQ0FsZ29yaXRobSgpCisgICAgICAgIHRvIE9wZW5TU0xVdGlsaXRpZXMg
YXMgRGlnZXN0QWxnb3JpdGhtKCkuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxn
b3JpdGhtUlNBRVNfUEtDUzFfdjFfNU9wZW5TU0wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3J5
cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNTo6cGxhdGZvcm1FbmNyeXB0KToKKyAgICAgICAg
SW1wbGVtZW50ZWQuCisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NT
MV92MV81OjpwbGF0Zm9ybURlY3J5cHQpOgorICAgICAgICBJbXBsZW1lbnRlZC4KKyAgICAgICAg
KiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNU9wZW5TU0wu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6
OnBsYXRmb3JtU2lnbik6CisgICAgICAgIEltcGxlbWVudGVkLgorICAgICAgICAoV2ViQ29yZTo6
Q3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6OnBsYXRmb3JtVmVyaWZ5KToKKyAgICAg
ICAgSW1wbGVtZW50ZWQuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGht
UlNBX09BRVBPcGVuU1NMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0FsZ29yaXRobVJT
QV9PQUVQOjpwbGF0Zm9ybUVuY3J5cHQpOiBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNyeXB0b0FsZ29yaXRobVJTQV9PQUVQOjpwbGF0Zm9ybURlY3J5cHQpOiBJbXBsZW1lbnRlZC4K
KyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FfUFNTT3BlblNTTC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9BbGdvcml0aG1SU0FfUFNTOjpwbGF0Zm9ybVNp
Z24pOiBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0FsZ29yaXRobVJTQV9Q
U1M6OnBsYXRmb3JtVmVyaWZ5KTogSW1wbGVtZW50ZWQuCisgICAgICAgICogY3J5cHRvL29wZW5z
c2wvQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpwbGF0Zm9ybVJlZ2lzdGVyQWxnb3JpdGhtcyk6Cisg
ICAgICAgIFJlZ2lzdGVyZWQgUlNBRVNfUEtDUzFfdl8xXzUsIFJTQVNTQV9QS0NTMV92MV81LCBS
U0FfT0FFUCwgYW5kIFJTQV9QU1MuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5
UlNBT3BlblNTTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRSU0FNb2R1bHVzTGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0J5dGVzKToKKyAgICAgICAgKFdlYkNvcmU6OmNv
bnZlcnRUb0JpZ051bWJlcik6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OkNyeXB0b0tleVJTQSk6CisgICAg
ICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmlzUmVzdHJpY3RlZFRvSGFzaCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmtleVNpemVJbkJpdHMgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6ZXhwb25lbnRWZWN0b3JUb1VJbnQzMik6CisgICAgICAgIChXZWJDb3Jl
OjpDcnlwdG9LZXlSU0E6OmdlbmVyYXRlUGFpcik6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9L
ZXlSU0E6OmltcG9ydFNwa2kpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjppbXBv
cnRQa2NzOCk6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmV4cG9ydFNwa2kgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjpleHBvcnRQa2NzOCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmFsZ29yaXRobSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmV4cG9ydERhdGEgY29uc3QpOgorICAgICAgICAq
IGNyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaDoKKyAgICAgICAgKFdlYkNv
cmU6Ok9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEVWUF9QS0VZX0NUWD46Om9wZXJhdG9yKCkgY29u
c3QpOgorICAgICAgICBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok9wZW5TU0xDcnlwdG9QdHJE
ZWxldGVyPFJTQT46Om9wZXJhdG9yKCkgY29uc3QpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
Ok9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPFBLQ1M4X1BSSVZfS0VZX0lORk8+OjpvcGVyYXRvcigp
IGNvbnN0KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpPcGVuU1NMQ3J5cHRvUHRyRGVsZXRl
cjxCSUdOVU0+OjpvcGVyYXRvcigpIGNvbnN0KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpP
cGVuU1NMQ3J5cHRvUHRyRGVsZXRlcjxCTl9DVFg+OjpvcGVyYXRvcigpIGNvbnN0KTogQWRkZWQu
CisgICAgICAgICogY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpkaWdlc3RBbGdvcml0aG0pOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNh
bGN1bGF0ZURpZ2VzdCk6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9vcGVuc3NsL09wZW5TU0xV
dGlsaXRpZXMuaDogCisgICAgICAgICogcGxhdGZvcm0vT3BlblNTTC5jbWFrZToKKwogMjAyMS0w
NC0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbc2VsZWN0b3JzXSBVc2luZyBhIG1vZGlmaWVyIGtleSBvbiBhbiBlbGVtZW50IG1ha2VzIGl0
IHN0b3AgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCmluZGV4IDZmYTEwNGM4Mjk5
MmJkYWY2ZTU2YTMyYjM0NDQ1YmQxMWJkMTJkZmQuLjkwODBlOThkYTRjNDEyYmIzZDc3YjEwMWZh
ODRhZWNmZjc1ZmM3NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgKKysr
IGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaApAQCAtMTQ4LDcgKzE0OCw3IEBACiAjZW5kaWYK
IAogLyogRklYTUU6IFRoZSBhdmFpbGFiaWxpdHkgb2YgUlNBX1BTUyBzaG91bGQgbm90IGRlcGVu
ZCBvbiB0aGUgcG9saWN5IGRlY2lzaW9uIHRvIFVTRShHQ1JZUFQpLiAqLwotI2lmIFBMQVRGT1JN
KE1BQykgfHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkgfHwgVVNFKEdD
UllQVCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFD
Q0FUQUxZU1QpIHx8IFVTRShHQ1JZUFQpIHx8IFVTRShPUEVOU1NMKQogI2RlZmluZSBIQVZFX1JT
QV9QU1MgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9rZXlz
L0NyeXB0b0tleVJTQS5oIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNB
LmgKaW5kZXggYzQ5ZmU2OGRmODJjMDAzYTZlYzNmOWZjYjNkOWFiNmU1YzBjNmNkYy4uZWU5MzZl
YWFhN2I1OTk2MWVmZjFjYTk2YjFmZDI3MDViZTZlZjAyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5
cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKQEAgLTUxLDggKzUxLDkgQEAgdHlwZWRlZiBzdGQ6OnVu
aXF1ZV9wdHI8dHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9pbnRlcjxnY3J5X3NleHBfdD46OnR5cGUs
IFBBTDo6R0MKICNlbmRpZgogCiAjaWYgVVNFKE9QRU5TU0wpCi10eXBlZGVmIHZvaWQqIFBsYXRm
b3JtUlNBS2V5OwotdHlwZWRlZiBzdGQ6OnVuaXF1ZV9wdHI8UGxhdGZvcm1SU0FLZXk+IFBsYXRm
b3JtUlNBS2V5Q29udGFpbmVyOworI2luY2x1ZGUgImNyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlw
dG9VbmlxdWVQdHIuaCIKK3R5cGVkZWYgRVZQX1BLRVkqIFBsYXRmb3JtUlNBS2V5OwordHlwZWRl
ZiBXZWJDb3JlOjpFdnBQS2V5UHRyIFBsYXRmb3JtUlNBS2V5Q29udGFpbmVyOwogI2VuZGlmCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9v
cGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Ny
eXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNwcAppbmRleCBkM2FkOTRh
YTZlNDExMTVlNjcwMzYwZDRjZTA5ZDY4MWMzNDA3ZDFhLi5kZmZjOWM5ZTQwMjNjZmM1YjE4MjQy
ZjU1M2M0ODYyYjM5Njc0N2M1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3Bl
bnNzbC9DcnlwdG9BbGdvcml0aG1ITUFDT3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtSE1BQ09wZW5TU0wuY3BwCkBAIC0zMCwyOSAr
MzAsMTIgQEAKIAogI2luY2x1ZGUgIkNyeXB0b0tleUhNQUMuaCIKICNpbmNsdWRlICJPcGVuU1NM
Q3J5cHRvVW5pcXVlUHRyLmgiCisjaW5jbHVkZSAiT3BlblNTTFV0aWxpdGllcy5oIgogI2luY2x1
ZGUgPG9wZW5zc2wvZXZwLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMu
aD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgY29uc3QgRVZQX01EKiBITUFDQWxn
b3JpdGhtKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFzaEZ1bmN0aW9uKQotewotICAgIHN3
aXRjaCAoaGFzaEZ1bmN0aW9uKSB7Ci0gICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVy
OjpTSEFfMToKLSAgICAgICAgcmV0dXJuIEVWUF9zaGExKCk7Ci0gICAgY2FzZSBDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyOjpTSEFfMjI0OgotICAgICAgICByZXR1cm4gRVZQX3NoYTIyNCgpOwot
ICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzI1NjoKLSAgICAgICAgcmV0
dXJuIEVWUF9zaGEyNTYoKTsKLSAgICBjYXNlIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI6OlNI
QV8zODQ6Ci0gICAgICAgIHJldHVybiBFVlBfc2hhMzg0KCk7Ci0gICAgY2FzZSBDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyOjpTSEFfNTEyOgotICAgICAgICByZXR1cm4gRVZQX3NoYTUxMigpOwot
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIH0KLX0KLQogc3RhdGlj
IE9wdGlvbmFsPFZlY3Rvcjx1aW50OF90Pj4gY2FsY3VsYXRlU2lnbmF0dXJlKGNvbnN0IEVWUF9N
RCogYWxnb3JpdGhtLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgY29uc3QgdWludDhfdCog
ZGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgpCiB7CiAgICAgLy8gQ3JlYXRlIHRoZSBNZXNzYWdlIERp
Z2VzdCBDb250ZXh0CkBAIC04Nyw3ICs3MCw3IEBAIHN0YXRpYyBPcHRpb25hbDxWZWN0b3I8dWlu
dDhfdD4+IGNhbGN1bGF0ZVNpZ25hdHVyZShjb25zdCBFVlBfTUQqIGFsZ29yaXRobSwgY29uCiAK
IEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtSE1BQzo6cGxhdGZv
cm1TaWduKGNvbnN0IENyeXB0b0tleUhNQUMmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBk
YXRhKQogewotICAgIGF1dG8gYWxnb3JpdGhtID0gSE1BQ0FsZ29yaXRobShrZXkuaGFzaEFsZ29y
aXRobUlkZW50aWZpZXIoKSk7CisgICAgYXV0byBhbGdvcml0aG0gPSBkaWdlc3RBbGdvcml0aG0o
a2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkpOwogICAgIGlmICghYWxnb3JpdGhtKQogICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKIApAQCAtOTksNyArODIs
NyBAQCBFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobUhNQUM6OnBs
YXRmb3JtU2lnbihjb25zdCBDcnlwdG9LZXlITQogCiBFeGNlcHRpb25Pcjxib29sPiBDcnlwdG9B
bGdvcml0aG1ITUFDOjpwbGF0Zm9ybVZlcmlmeShjb25zdCBDcnlwdG9LZXlITUFDJiBrZXksIGNv
bnN0IFZlY3Rvcjx1aW50OF90PiYgc2lnbmF0dXJlLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGRh
dGEpCiB7Ci0gICAgYXV0byBhbGdvcml0aG0gPSBITUFDQWxnb3JpdGhtKGtleS5oYXNoQWxnb3Jp
dGhtSWRlbnRpZmllcigpKTsKKyAgICBhdXRvIGFsZ29yaXRobSA9IGRpZ2VzdEFsZ29yaXRobShr
ZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAgICAgaWYgKCFhbGdvcml0aG0pCiAgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92
MV81T3BlblNTTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdv
cml0aG1SU0FFU19QS0NTMV92MV81T3BlblNTTC5jcHAKaW5kZXggMGFhNDk1ZTU5NjNjYTA5Yzk4
NDUxYmI2YzAyODg2ODc5NWViMDA4Yy4uZjIyOTFjYjA0YzY2ZmUzMDYxYWMwZjQyNmFjNDFlMTE5
NGRiYTg3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRv
QWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNU9wZW5TU0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzVPcGVuU1NMLmNw
cApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFj
dGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVy
YWN0aXZlIEVudGVydGFpbm1lbnQgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0yOSwyMCArMjksNTggQEAKICNpZiBFTkFCTEUoV0VCX0NSWVBUTykKIAogI2luY2x1ZGUg
IkNyeXB0b0tleVJTQS5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVkZSAi
T3BlblNTTFV0aWxpdGllcy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlvbk9y
PFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNTo6cGxhdGZv
cm1FbmNyeXB0KGNvbnN0IENyeXB0b0tleVJTQSYsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYpCitF
eGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3Yx
XzU6OnBsYXRmb3JtRW5jcnlwdChjb25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9y
PHVpbnQ4X3Q+JiBwbGFpblRleHQpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1
cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBSRUxFQVNFX0FTU0VSVF9X
SVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCEoa2V5LmtleVNpemVJbkJpdHMoKSAlIDgpKTsKKwor
ICAgIGF1dG8gY3R4ID0gRXZwUEtleUN0eFB0cihFVlBfUEtFWV9DVFhfbmV3KGtleS5wbGF0Zm9y
bUtleSgpLCBudWxscHRyKSk7CisgICAgaWYgKCFjdHgpCisgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX2VuY3J5cHRfaW5pdChj
dHguZ2V0KCkpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJv
ciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRfcnNhX3BhZGRpbmcoY3R4LmdldCgpLCBS
U0FfUEtDUzFfUEFERElORykgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJh
dGlvbkVycm9yIH07CisKKyAgICBzaXplX3QgY2lwaGVyVGV4dExlbjsKKyAgICBpZiAoRVZQX1BL
RVlfZW5jcnlwdChjdHguZ2V0KCksIG51bGxwdHIsICZjaXBoZXJUZXh0TGVuLCBwbGFpblRleHQu
ZGF0YSgpLCBwbGFpblRleHQuc2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBjaXBoZXJUZXh0KGNp
cGhlclRleHRMZW4pOworICAgIGlmIChFVlBfUEtFWV9lbmNyeXB0KGN0eC5nZXQoKSwgY2lwaGVy
VGV4dC5kYXRhKCksICZjaXBoZXJUZXh0TGVuLCBwbGFpblRleHQuZGF0YSgpLCBwbGFpblRleHQu
c2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3Ig
fTsKKyAgICBjaXBoZXJUZXh0LnNocmluayhjaXBoZXJUZXh0TGVuKTsKKworICAgIHJldHVybiBj
aXBoZXJUZXh0OwogfQogCi1FeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29y
aXRobVJTQUVTX1BLQ1MxX3YxXzU6OnBsYXRmb3JtRGVjcnlwdChjb25zdCBDcnlwdG9LZXlSU0Em
LCBjb25zdCBWZWN0b3I8dWludDhfdD4mKQorRXhjZXB0aW9uT3I8VmVjdG9yPHVpbnQ4X3Q+PiBD
cnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81OjpwbGF0Zm9ybURlY3J5cHQoY29uc3QgQ3J5
cHRvS2V5UlNBJiBrZXksIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgY2lwaGVyVGV4dCkKIHsKLSAg
ICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciB9OworICAgIGF1dG8gY3R4ID0gRXZwUEtleUN0eFB0cihFVlBfUEtFWV9DVFhfbmV3KGtl
eS5wbGF0Zm9ybUtleSgpLCBudWxscHRyKSk7CisgICAgaWYgKCFjdHgpCisgICAgICAgIHJldHVy
biBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX2RlY3J5
cHRfaW5pdChjdHguZ2V0KCkpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVy
YXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRfcnNhX3BhZGRpbmcoY3R4
LmdldCgpLCBSU0FfUEtDUzFfUEFERElORykgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBzaXplX3QgcGxhaW5UZXh0TGVuOworICAgIGlm
IChFVlBfUEtFWV9kZWNyeXB0KGN0eC5nZXQoKSwgbnVsbHB0ciwgJnBsYWluVGV4dExlbiwgY2lw
aGVyVGV4dC5kYXRhKCksIGNpcGhlclRleHQuc2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4g
RXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBwbGFp
blRleHQocGxhaW5UZXh0TGVuKTsKKyAgICBpZiAoRVZQX1BLRVlfZGVjcnlwdChjdHguZ2V0KCks
IHBsYWluVGV4dC5kYXRhKCksICZwbGFpblRleHRMZW4sIGNpcGhlclRleHQuZGF0YSgpLCBjaXBo
ZXJUZXh0LnNpemUoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlv
bkVycm9yIH07CisgICAgcGxhaW5UZXh0LnNocmluayhwbGFpblRleHRMZW4pOworCisgICAgcmV0
dXJuIHBsYWluVGV4dDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1Mx
X3YxXzVPcGVuU1NMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0Fs
Z29yaXRobVJTQVNTQV9QS0NTMV92MV81T3BlblNTTC5jcHAKaW5kZXggY2Q0ZDBiNTgzYWE4MDk3
YTRhY2VmNTUzMDZmMmZmMTQxMGRmOTFmYy4uN2EyZTJmMTY1MjgxODM5OTFiMTkyNjMxYmU4ZjRl
MTNjODI3MWM3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5
cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzVPcGVuU1NMLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNU9wZW5T
U0wuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBTb255IElu
dGVyYWN0aXZlIEVudGVydGFpbm1lbnQgSW5jLgorICogQ29weXJpZ2h0IChDKSAyMDIxIFNvbnkg
SW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTI5LDIwICsyOSw3MyBAQAogI2lmIEVOQUJMRShXRUJfQ1JZUFRPKQogCiAjaW5j
bHVkZSAiQ3J5cHRvS2V5UlNBLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNs
dWRlICJPcGVuU1NMVXRpbGl0aWVzLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRXhjZXB0
aW9uT3I8VmVjdG9yPHVpbnQ4X3Q+PiBDcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNTo6
cGxhdGZvcm1TaWduKGNvbnN0IENyeXB0b0tleVJTQSYsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYp
CitFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobVJTQVNTQV9QS0NT
MV92MV81OjpwbGF0Zm9ybVNpZ24oY29uc3QgQ3J5cHRvS2V5UlNBJiBrZXksIGNvbnN0IFZlY3Rv
cjx1aW50OF90PiYgZGF0YSkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBF
eGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworICAgIFJFTEVBU0VfQVNTRVJUX1dJVEhf
U0VDVVJJVFlfSU1QTElDQVRJT04oIShrZXkua2V5U2l6ZUluQml0cygpICUgOCkpOworCisgICAg
Y29uc3QgRVZQX01EKiBtZCA9IGRpZ2VzdEFsZ29yaXRobShrZXkuaGFzaEFsZ29yaXRobUlkZW50
aWZpZXIoKSk7CisgICAgaWYgKCFtZCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1
cHBvcnRlZEVycm9yIH07CisKKyAgICBPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+IGRpZ2VzdCA9
IGNhbGN1bGF0ZURpZ2VzdChtZCwgZGF0YSk7CisgICAgaWYgKCFkaWdlc3QpCisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgYXV0byBjdHggPSBFdnBQ
S2V5Q3R4UHRyKEVWUF9QS0VZX0NUWF9uZXcoa2V5LnBsYXRmb3JtS2V5KCksIG51bGxwdHIpKTsK
KyAgICBpZiAoIWN0eCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9y
IH07CisKKyAgICBpZiAoRVZQX1BLRVlfc2lnbl9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BL
RVlfQ1RYX3NldF9yc2FfcGFkZGluZyhjdHguZ2V0KCksIFJTQV9QS0NTMV9QQURESU5HKSA8PSAw
KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlm
IChFVlBfUEtFWV9DVFhfc2V0X3NpZ25hdHVyZV9tZChjdHguZ2V0KCksIG1kKSA8PSAwKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIHNpemVfdCBz
aWduYXR1cmVMZW47CisgICAgaWYgKEVWUF9QS0VZX3NpZ24oY3R4LmdldCgpLCBudWxscHRyLCAm
c2lnbmF0dXJlTGVuLCBkaWdlc3QtPmRhdGEoKSwgZGlnZXN0LT5zaXplKCkpIDw9IDApCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgVmVjdG9yPHVp
bnQ4X3Q+IHNpZ25hdHVyZShzaWduYXR1cmVMZW4pOworICAgIGlmIChFVlBfUEtFWV9zaWduKGN0
eC5nZXQoKSwgc2lnbmF0dXJlLmRhdGEoKSwgJnNpZ25hdHVyZUxlbiwgZGlnZXN0LT5kYXRhKCks
IGRpZ2VzdC0+c2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0
aW9uRXJyb3IgfTsKKyAgICBzaWduYXR1cmUuc2hyaW5rKHNpZ25hdHVyZUxlbik7CisKKyAgICBy
ZXR1cm4gc2lnbmF0dXJlOwogfQogCi1FeGNlcHRpb25Pcjxib29sPiBDcnlwdG9BbGdvcml0aG1S
U0FTU0FfUEtDUzFfdjFfNTo6cGxhdGZvcm1WZXJpZnkoY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JikKK0V4Y2VwdGlvbk9y
PGJvb2w+IENyeXB0b0FsZ29yaXRobVJTQVNTQV9QS0NTMV92MV81OjpwbGF0Zm9ybVZlcmlmeShj
b25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBzaWduYXR1cmUs
IGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwot
ICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworICAgIGNvbnN0IEVW
UF9NRCogbWQgPSBkaWdlc3RBbGdvcml0aG0oa2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkp
OworICAgIGlmICghbWQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciB9OworCisgICAgT3B0aW9uYWw8VmVjdG9yPHVpbnQ4X3Q+PiBkaWdlc3QgPSBjYWxjdWxh
dGVEaWdlc3QobWQsIGRhdGEpOworICAgIGlmICghZGlnZXN0KQorICAgICAgICByZXR1cm4gRXhj
ZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGF1dG8gY3R4ID0gRXZwUEtleUN0eFB0
cihFVlBfUEtFWV9DVFhfbmV3KGtleS5wbGF0Zm9ybUtleSgpLCBudWxscHRyKSk7CisgICAgaWYg
KCFjdHgpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisg
ICAgaWYgKEVWUF9QS0VZX3ZlcmlmeV9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RY
X3NldF9yc2FfcGFkZGluZyhjdHguZ2V0KCksIFJTQV9QS0NTMV9QQURESU5HKSA8PSAwKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBf
UEtFWV9DVFhfc2V0X3NpZ25hdHVyZV9tZChjdHguZ2V0KCksIG1kKSA8PSAwKQorICAgICAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGludCByZXQgPSBFVlBf
UEtFWV92ZXJpZnkoY3R4LmdldCgpLCBzaWduYXR1cmUuZGF0YSgpLCBzaWduYXR1cmUuc2l6ZSgp
LCBkaWdlc3QtPmRhdGEoKSwgZGlnZXN0LT5zaXplKCkpOworCisgICAgcmV0dXJuIHJldCA9PSAx
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FfT0FFUE9wZW5TU0wuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVBPcGVuU1NM
LmNwcAppbmRleCAxZDhlM2Q3YWVkMWVhMmUyNGJiOThhMDViOTM2NjNhMTQwN2NiZGRkLi41YTI3
NTE0ODRmMDBmZDQ1OGRiZjhjODMxNmI2OWJhMjY1Yjk4NjVjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FfT0FFUE9wZW5TU0wuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQV9P
QUVQT3BlblNTTC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDIw
IFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtMzAsMjAgKzMwLDEwNyBAQAogCiAjaW5jbHVkZSAiQ3J5cHRvQWxn
b3JpdGhtUnNhT2FlcFBhcmFtcy5oIgogI2luY2x1ZGUgIkNyeXB0b0tleVJTQS5oIgotI2luY2x1
ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVkZSAiT3BlblNTTFV0aWxpdGllcy5oIgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRv
QWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3JtRW5jcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1S
c2FPYWVwUGFyYW1zJiwgY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+
JikKK0V4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6
OnBsYXRmb3JtRW5jcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zJiBwYXJh
bWV0ZXJzLCBjb25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBw
bGFpblRleHQpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBSRUxFQVNFX0FTU0VSVF9X
SVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCEoa2V5LmtleVNpemVJbkJpdHMoKSAlIDgpKTsKKyNp
ZiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXRfcnNhX29hZXBfbWQpICYmIGRlZmluZWQoRVZQX1BL
RVlfQ1RYX3NldF9yc2FfbWdmMV9tZCkgJiYgZGVmaW5lZChFVlBfUEtFWV9DVFhfc2V0MF9yc2Ff
b2FlcF9sYWJlbCkKKyAgICBjb25zdCBFVlBfTUQqIG1kID0gZGlnZXN0QWxnb3JpdGhtKGtleS5o
YXNoQWxnb3JpdGhtSWRlbnRpZmllcigpKTsKKyAgICBpZiAoIW1kKQorICAgICAgICByZXR1cm4g
RXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKworICAgIGF1dG8gY3R4ID0gRXZwUEtl
eUN0eFB0cihFVlBfUEtFWV9DVFhfbmV3KGtleS5wbGF0Zm9ybUtleSgpLCBudWxscHRyKSk7Cisg
ICAgaWYgKCFjdHgpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9
OworCisgICAgaWYgKEVWUF9QS0VZX2VuY3J5cHRfaW5pdChjdHguZ2V0KCkpIDw9IDApCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9Q
S0VZX0NUWF9zZXRfcnNhX3BhZGRpbmcoY3R4LmdldCgpLCBSU0FfUEtDUzFfT0FFUF9QQURESU5H
KSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKwor
ICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9vYWVwX21kKGN0eC5nZXQoKSwgbWQpIDw9IDAp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYg
KEVWUF9QS0VZX0NUWF9zZXRfcnNhX21nZjFfbWQoY3R4LmdldCgpLCBtZCkgPD0gMCkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoIXBhcmFt
ZXRlcnMubGFiZWxWZWN0b3IoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgc2l6ZV90IGxhYmVsU2l6
ZSA9IHBhcmFtZXRlcnMubGFiZWxWZWN0b3IoKS5zaXplKCk7CisgICAgICAgIC8vIFRoZSBsaWJy
YXJ5IHRha2VzIG93bmVyc2hpcCBvZiB0aGUgbGFiZWwgc28gdGhlIGNhbGxlciBzaG91bGQgbm90
IGZyZWUgdGhlIG9yaWdpbmFsIG1lbW9yeSBwb2ludGVkIHRvIGJ5IGxhYmVsLgorICAgICAgICBh
dXRvIGxhYmVsID0gT1BFTlNTTF9tYWxsb2MobGFiZWxTaXplKTsKKyAgICAgICAgbWVtY3B5KGxh
YmVsLCBwYXJhbWV0ZXJzLmxhYmVsVmVjdG9yKCkuZGF0YSgpLCBsYWJlbFNpemUpOworICAgICAg
ICBpZiAoRVZQX1BLRVlfQ1RYX3NldDBfcnNhX29hZXBfbGFiZWwoY3R4LmdldCgpLCBsYWJlbCwg
bGFiZWxTaXplKSA8PSAwKSB7CisgICAgICAgICAgICBPUEVOU1NMX2ZyZWUobGFiZWwpOworICAg
ICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisgICAgICAgIH0K
KyAgICB9CisKKyAgICBzaXplX3QgY2lwaGVyVGV4dExlbjsKKyAgICBpZiAoRVZQX1BLRVlfZW5j
cnlwdChjdHguZ2V0KCksIG51bGxwdHIsICZjaXBoZXJUZXh0TGVuLCBwbGFpblRleHQuZGF0YSgp
LCBwbGFpblRleHQuc2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3Bl
cmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBjaXBoZXJUZXh0KGNpcGhlclRl
eHRMZW4pOworICAgIGlmIChFVlBfUEtFWV9lbmNyeXB0KGN0eC5nZXQoKSwgY2lwaGVyVGV4dC5k
YXRhKCksICZjaXBoZXJUZXh0TGVuLCBwbGFpblRleHQuZGF0YSgpLCBwbGFpblRleHQuc2l6ZSgp
KSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKyAg
ICBjaXBoZXJUZXh0LnNocmluayhjaXBoZXJUZXh0TGVuKTsKKworICAgIHJldHVybiBjaXBoZXJU
ZXh0OworI2Vsc2UKICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsK
KyNlbmRpZgogfQogCi1FeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRo
bVJTQV9PQUVQOjpwbGF0Zm9ybURlY3J5cHQoY29uc3QgQ3J5cHRvQWxnb3JpdGhtUnNhT2FlcFBh
cmFtcyYsIGNvbnN0IENyeXB0b0tleVJTQSYsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYpCitFeGNl
cHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQOjpwbGF0Zm9y
bURlY3J5cHQoY29uc3QgQ3J5cHRvQWxnb3JpdGhtUnNhT2FlcFBhcmFtcyYgcGFyYW1ldGVycywg
Y29uc3QgQ3J5cHRvS2V5UlNBJiBrZXksIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgY2lwaGVyVGV4
dCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworI2lmIGRlZmluZWQoRVZQX1BLRVlfQ1RYX3Nl
dF9yc2Ffb2FlcF9tZCkgJiYgZGVmaW5lZChFVlBfUEtFWV9DVFhfc2V0X3JzYV9tZ2YxX21kKSAm
JiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXQwX3JzYV9vYWVwX2xhYmVsKQorICAgIGNvbnN0IEVW
UF9NRCogbWQgPSBkaWdlc3RBbGdvcml0aG0oa2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkp
OworICAgIGlmICghbWQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciB9OworCisgICAgYXV0byBjdHggPSBFdnBQS2V5Q3R4UHRyKEVWUF9QS0VZX0NUWF9uZXco
a2V5LnBsYXRmb3JtS2V5KCksIG51bGxwdHIpKTsKKyAgICBpZiAoIWN0eCkKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfZGVj
cnlwdF9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9w
ZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9yc2FfcGFkZGluZyhj
dHguZ2V0KCksIFJTQV9QS0NTMV9PQUVQX1BBRERJTkcpIDw9IDApCisgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRf
cnNhX29hZXBfbWQoY3R4LmdldCgpLCBtZCkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9yc2FfbWdm
MV9tZChjdHguZ2V0KCksIG1kKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3Bl
cmF0aW9uRXJyb3IgfTsKKworICAgIGlmICghcGFyYW1ldGVycy5sYWJlbFZlY3RvcigpLmlzRW1w
dHkoKSkgeworICAgICAgICBzaXplX3QgbGFiZWxTaXplID0gcGFyYW1ldGVycy5sYWJlbFZlY3Rv
cigpLnNpemUoKTsKKyAgICAgICAgLy8gVGhlIGxpYnJhcnkgdGFrZXMgb3duZXJzaGlwIG9mIHRo
ZSBsYWJlbCBzbyB0aGUgY2FsbGVyIHNob3VsZCBub3QgZnJlZSB0aGUgb3JpZ2luYWwgbWVtb3J5
IHBvaW50ZWQgdG8gYnkgbGFiZWwuCisgICAgICAgIGF1dG8gbGFiZWwgPSBPUEVOU1NMX21hbGxv
YyhsYWJlbFNpemUpOworICAgICAgICBtZW1jcHkobGFiZWwsIHBhcmFtZXRlcnMubGFiZWxWZWN0
b3IoKS5kYXRhKCksIGxhYmVsU2l6ZSk7CisgICAgICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0MF9y
c2Ffb2FlcF9sYWJlbChjdHguZ2V0KCksIGxhYmVsLCBsYWJlbFNpemUpIDw9IDApIHsKKyAgICAg
ICAgICAgIE9QRU5TU0xfZnJlZShsYWJlbCk7CisgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgT3BlcmF0aW9uRXJyb3IgfTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHNpemVfdCBwbGFp
blRleHRMZW47CisgICAgaWYgKEVWUF9QS0VZX2RlY3J5cHQoY3R4LmdldCgpLCBudWxscHRyLCAm
cGxhaW5UZXh0TGVuLCBjaXBoZXJUZXh0LmRhdGEoKSwgY2lwaGVyVGV4dC5zaXplKCkpIDw9IDAp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgVmVj
dG9yPHVpbnQ4X3Q+IHBsYWluVGV4dChwbGFpblRleHRMZW4pOworICAgIGlmIChFVlBfUEtFWV9k
ZWNyeXB0KGN0eC5nZXQoKSwgcGxhaW5UZXh0LmRhdGEoKSwgJnBsYWluVGV4dExlbiwgY2lwaGVy
VGV4dC5kYXRhKCksIGNpcGhlclRleHQuc2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhj
ZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKyAgICBwbGFpblRleHQuc2hyaW5rKHBsYWluVGV4
dExlbik7CisKKyAgICByZXR1cm4gcGxhaW5UZXh0OworI2Vsc2UKICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9B
bGdvcml0aG1SU0FfUFNTT3BlblNTTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNz
bC9DcnlwdG9BbGdvcml0aG1SU0FfUFNTT3BlblNTTC5jcHAKaW5kZXggYzQ4YjJmMDIwMDJiNjA0
ZGNiZGMyNWM1MGUzOGRjOGVhYTYxN2UwMy4uMjFiZTgwMTc0ZjQ0NDg0MmY5NWRjNDJmNGNhOTYy
ODUzYTQxNTBiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5
cHRvQWxnb3JpdGhtUlNBX1BTU09wZW5TU0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0
by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQV9QU1NPcGVuU1NMLmNwcApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5t
ZW50IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVyYWN0aXZlIEVudGVydGFp
bm1lbnQgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zMCwyMCArMzAs
OTIgQEAKIAogI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRobVJzYVBzc1BhcmFtcy5oIgogI2luY2x1
ZGUgIkNyeXB0b0tleVJTQS5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVk
ZSAiT3BlblNTTFV0aWxpdGllcy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlv
bk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX1BTUzo6cGxhdGZvcm1TaWdu
KGNvbnN0IENyeXB0b0FsZ29yaXRobVJzYVBzc1BhcmFtcyYsIGNvbnN0IENyeXB0b0tleVJTQSYs
IGNvbnN0IFZlY3Rvcjx1aW50OF90PiYpCitFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENy
eXB0b0FsZ29yaXRobVJTQV9QU1M6OnBsYXRmb3JtU2lnbihjb25zdCBDcnlwdG9BbGdvcml0aG1S
c2FQc3NQYXJhbXMmIHBhcmFtZXRlcnMsIGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25zdCBW
ZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBSRUxF
QVNFX0FTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCEoa2V5LmtleVNpemVJbkJpdHMo
KSAlIDgpKTsKKyNpZiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKSAm
JiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXRfcnNhX21nZjFfbWQpCisgICAgY29uc3QgRVZQX01E
KiBtZCA9IGRpZ2VzdEFsZ29yaXRobShrZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7Cisg
ICAgaWYgKCFtZCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9y
IH07CisKKyAgICBPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+IGRpZ2VzdCA9IGNhbGN1bGF0ZURp
Z2VzdChtZCwgZGF0YSk7CisgICAgaWYgKCFkaWdlc3QpCisgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgYXV0byBjdHggPSBFdnBQS2V5Q3R4UHRyKEVW
UF9QS0VZX0NUWF9uZXcoa2V5LnBsYXRmb3JtS2V5KCksIG51bGxwdHIpKTsKKyAgICBpZiAoIWN0
eCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBp
ZiAoRVZQX1BLRVlfc2lnbl9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9y
c2FfcGFkZGluZyhjdHguZ2V0KCksIFJTQV9QS0NTMV9QU1NfUEFERElORyApIDw9IDApCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9Q
S0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKGN0eC5nZXQoKSwgcGFyYW1ldGVycy5zYWx0TGVu
Z3RoKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsK
KworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3NpZ25hdHVyZV9tZChjdHguZ2V0KCksIG1kKSA8
PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAg
IGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9tZ2YxX21kKGN0eC5nZXQoKSwgbWQpIDw9IDApCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgc2l6ZV90
IHNpZ25hdHVyZUxlbjsKKyAgICBpZiAoRVZQX1BLRVlfc2lnbihjdHguZ2V0KCksIG51bGxwdHIs
ICZzaWduYXR1cmVMZW4sIGRpZ2VzdC0+ZGF0YSgpLCBkaWdlc3QtPnNpemUoKSkgPD0gMCkKKyAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBWZWN0b3I8
dWludDhfdD4gc2lnbmF0dXJlKHNpZ25hdHVyZUxlbik7CisgICAgaWYgKEVWUF9QS0VZX3NpZ24o
Y3R4LmdldCgpLCBzaWduYXR1cmUuZGF0YSgpLCAmc2lnbmF0dXJlTGVuLCBkaWdlc3QtPmRhdGEo
KSwgZGlnZXN0LT5zaXplKCkpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVy
YXRpb25FcnJvciB9OworICAgIHNpZ25hdHVyZS5zaHJpbmsoc2lnbmF0dXJlTGVuKTsKKworICAg
IHJldHVybiBzaWduYXR1cmU7CisjZWxzZQogICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBw
b3J0ZWRFcnJvciB9OworI2VuZGlmCiB9CiAKLUV4Y2VwdGlvbk9yPGJvb2w+IENyeXB0b0FsZ29y
aXRobVJTQV9QU1M6OnBsYXRmb3JtVmVyaWZ5KGNvbnN0IENyeXB0b0FsZ29yaXRobVJzYVBzc1Bh
cmFtcyYsIGNvbnN0IENyeXB0b0tleVJTQSYsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYsIGNvbnN0
IFZlY3Rvcjx1aW50OF90PiYpCitFeGNlcHRpb25Pcjxib29sPiBDcnlwdG9BbGdvcml0aG1SU0Ff
UFNTOjpwbGF0Zm9ybVZlcmlmeShjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FQc3NQYXJhbXMmIHBh
cmFtZXRlcnMsIGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25zdCBWZWN0b3I8dWludDhfdD4m
IHNpZ25hdHVyZSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewotICAgIG5vdEltcGxl
bWVudGVkKCk7CisjaWYgZGVmaW5lZChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wc3Nfc2FsdGxlbikg
JiYgZGVmaW5lZChFVlBfUEtFWV9DVFhfc2V0X3JzYV9tZ2YxX21kKQorICAgIGNvbnN0IEVWUF9N
RCogbWQgPSBkaWdlc3RBbGdvcml0aG0oa2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkpOwor
ICAgIGlmICghbWQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJv
ciB9OworCisgICAgT3B0aW9uYWw8VmVjdG9yPHVpbnQ4X3Q+PiBkaWdlc3QgPSBjYWxjdWxhdGVE
aWdlc3QobWQsIGRhdGEpOworICAgIGlmICghZGlnZXN0KQorICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGF1dG8gY3R4ID0gRXZwUEtleUN0eFB0cihF
VlBfUEtFWV9DVFhfbmV3KGtleS5wbGF0Zm9ybUtleSgpLCBudWxscHRyKSk7CisgICAgaWYgKCFj
dHgpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAg
aWYgKEVWUF9QS0VZX3ZlcmlmeV9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3Nl
dF9yc2FfcGFkZGluZyhjdHguZ2V0KCksIFJTQV9QS0NTMV9QU1NfUEFERElORyApIDw9IDApCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVW
UF9QS0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKGN0eC5nZXQoKSwgcGFyYW1ldGVycy5zYWx0
TGVuZ3RoKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3Ig
fTsKKworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3NpZ25hdHVyZV9tZChjdHguZ2V0KCksIG1k
KSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKwor
ICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9tZ2YxX21kKGN0eC5nZXQoKSwgbWQpIDw9IDAp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaW50
IHJldCA9IEVWUF9QS0VZX3ZlcmlmeShjdHguZ2V0KCksIHNpZ25hdHVyZS5kYXRhKCksIHNpZ25h
dHVyZS5zaXplKCksIGRpZ2VzdC0+ZGF0YSgpLCBkaWdlc3QtPnNpemUoKSk7CisKKyAgICByZXR1
cm4gcmV0ID09IDE7CisjZWxzZQogICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciB9OworI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5T3Bl
blNTTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1S
ZWdpc3RyeU9wZW5TU0wuY3BwCmluZGV4IDgxYjcwZjc3ODY4Nzk5NDhhMDAzYjBmZDc4MzE5YmU0
MDgxZjI3MGIuLjk1MWYxYTI5MjhhMmZmOTJiMjEyMTA3NTY2NTM1ZDlhNjdkMTU0ZDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJlZ2lz
dHJ5T3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRv
QWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcApAQCAtMzQsNiArMzQsMTAgQEAKICNpbmNsdWRl
ICJDcnlwdG9BbGdvcml0aG1BRVNfR0NNLmgiCiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtQUVT
X0tXLmgiCiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtSE1BQy5oIgorI2luY2x1ZGUgIkNyeXB0
b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzUuaCIKKyNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1S
U0FTU0FfUEtDUzFfdjFfNS5oIgorI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRobVJTQV9PQUVQLmgi
CisjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtUlNBX1BTUy5oIgogI2luY2x1ZGUgIkNyeXB0b0Fs
Z29yaXRobVNIQTEuaCIKICNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1TSEEyMjQuaCIKICNpbmNs
dWRlICJDcnlwdG9BbGdvcml0aG1TSEEyNTYuaCIKQEAgLTUwLDYgKzU0LDEwIEBAIHZvaWQgQ3J5
cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnBsYXRmb3JtUmVnaXN0ZXJBbGdvcml0aG1zKCkKICAgICBy
ZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1BRVNfR0NNPigpOwogICAgIHJlZ2lzdGVy
QWxnb3JpdGhtPENyeXB0b0FsZ29yaXRobUFFU19LVz4oKTsKICAgICByZWdpc3RlckFsZ29yaXRo
bTxDcnlwdG9BbGdvcml0aG1ITUFDPigpOworICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENyeXB0b0Fs
Z29yaXRobVJTQUVTX1BLQ1MxX3YxXzU+KCk7CisgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRv
QWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU+KCk7CisgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5
cHRvQWxnb3JpdGhtUlNBX09BRVA+KCk7CisgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxn
b3JpdGhtUlNBX1BTUz4oKTsKICAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1T
SEExPigpOwogICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENyeXB0b0FsZ29yaXRobVNIQTIyND4oKTsK
ICAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1TSEEyNTY+KCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlSU0FPcGVuU1NMLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3Bw
CmluZGV4IDVkMzYwNjcwZWNlNjc0MzE3ODZhNWEwN2FjMjM1NWZjZGJkYjM5NTcuLjE5YzQ1ZGY0
OTBiMjNkZjFkMzk5NzgxY2Q5YTljODkwMzUxMjI1NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3BwCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBTb255IEludGVyYWN0aXZlIEVudGVydGFp
bm1lbnQgSW5jLgorICogQ29weXJpZ2h0IChDKSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0
YWlubWVudCBJbmMuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI4LDcxICsy
OCwzMzggQEAKIAogI2lmIEVOQUJMRShXRUJfQ1JZUFRPKQogCisjaW5jbHVkZSAiQ3J5cHRvQWxn
b3JpdGhtUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJDcnlwdG9LZXlQYWlyLmgiCiAjaW5jbHVkZSAi
Q3J5cHRvS2V5UlNBQ29tcG9uZW50cy5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisj
aW5jbHVkZSA8b3BlbnNzbC9YNTA5Lmg+CisjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1SZWZQdHI8Q3J5cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmNy
ZWF0ZShDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLCBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVy
LCBib29sIGhhc0hhc2gsIGNvbnN0IENyeXB0b0tleVJTQUNvbXBvbmVudHMmLCBib29sIGV4dHJh
Y3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCkKK3N0YXRpYyBzaXplX3QgZ2V0UlNBTW9kdWx1
c0xlbmd0aChSU0EqIHJzYSkKIHsKLSAgICBVTlVTRURfUEFSQU0oaGFzSGFzaCk7Ci0gICAgVU5V
U0VEX1BBUkFNKGV4dHJhY3RhYmxlKTsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVy
biBudWxscHRyOworICAgIGlmICghcnNhKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
Qk5fbnVtX2J5dGVzKHJzYS0+bikgKiA4OwogfQogCi1ib29sIENyeXB0b0tleVJTQTo6aXNSZXN0
cmljdGVkVG9IYXNoKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXImKSBjb25zdAorc3RhdGljIFZl
Y3Rvcjx1aW50OF90PiBjb252ZXJ0VG9CeXRlcyhCSUdOVU0qIGJpZ251bSkKIHsKLSAgICBub3RJ
bXBsZW1lbnRlZCgpOworICAgIFZlY3Rvcjx1aW50OF90PiBieXRlcyhCTl9udW1fYnl0ZXMoYmln
bnVtKSk7CisgICAgQk5fYm4yYmluKGJpZ251bSwgYnl0ZXMuZGF0YSgpKTsKKyAgICByZXR1cm4g
Ynl0ZXM7Cit9CisKK3N0YXRpYyBCSUdOVU0qIGNvbnZlcnRUb0JpZ051bWJlcihCSUdOVU0qIGJp
Z251bSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBieXRlcykKK3sKKyAgICByZXR1cm4gQk5fYmlu
MmJuKGJ5dGVzLmRhdGEoKSwgYnl0ZXMuc2l6ZSgpLCBiaWdudW0pOworfQorCitSZWZQdHI8Q3J5
cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmNyZWF0ZShDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVy
IGlkZW50aWZpZXIsIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFzaCwgYm9vbCBoYXNIYXNo
LCBjb25zdCBDcnlwdG9LZXlSU0FDb21wb25lbnRzJiBrZXlEYXRhLCBib29sIGV4dHJhY3RhYmxl
LCBDcnlwdG9LZXlVc2FnZUJpdG1hcCB1c2FnZXMpCit7CisgICAgQ3J5cHRvS2V5VHlwZSBrZXlU
eXBlOworICAgIHN3aXRjaCAoa2V5RGF0YS50eXBlKCkpIHsKKyAgICBjYXNlIENyeXB0b0tleVJT
QUNvbXBvbmVudHM6OlR5cGU6OlB1YmxpYzoKKyAgICAgICAga2V5VHlwZSA9IENyeXB0b0tleVR5
cGU6OlB1YmxpYzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDcnlwdG9LZXlSU0FDb21wb25l
bnRzOjpUeXBlOjpQcml2YXRlOgorICAgICAgICBrZXlUeXBlID0gQ3J5cHRvS2V5VHlwZTo6UHJp
dmF0ZTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgfQorCisgICAgLy8gV2hlbiBjcmVhdGluZyBhIHByaXZhdGUga2V5LCB3ZSByZXF1
aXJlIHRoZSBwIGFuZCBxIHByaW1lIGluZm9ybWF0aW9uLgorICAgIGlmIChrZXlUeXBlID09IENy
eXB0b0tleVR5cGU6OlByaXZhdGUgJiYgIWtleURhdGEuaGFzQWRkaXRpb25hbFByaXZhdGVLZXlQ
YXJhbWV0ZXJzKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgLy8gQnV0IHdlIGRv
bid0IGN1cnJlbnRseSBzdXBwb3J0IGNyZWF0aW5nIGtleXMgd2l0aCBhbnkgYWRkaXRpb25hbCBw
cmltZSBpbmZvcm1hdGlvbi4KKyAgICBpZiAoIWtleURhdGEub3RoZXJQcmltZUluZm9zKCkuaXNF
bXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIC8vIEZvciBib3RoIHB1Ymxp
YyBhbmQgcHJpdmF0ZSBrZXlzLCB3ZSBuZWVkIHRoZSBwdWJsaWMgbW9kdWx1cyBhbmQgZXhwb25l
bnQuCisgICAgaWYgKGtleURhdGEubW9kdWx1cygpLmlzRW1wdHkoKSB8fCBrZXlEYXRhLmV4cG9u
ZW50KCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIC8vIEZvciBw
cml2YXRlIGtleXMsIHdlIHJlcXVpcmUgdGhlIHByaXZhdGUgZXhwb25lbnQsIGFzIHdlbGwgYXMg
cCBhbmQgcSBwcmltZSBpbmZvcm1hdGlvbi4KKyAgICBpZiAoa2V5VHlwZSA9PSBDcnlwdG9LZXlU
eXBlOjpQcml2YXRlKSB7CisgICAgICAgIGlmIChrZXlEYXRhLnByaXZhdGVFeHBvbmVudCgpLmlz
RW1wdHkoKSB8fCBrZXlEYXRhLmZpcnN0UHJpbWVJbmZvKCkucHJpbWVGYWN0b3IuaXNFbXB0eSgp
IHx8IGtleURhdGEuc2Vjb25kUHJpbWVJbmZvKCkucHJpbWVGYWN0b3IuaXNFbXB0eSgpKQorICAg
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgYXV0byByc2EgPSBSU0FQdHIo
UlNBX25ldygpKTsKKyAgICBpZiAoIXJzYSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICByc2EtPm4gPSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5uLCBrZXlEYXRhLm1vZHVsdXMoKSk7
CisgICAgcnNhLT5lID0gY29udmVydFRvQmlnTnVtYmVyKHJzYS0+ZSwga2V5RGF0YS5leHBvbmVu
dCgpKTsKKyAgICBpZiAoIXJzYS0+biB8fCAhcnNhLT5lKQorICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKworICAgIGlmIChrZXlUeXBlID09IENyeXB0b0tleVR5cGU6OlByaXZhdGUpIHsKKyAgICAg
ICAgcnNhLT5kID0gY29udmVydFRvQmlnTnVtYmVyKHJzYS0+ZCwga2V5RGF0YS5wcml2YXRlRXhw
b25lbnQoKSk7CisgICAgICAgIHJzYS0+cCA9IGNvbnZlcnRUb0JpZ051bWJlcihyc2EtPnAsIGtl
eURhdGEuZmlyc3RQcmltZUluZm8oKS5wcmltZUZhY3Rvcik7CisgICAgICAgIHJzYS0+cSA9IGNv
bnZlcnRUb0JpZ051bWJlcihyc2EtPnEsIGtleURhdGEuc2Vjb25kUHJpbWVJbmZvKCkucHJpbWVG
YWN0b3IpOworICAgICAgICBpZiAoIXJzYS0+ZCB8fCAhcnNhLT5wIHx8ICFyc2EtPnEpCisgICAg
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgICAgICAvLyBXZSBzZXQgZG1wMSwgZG1wcTEs
IGFuZCBpcW1wIG1lbWJlciBvZiB0aGUgUlNBIHN0cnVjdCBpZiB0aGUga2V5RGF0YSBoYXMgY29y
cmVzcG9uZGluZyBkYXRhLgorCisgICAgICAgIC8vIGRtcDEgLS0gZCBtb2QgKHAgLSAxKQorICAg
ICAgICBpZiAoIWtleURhdGEuZmlyc3RQcmltZUluZm8oKS5mYWN0b3JDUlRFeHBvbmVudC5pc0Vt
cHR5KCkpCisgICAgICAgICAgICByc2EtPmRtcDEgPSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5k
bXAxLCBrZXlEYXRhLmZpcnN0UHJpbWVJbmZvKCkuZmFjdG9yQ1JURXhwb25lbnQpOworICAgICAg
ICAvLyBkbXExIC0tIGQgbW9kIChxIC0gMSkKKyAgICAgICAgaWYgKCFrZXlEYXRhLnNlY29uZFBy
aW1lSW5mbygpLmZhY3RvckNSVEV4cG9uZW50LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJzYS0+
ZG1xMSA9IGNvbnZlcnRUb0JpZ051bWJlcihyc2EtPmRtcTEsIGtleURhdGEuc2Vjb25kUHJpbWVJ
bmZvKCkuZmFjdG9yQ1JURXhwb25lbnQpOworICAgICAgICAvLyBpcW1wIC0tIHFeKC0xKSBtb2Qg
cAorICAgICAgICBpZiAoIWtleURhdGEuc2Vjb25kUHJpbWVJbmZvKCkuZmFjdG9yQ1JUQ29lZmZp
Y2llbnQuaXNFbXB0eSgpKQorICAgICAgICAgICAgcnNhLT5pcW1wID0gY29udmVydFRvQmlnTnVt
YmVyKHJzYS0+aXFtcCwga2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5mYWN0b3JDUlRDb2VmZmlj
aWVudCk7CisgICAgfQorCisgICAgYXV0byBwa2V5ID0gRXZwUEtleVB0cihFVlBfUEtFWV9uZXco
KSk7CisgICAgaWYgKCFwa2V5KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGlmIChF
VlBfUEtFWV9zZXQxX1JTQShwa2V5LmdldCgpLCByc2EuZ2V0KCkpICE9IDEpCisgICAgICAgIHJl
dHVybiBudWxscHRyOworCisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDcnlwdG9LZXlSU0EoaWRl
bnRpZmllciwgaGFzaCwgaGFzSGFzaCwga2V5VHlwZSwgV1RGTW92ZShwa2V5KSwgZXh0cmFjdGFi
bGUsIHVzYWdlcykpOworfQorCitDcnlwdG9LZXlSU0E6OkNyeXB0b0tleVJTQShDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyIGlkZW50aWZpZXIsIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFz
aCwgYm9vbCBoYXNIYXNoLCBDcnlwdG9LZXlUeXBlIHR5cGUsIFBsYXRmb3JtUlNBS2V5Q29udGFp
bmVyJiYgcGxhdGZvcm1LZXksIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFw
IHVzYWdlcykKKyAgICA6IENyeXB0b0tleShpZGVudGlmaWVyLCB0eXBlLCBleHRyYWN0YWJsZSwg
dXNhZ2VzKQorICAgICwgbV9wbGF0Zm9ybUtleShXVEZNb3ZlKHBsYXRmb3JtS2V5KSkKKyAgICAs
IG1fcmVzdHJpY3RlZFRvU3BlY2lmaWNIYXNoKGhhc0hhc2gpCisgICAgLCBtX2hhc2goaGFzaCkK
K3sKK30KKworYm9vbCBDcnlwdG9LZXlSU0E6OmlzUmVzdHJpY3RlZFRvSGFzaChDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyJiBpZGVudGlmaWVyKSBjb25zdAoreworICAgIGlmICghbV9yZXN0cmlj
dGVkVG9TcGVjaWZpY0hhc2gpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlkZW50aWZp
ZXIgPSBtX2hhc2g7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKIHNpemVfdCBDcnlwdG9LZXlSU0E6
OmtleVNpemVJbkJpdHMoKSBjb25zdAogewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0
dXJuIDA7CisgICAgUlNBKiByc2EgPSBFVlBfUEtFWV9nZXQwX1JTQShtX3BsYXRmb3JtS2V5Lmdl
dCgpKTsKKyAgICBpZiAoIXJzYSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICByZXR1cm4gZ2V0
UlNBTW9kdWx1c0xlbmd0aChyc2EpOwogfQogCi12b2lkIENyeXB0b0tleVJTQTo6Z2VuZXJhdGVQ
YWlyKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIsIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIs
IGJvb2wgaGFzSGFzaCwgdW5zaWduZWQgbW9kdWx1c0xlbmd0aCwgY29uc3QgVmVjdG9yPHVpbnQ4
X3Q+JiBwdWJsaWNFeHBvbmVudCwgYm9vbCBleHRyYWN0YWJsZSwgQ3J5cHRvS2V5VXNhZ2VCaXRt
YXAsIEtleVBhaXJDYWxsYmFjayYmLCBWb2lkQ2FsbGJhY2smJiBmYWlsdXJlQ2FsbGJhY2ssIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqKQorLy8gQ29udmVydCB0aGUgZXhwb25lbnQgdmVjdG9yIHRv
IGEgMzItYml0IHZhbHVlLCBpZiBwb3NzaWJsZS4KK3N0YXRpYyBPcHRpb25hbDx1aW50MzJfdD4g
ZXhwb25lbnRWZWN0b3JUb1VJbnQzMihjb25zdCBWZWN0b3I8dWludDhfdD4mIGV4cG9uZW50KQog
ewotICAgIFVOVVNFRF9QQVJBTShoYXNIYXNoKTsKLSAgICBVTlVTRURfUEFSQU0obW9kdWx1c0xl
bmd0aCk7Ci0gICAgVU5VU0VEX1BBUkFNKHB1YmxpY0V4cG9uZW50KTsKLSAgICBVTlVTRURfUEFS
QU0oZXh0cmFjdGFibGUpOwotICAgIFVOVVNFRF9QQVJBTShmYWlsdXJlQ2FsbGJhY2spOwotICAg
IG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKGV4cG9uZW50LnNpemUoKSA+IDQpIHsKKyAgICAg
ICAgaWYgKHN0ZDo6YW55X29mKGV4cG9uZW50LmJlZ2luKCksIGV4cG9uZW50LmVuZCgpIC0gNCwg
W10odWludDhfdCBlbGVtZW50KSB7IHJldHVybiAhIWVsZW1lbnQ7IH0pKQorICAgICAgICAgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICB9CisKKyAgICB1aW50MzJfdCByZXN1bHQgPSAwOwor
ICAgIGZvciAoc2l6ZV90IHNpemUgPSBleHBvbmVudC5zaXplKCksIGkgPSBzdGQ6Om1pbjxzaXpl
X3Q+KDQsIHNpemUpOyBpID4gMDsgLS1pKSB7CisgICAgICAgIHJlc3VsdCA8PD0gODsKKyAgICAg
ICAgcmVzdWx0ICs9IGV4cG9uZW50W3NpemUgLSBpXTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVz
dWx0OwogfQogCi1SZWZQdHI8Q3J5cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmltcG9ydFNwa2ko
Q3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgT3B0aW9uYWw8Q3J5cHRvQWxnb3JpdGhtSWRlbnRp
Zmllcj4sIFZlY3Rvcjx1aW50OF90PiYmLCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2Fn
ZUJpdG1hcCkKK3ZvaWQgQ3J5cHRvS2V5UlNBOjpnZW5lcmF0ZVBhaXIoQ3J5cHRvQWxnb3JpdGht
SWRlbnRpZmllciBhbGdvcml0aG0sIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFzaCwgYm9v
bCBoYXNIYXNoLCB1bnNpZ25lZCBtb2R1bHVzTGVuZ3RoLCBjb25zdCBWZWN0b3I8dWludDhfdD4m
IHB1YmxpY0V4cG9uZW50LCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCB1
c2FnZXMsIEtleVBhaXJDYWxsYmFjayYmIGNhbGxiYWNrLCBWb2lkQ2FsbGJhY2smJiBmYWlsdXJl
Q2FsbGJhY2ssIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKQogewotICAgIFVOVVNFRF9QQVJBTShl
eHRyYWN0YWJsZSk7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsK
KyAgICAvLyBPcGVuU1NMIGRvZXNuJ3QgcmVwb3J0IGFuIGVycm9yIGlmIHRoZSBleHBvbmVudCBp
cyBzbWFsbGVyIHRoYW4gdGhyZWUgb3IgZXZlbi4KKyAgICBhdXRvIGUgPSBleHBvbmVudFZlY3Rv
clRvVUludDMyKHB1YmxpY0V4cG9uZW50KTsKKyAgICBpZiAoIWUgfHwgKmUgPCAzIHx8ICEoKmUg
JiAweDEpKSB7CisgICAgICAgIGZhaWx1cmVDYWxsYmFjaygpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgYXV0byBleHBvbmVudCA9IEJJR05VTVB0cihjb252ZXJ0VG9CaWdOdW1iZXIo
bnVsbHB0ciwgcHVibGljRXhwb25lbnQpKTsKKyAgICBhdXRvIHByaXZhdGVSU0EgPSBSU0FQdHIo
UlNBX25ldygpKTsKKyAgICBpZiAoIWV4cG9uZW50IHx8IFJTQV9nZW5lcmF0ZV9rZXlfZXgocHJp
dmF0ZVJTQS5nZXQoKSwgbW9kdWx1c0xlbmd0aCwgZXhwb25lbnQuZ2V0KCksIG51bGxwdHIpIDw9
IDApIHsKKyAgICAgICAgZmFpbHVyZUNhbGxiYWNrKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisKKyAgICBhdXRvIHB1YmxpY1JTQSA9IFJTQVB0cihSU0FQdWJsaWNLZXlfZHVwKHByaXZhdGVS
U0EuZ2V0KCkpKTsKKyAgICBpZiAoIXB1YmxpY1JTQSkgeworICAgICAgICBmYWlsdXJlQ2FsbGJh
Y2soKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8gcHJpdmF0ZVBLZXkgPSBF
dnBQS2V5UHRyKEVWUF9QS0VZX25ldygpKTsKKyAgICBpZiAoRVZQX1BLRVlfc2V0MV9SU0EocHJp
dmF0ZVBLZXkuZ2V0KCksIHByaXZhdGVSU0EuZ2V0KCkpIDw9IDApIHsKKyAgICAgICAgZmFpbHVy
ZUNhbGxiYWNrKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIHB1YmxpY1BL
ZXkgPSBFdnBQS2V5UHRyKEVWUF9QS0VZX25ldygpKTsKKyAgICBpZiAoRVZQX1BLRVlfc2V0MV9S
U0EocHVibGljUEtleS5nZXQoKSwgcHVibGljUlNBLmdldCgpKSA8PSAwKSB7CisgICAgICAgIGZh
aWx1cmVDYWxsYmFjaygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBwdWJs
aWNLZXkgPSBDcnlwdG9LZXlSU0E6OmNyZWF0ZShhbGdvcml0aG0sIGhhc2gsIGhhc0hhc2gsIENy
eXB0b0tleVR5cGU6OlB1YmxpYywgV1RGTW92ZShwdWJsaWNQS2V5KSwgdHJ1ZSwgdXNhZ2VzKTsK
KyAgICBhdXRvIHByaXZhdGVLZXkgPSBDcnlwdG9LZXlSU0E6OmNyZWF0ZShhbGdvcml0aG0sIGhh
c2gsIGhhc0hhc2gsIENyeXB0b0tleVR5cGU6OlByaXZhdGUsIFdURk1vdmUocHJpdmF0ZVBLZXkp
LCBleHRyYWN0YWJsZSwgdXNhZ2VzKTsKKyAgICBjYWxsYmFjayhDcnlwdG9LZXlQYWlyIHsgV1RG
TW92ZShwdWJsaWNLZXkpLCBXVEZNb3ZlKHByaXZhdGVLZXkpIH0pOwogfQogCi1SZWZQdHI8Q3J5
cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmltcG9ydFBrY3M4KENyeXB0b0FsZ29yaXRobUlkZW50
aWZpZXIsIE9wdGlvbmFsPENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI+LCBWZWN0b3I8dWludDhf
dD4mJiwgYm9vbCBleHRyYWN0YWJsZSwgQ3J5cHRvS2V5VXNhZ2VCaXRtYXApCitSZWZQdHI8Q3J5
cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmltcG9ydFNwa2koQ3J5cHRvQWxnb3JpdGhtSWRlbnRp
ZmllciBpZGVudGlmaWVyLCBPcHRpb25hbDxDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyPiBoYXNo
LCBWZWN0b3I8dWludDhfdD4mJiBrZXlEYXRhLCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlV
c2FnZUJpdG1hcCB1c2FnZXMpCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGV4dHJhY3RhYmxlKTsKLSAg
ICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBudWxscHRyOworICAgIC8vIFdlIG5lZWQg
YSBsb2NhbCBwb2ludGVyIHZhcmlhYmxlIHRvIHBhc3MgdG8gZDJpIChERVIgdG8gaW50ZXJuYWwp
IGZ1bmN0aW9ucygpLgorICAgIGNvbnN0IHVpbnQ4X3QqIHB0ciA9IGtleURhdGEuZGF0YSgpOwor
CisgICAgLy8gV2UgdXNlIGQyaV9QVUJLRVkoKSB0byBpbXBvcnQgYSBwdWJsaWMga2V5LgorICAg
IGF1dG8gcGtleSA9IEV2cFBLZXlQdHIoZDJpX1BVQktFWShudWxscHRyLCAmcHRyLCBrZXlEYXRh
LnNpemUoKSkpOworICAgIGlmICghcGtleSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tleVJTQShpZGVudGlmaWVyLCBoYXNoLnZhbHVl
T3IoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzEpLCAhIWhhc2gsIENyeXB0b0tleVR5
cGU6OlB1YmxpYywgV1RGTW92ZShwa2V5KSwgZXh0cmFjdGFibGUsIHVzYWdlcykpOworfQorCitS
ZWZQdHI8Q3J5cHRvS2V5UlNBPiBDcnlwdG9LZXlSU0E6OmltcG9ydFBrY3M4KENyeXB0b0FsZ29y
aXRobUlkZW50aWZpZXIgaWRlbnRpZmllciwgT3B0aW9uYWw8Q3J5cHRvQWxnb3JpdGhtSWRlbnRp
Zmllcj4gaGFzaCwgVmVjdG9yPHVpbnQ4X3Q+JiYga2V5RGF0YSwgYm9vbCBleHRyYWN0YWJsZSwg
Q3J5cHRvS2V5VXNhZ2VCaXRtYXAgdXNhZ2VzKQoreworICAgIC8vIFdlIG5lZWQgYSBsb2NhbCBw
b2ludGVyIHZhcmlhYmxlIHRvIHBhc3MgdG8gZDJpIChERVIgdG8gaW50ZXJuYWwpIGZ1bmN0aW9u
cygpLgorICAgIGNvbnN0IHVpbnQ4X3QqIHB0ciA9IGtleURhdGEuZGF0YSgpOworCisgICAgLy8g
V2UgdXNlIGQyaV9QS0NTOF9QUklWX0tFWV9JTkZPKCkgdG8gaW1wb3J0IGEgcHJpdmF0ZSBrZXku
CisgICAgYXV0byBwOGluZiA9IFBLQ1M4UHJpdktleUluZm9QdHIoZDJpX1BLQ1M4X1BSSVZfS0VZ
X0lORk8obnVsbHB0ciwgJnB0ciwga2V5RGF0YS5zaXplKCkpKTsKKyAgICBpZiAoIXA4aW5mKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGF1dG8gcGtleSA9IEV2cFBLZXlQdHIoRVZQ
X1BLQ1M4MlBLRVkocDhpbmYuZ2V0KCkpKTsKKyAgICBpZiAoIXBrZXkpCisgICAgICAgIHJldHVy
biBudWxscHRyOworCisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDcnlwdG9LZXlSU0EoaWRlbnRp
ZmllciwgaGFzaC52YWx1ZU9yKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI6OlNIQV8xKSwgISFo
YXNoLCBDcnlwdG9LZXlUeXBlOjpQcml2YXRlLCBXVEZNb3ZlKHBrZXkpLCBleHRyYWN0YWJsZSwg
dXNhZ2VzKSk7CiB9CiAKIEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvS2V5UlNB
OjpleHBvcnRTcGtpKCkgY29uc3QKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVy
biBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworICAgIGlmICh0eXBlKCkgIT0gQ3J5
cHRvS2V5VHlwZTo6UHVibGljKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZEFj
Y2Vzc0Vycm9yIH07CisKKyAgICBpbnQgbGVuID0gaTJkX1BVQktFWShtX3BsYXRmb3JtS2V5Lmdl
dCgpLCBudWxscHRyKTsKKyAgICBpZiAobGVuIDwgMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBWZWN0b3I8dWludDhfdD4ga2V5RGF0YShsZW4p
OworICAgIGF1dG8gcHRyID0ga2V5RGF0YS5kYXRhKCk7CisgICAgaWYgKGkyZF9QVUJLRVkobV9w
bGF0Zm9ybUtleS5nZXQoKSwgJnB0cikgPCAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
T3BlcmF0aW9uRXJyb3IgfTsKKworICAgIHJldHVybiBrZXlEYXRhOwogfQogCiBFeGNlcHRpb25P
cjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0tleVJTQTo6ZXhwb3J0UGtjczgoKSBjb25zdAogewot
ICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRl
ZEVycm9yIH07CisgICAgaWYgKHR5cGUoKSAhPSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisKKyAgICBhdXRv
IHA4aW5mID0gUEtDUzhQcml2S2V5SW5mb1B0cihFVlBfUEtFWTJQS0NTOChtX3BsYXRmb3JtS2V5
LmdldCgpKSk7CisgICAgaWYgKCFwOGluZikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9w
ZXJhdGlvbkVycm9yIH07CisKKyAgICBpbnQgbGVuID0gaTJkX1BLQ1M4X1BSSVZfS0VZX0lORk8o
cDhpbmYuZ2V0KCksIG51bGxwdHIpOworICAgIGlmIChsZW4gPCAwKQorICAgICAgICByZXR1cm4g
RXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBrZXlE
YXRhKGxlbik7CisgICAgYXV0byBwdHIgPSBrZXlEYXRhLmRhdGEoKTsKKyAgICBpZiAoaTJkX1BL
Q1M4X1BSSVZfS0VZX0lORk8ocDhpbmYuZ2V0KCksICZwdHIpIDwgMCkKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICByZXR1cm4ga2V5RGF0YTsKK30K
KworYXV0byBDcnlwdG9LZXlSU0E6OmFsZ29yaXRobSgpIGNvbnN0IC0+IEtleUFsZ29yaXRobQor
eworICAgIFJTQSogcnNhID0gRVZQX1BLRVlfZ2V0MF9SU0EobV9wbGF0Zm9ybUtleS5nZXQoKSk7
CisKKyAgICBhdXRvIG1vZHVsdXNMZW5ndGggPSBnZXRSU0FNb2R1bHVzTGVuZ3RoKHJzYSk7Cisg
ICAgYXV0byBwdWJsaWNFeHBvbmVudCA9IHJzYSA/IGNvbnZlcnRUb0J5dGVzKHJzYS0+ZSkgOiBW
ZWN0b3I8dWludDhfdD4geyB9OworCisgICAgaWYgKG1fcmVzdHJpY3RlZFRvU3BlY2lmaWNIYXNo
KSB7CisgICAgICAgIENyeXB0b1JzYUhhc2hlZEtleUFsZ29yaXRobSByZXN1bHQ7CisgICAgICAg
IHJlc3VsdC5uYW1lID0gQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNpbmdsZXRvbigpLm5hbWUo
YWxnb3JpdGhtSWRlbnRpZmllcigpKTsKKyAgICAgICAgcmVzdWx0Lm1vZHVsdXNMZW5ndGggPSBt
b2R1bHVzTGVuZ3RoOworICAgICAgICByZXN1bHQucHVibGljRXhwb25lbnQgPSBVaW50OEFycmF5
Ojp0cnlDcmVhdGUocHVibGljRXhwb25lbnQuZGF0YSgpLCBwdWJsaWNFeHBvbmVudC5zaXplKCkp
OworICAgICAgICByZXN1bHQuaGFzaC5uYW1lID0gQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNp
bmdsZXRvbigpLm5hbWUobV9oYXNoKTsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisK
KyAgICBDcnlwdG9Sc2FLZXlBbGdvcml0aG0gcmVzdWx0OworICAgIHJlc3VsdC5uYW1lID0gQ3J5
cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNpbmdsZXRvbigpLm5hbWUoYWxnb3JpdGhtSWRlbnRpZmll
cigpKTsKKyAgICByZXN1bHQubW9kdWx1c0xlbmd0aCA9IG1vZHVsdXNMZW5ndGg7CisgICAgcmVz
dWx0LnB1YmxpY0V4cG9uZW50ID0gVWludDhBcnJheTo6dHJ5Q3JlYXRlKHB1YmxpY0V4cG9uZW50
LmRhdGEoKSwgcHVibGljRXhwb25lbnQuc2l6ZSgpKTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQog
CiBzdGQ6OnVuaXF1ZV9wdHI8Q3J5cHRvS2V5UlNBQ29tcG9uZW50cz4gQ3J5cHRvS2V5UlNBOjpl
eHBvcnREYXRhKCkgY29uc3QKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBu
dWxscHRyOworICAgIFJTQSogcnNhID0gRVZQX1BLRVlfZ2V0MF9SU0EobV9wbGF0Zm9ybUtleS5n
ZXQoKSk7CisgICAgaWYgKCFyc2EpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgc3dp
dGNoICh0eXBlKCkpIHsKKyAgICBjYXNlIENyeXB0b0tleVR5cGU6OlB1YmxpYzoKKyAgICAgICAg
Ly8gV2UgbmVlZCB0aGUgcHVibGljIG1vZHVsdXMgYW5kIGV4cG9uZW50IGZvciB0aGUgcHVibGlj
IGtleS4KKyAgICAgICAgaWYgKCFyc2EtPm4gfHwgIXJzYS0+ZSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworICAgICAgICByZXR1cm4gQ3J5cHRvS2V5UlNBQ29tcG9uZW50czo6Y3JlYXRl
UHVibGljKGNvbnZlcnRUb0J5dGVzKHJzYS0+biksIGNvbnZlcnRUb0J5dGVzKHJzYS0+ZSkpOwor
ICAgIGNhc2UgQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZTogeworICAgICAgICAvLyBXZSBuZWVkIHRo
ZSBwdWJsaWMgbW9kdWx1cywgZXhwb25lbnQsIGFuZCBwcml2YXRlIGV4cG9uZW50LCBhcyB3ZWxs
IGFzIHAgYW5kIHEgcHJpbWUgaW5mb3JtYXRpb24uCisgICAgICAgIGlmICghcnNhLT5uIHx8ICFy
c2EtPmUgfHwgIXJzYS0+ZCB8fCAhcnNhLT5wIHx8ICFyc2EtPnEpCisgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKworICAgICAgICBDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpQcmltZUluZm8g
Zmlyc3RQcmltZUluZm87CisgICAgICAgIGZpcnN0UHJpbWVJbmZvLnByaW1lRmFjdG9yID0gY29u
dmVydFRvQnl0ZXMocnNhLT5wKTsKKworICAgICAgICBDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpQ
cmltZUluZm8gc2Vjb25kUHJpbWVJbmZvOworICAgICAgICBzZWNvbmRQcmltZUluZm8ucHJpbWVG
YWN0b3IgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPnEpOworCisgICAgICAgIGF1dG8gY29udGV4dCA9
IEJOQ3R4UHRyKEJOX0NUWF9uZXcoKSk7CisgICAgICAgIC8vIGRtcDEgLS0gZCBtb2QgKHAgLSAx
KQorICAgICAgICBpZiAocnNhLT5kbXAxKQorICAgICAgICAgICAgZmlyc3RQcmltZUluZm8uZmFj
dG9yQ1JURXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmRtcDEpOworICAgICAgICBlbHNl
IHsKKyAgICAgICAgICAgIGF1dG8gZG1wMSA9IEJJR05VTVB0cihCTl9uZXcoKSk7CisgICAgICAg
ICAgICBhdXRvIHBtMSA9IEJJR05VTVB0cihCTl9kdXAocnNhLT5wKSk7CisgICAgICAgICAgICBp
ZiAoQk5fc3ViX3dvcmQocG0xLmdldCgpLCAxKSA9PSAxICYmIEJOX21vZChkbXAxLmdldCgpLCBy
c2EtPmQsIHBtMS5nZXQoKSwgY29udGV4dC5nZXQoKSkgPT0gMSkKKyAgICAgICAgICAgICAgICBm
aXJzdFByaW1lSW5mby5mYWN0b3JDUlRFeHBvbmVudCA9IGNvbnZlcnRUb0J5dGVzKGRtcDEuZ2V0
KCkpOworICAgICAgICB9CisKKyAgICAgICAgLy8gZG1xMSAtLSBkIG1vZCAocSAtIDEpCisgICAg
ICAgIGlmIChyc2EtPmRtcTEpCisgICAgICAgICAgICBzZWNvbmRQcmltZUluZm8uZmFjdG9yQ1JU
RXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmRtcTEpOworICAgICAgICBlbHNlIHsKKyAg
ICAgICAgICAgIGF1dG8gZG1xMSA9IEJJR05VTVB0cihCTl9uZXcoKSk7CisgICAgICAgICAgICBh
dXRvIHFtMSA9IEJJR05VTVB0cihCTl9kdXAocnNhLT5xKSk7CisgICAgICAgICAgICBpZiAoQk5f
c3ViX3dvcmQocW0xLmdldCgpLCAxKSA9PSAxICYmIEJOX21vZChkbXExLmdldCgpLCByc2EtPmQs
IHFtMS5nZXQoKSwgY29udGV4dC5nZXQoKSkgPT0gMSkKKyAgICAgICAgICAgICAgICBzZWNvbmRQ
cmltZUluZm8uZmFjdG9yQ1JURXhwb25lbnQgPSBjb252ZXJ0VG9CeXRlcyhkbXExLmdldCgpKTsK
KyAgICAgICAgfQorCisgICAgICAgIC8vIGlxbXAgLS0gcV4oLTEpIG1vZCBwCisgICAgICAgIGlm
IChyc2EtPmlxbXApCisgICAgICAgICAgICBzZWNvbmRQcmltZUluZm8uZmFjdG9yQ1JUQ29lZmZp
Y2llbnQgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPmlxbXApOworICAgICAgICBlbHNlIHsKKyAgICAg
ICAgICAgIGF1dG8gaXFtcCA9IEJJR05VTVB0cihCTl9tb2RfaW52ZXJzZShudWxscHRyLCByc2Et
PnEsIHJzYS0+cCwgY29udGV4dC5nZXQoKSkpOworICAgICAgICAgICAgaWYgKGlxbXApCisgICAg
ICAgICAgICAgICAgc2Vjb25kUHJpbWVJbmZvLmZhY3RvckNSVENvZWZmaWNpZW50ID0gY29udmVy
dFRvQnl0ZXMoaXFtcC5nZXQoKSk7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4gQ3J5cHRv
S2V5UlNBQ29tcG9uZW50czo6Y3JlYXRlUHJpdmF0ZVdpdGhBZGRpdGlvbmFsRGF0YSgKKyAgICAg
ICAgICAgIGNvbnZlcnRUb0J5dGVzKHJzYS0+biksIGNvbnZlcnRUb0J5dGVzKHJzYS0+ZSksIGNv
bnZlcnRUb0J5dGVzKHJzYS0+ZCksCisgICAgICAgICAgICBXVEZNb3ZlKGZpcnN0UHJpbWVJbmZv
KSwgV1RGTW92ZShzZWNvbmRQcmltZUluZm8pLCBWZWN0b3I8Q3J5cHRvS2V5UlNBQ29tcG9uZW50
czo6UHJpbWVJbmZvPiB7IH0pOworICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3Bl
bnNzbC9PcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3Bl
bnNzbC9PcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmgKaW5kZXggZWUwYjk1ZGU4MzNhMGZkMTQ4MzNk
MGRmYWVjMzIyZTQ0NGQ3NWQzOS4uYjBlZTQxMTQ4ZjdmYmQ1N2RiNWIxZWI2Njg5ZDgyZDM5Y2U0
M2ZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTENy
eXB0b1VuaXF1ZVB0ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5T
U0xDcnlwdG9VbmlxdWVQdHIuaApAQCAtMjcsNyArMjcsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDxtZW1vcnk+Ci0jaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KKyNpbmNsdWRlIDxvcGVu
c3NsL1g1MDkuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC02OSw0ICs2OSw1NSBAQCBz
dHJ1Y3QgT3BlblNTTENyeXB0b1B0ckRlbGV0ZXI8RVZQX1BLRVk+IHsKIAogdXNpbmcgRXZwUEtl
eVB0ciA9IE9wZW5TU0xDcnlwdG9QdHI8RVZQX1BLRVk+OwogCit0ZW1wbGF0ZSA8Pgorc3RydWN0
IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEVWUF9QS0VZX0NUWD4geworICAgIHZvaWQgb3BlcmF0
b3IoKShFVlBfUEtFWV9DVFgqIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIEVWUF9QS0VZX0NU
WF9mcmVlKHB0cik7CisgICAgfQorfTsKKwordXNpbmcgRXZwUEtleUN0eFB0ciA9IE9wZW5TU0xD
cnlwdG9QdHI8RVZQX1BLRVlfQ1RYPjsKKwordGVtcGxhdGUgPD4KK3N0cnVjdCBPcGVuU1NMQ3J5
cHRvUHRyRGVsZXRlcjxSU0E+IHsKKyAgICB2b2lkIG9wZXJhdG9yKCkoUlNBKiBwdHIpIGNvbnN0
CisgICAgeworICAgICAgICBSU0FfZnJlZShwdHIpOworICAgIH0KK307CisKK3VzaW5nIFJTQVB0
ciA9IE9wZW5TU0xDcnlwdG9QdHI8UlNBPjsKKwordGVtcGxhdGUgPD4KK3N0cnVjdCBPcGVuU1NM
Q3J5cHRvUHRyRGVsZXRlcjxQS0NTOF9QUklWX0tFWV9JTkZPPiB7CisgICAgdm9pZCBvcGVyYXRv
cigpKFBLQ1M4X1BSSVZfS0VZX0lORk8qIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIFBLQ1M4
X1BSSVZfS0VZX0lORk9fZnJlZShwdHIpOworICAgIH0KK307CisKK3VzaW5nIFBLQ1M4UHJpdktl
eUluZm9QdHIgPSBPcGVuU1NMQ3J5cHRvUHRyPFBLQ1M4X1BSSVZfS0VZX0lORk8+OworCit0ZW1w
bGF0ZSA8Pgorc3RydWN0IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEJJR05VTT4geworICAgIHZv
aWQgb3BlcmF0b3IoKShCSUdOVU0qIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIEJOX2NsZWFy
X2ZyZWUocHRyKTsKKyAgICB9Cit9OworCit1c2luZyBCSUdOVU1QdHIgPSBPcGVuU1NMQ3J5cHRv
UHRyPEJJR05VTT47CisKK3RlbXBsYXRlIDw+CitzdHJ1Y3QgT3BlblNTTENyeXB0b1B0ckRlbGV0
ZXI8Qk5fQ1RYPiB7CisgICAgdm9pZCBvcGVyYXRvcigpKEJOX0NUWCogcHRyKSBjb25zdAorICAg
IHsKKyAgICAgICAgQk5fQ1RYX2ZyZWUocHRyKTsKKyAgICB9Cit9OworCit1c2luZyBCTkN0eFB0
ciA9IE9wZW5TU0xDcnlwdG9QdHI8Qk5fQ1RYPjsKKworCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NMVXRpbGl0
aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRpZXMu
Y3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmRkOWY0NTQ0NmEwZjRjMGRiMWVkNzZjNWZiMGIxNGFkZTIxNWRjYzgK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NM
VXRpbGl0aWVzLmNwcApAQCAtMCwwICsxLDc5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJPcGVuU1NMVXRpbGl0aWVzLmgiCisKKyNpZiBFTkFCTEUo
V0VCX0NSWVBUTykKKworI2luY2x1ZGUgIk9wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaCIKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjb25zdCBFVlBfTUQqIGRpZ2VzdEFsZ29yaXRobShDcnlwdG9B
bGdvcml0aG1JZGVudGlmaWVyIGhhc2hGdW5jdGlvbikKK3sKKyAgICBzd2l0Y2ggKGhhc2hGdW5j
dGlvbikgeworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzE6CisgICAg
ICAgIHJldHVybiBFVlBfc2hhMSgpOworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmll
cjo6U0hBXzIyNDoKKyAgICAgICAgcmV0dXJuIEVWUF9zaGEyMjQoKTsKKyAgICBjYXNlIENyeXB0
b0FsZ29yaXRobUlkZW50aWZpZXI6OlNIQV8yNTY6CisgICAgICAgIHJldHVybiBFVlBfc2hhMjU2
KCk7CisgICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfMzg0OgorICAgICAg
ICByZXR1cm4gRVZQX3NoYTM4NCgpOworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmll
cjo6U0hBXzUxMjoKKyAgICAgICAgcmV0dXJuIEVWUF9zaGE1MTIoKTsKKyAgICBkZWZhdWx0Ogor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9Cit9CisKK09wdGlvbmFsPFZlY3Rvcjx1aW50
OF90Pj4gY2FsY3VsYXRlRGlnZXN0KGNvbnN0IEVWUF9NRCogYWxnb3JpdGhtLCBjb25zdCBWZWN0
b3I8dWludDhfdD4mIG1lc3NhZ2UpCit7CisgICAgRXZwRGlnZXN0Q3R4UHRyIGN0eDsKKyAgICBp
ZiAoIShjdHggPSBFdnBEaWdlc3RDdHhQdHIoRVZQX01EX0NUWF9jcmVhdGUoKSkpKQorICAgICAg
ICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgaW50IGRpZ2VzdExlbmd0aCA9IEVWUF9NRF9z
aXplKGFsZ29yaXRobSk7CisgICAgaWYgKGRpZ2VzdExlbmd0aCA8PSAwKQorICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OworICAgIFZlY3Rvcjx1aW50OF90PiBkaWdlc3QoZGlnZXN0TGVuZ3Ro
KTsKKworICAgIGlmIChFVlBfRGlnZXN0SW5pdF9leChjdHguZ2V0KCksIGFsZ29yaXRobSwgbnVs
bHB0cikgIT0gMSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIGlmIChFVlBf
RGlnZXN0VXBkYXRlKGN0eC5nZXQoKSwgbWVzc2FnZS5kYXRhKCksIG1lc3NhZ2Uuc2l6ZSgpKSAh
PSAxKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgaWYgKEVWUF9EaWdlc3RG
aW5hbF9leChjdHguZ2V0KCksIGRpZ2VzdC5kYXRhKCksIG51bGxwdHIpICE9IDEpCisgICAgICAg
IHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICByZXR1cm4gZGlnZXN0OworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKworI2VuZGlmIC8vIEVOQUJMRShXRUJfQ1JZUFRPKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5oIGIv
U291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmQyYzkxYmZjNDdiODhmM2JkZmM0NmQ1Zjk4ODY4MDc2ZjM2ZGE5NjgKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NMVXRpbGl0aWVzLmgK
QEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVyYWN0
aXZlIEVudGVydGFpbm1lbnQgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgIkNyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIuaCIKKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5o
PgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgorI2luY2x1
ZGUgPHd0Zi9WZWN0b3IuaD4KKworI2lmIEVOQUJMRShXRUJfQ1JZUFRPKQorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NvbnN0IEVWUF9NRCogZGlnZXN0QWxnb3JpdGhtKENyeXB0b0FsZ29yaXRo
bUlkZW50aWZpZXIgaGFzaEZ1bmN0aW9uKTsKKworT3B0aW9uYWw8VmVjdG9yPHVpbnQ4X3Q+PiBj
YWxjdWxhdGVEaWdlc3QoY29uc3QgRVZQX01EKiBhbGdvcml0aG0sIGNvbnN0IFZlY3Rvcjx1aW50
OF90PiYgbWVzc2FnZSk7CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShXRUJfQ1JZUFRPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vT3Bl
blNTTC5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL09wZW5TU0wuY21ha2UKaW5kZXgg
YTRlMmFhNTUxMTA3ZWIwMGNiNzgxMzhlNTc3MzU3MGNhMTQ5ZmExNi4uN2U2N2QyZWIxMmU2NjU4
ODlmODY3YjcwNTdiZTMzYmEyNmExMDI4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vT3BlblNTTC5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9PcGVuU1NM
LmNtYWtlCkBAIC0xNyw2ICsxNyw3IEBAIGlmIChFTkFCTEVfV0VCX0NSWVBUTykKICAgICAgICAg
Y3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcAogICAgICAg
ICBjcnlwdG8vb3BlbnNzbC9DcnlwdG9LZXlFQ09wZW5TU0wuY3BwCiAgICAgICAgIGNyeXB0by9v
cGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3BwCisgICAgICAgIGNyeXB0by9vcGVuc3NsL09w
ZW5TU0xVdGlsaXRpZXMuY3BwCiAgICAgICAgIGNyeXB0by9vcGVuc3NsL1NlcmlhbGl6ZWRDcnlw
dG9LZXlXcmFwT3BlblNTTC5jcHAKICAgICApCiBlbmRpZiAoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L2NtYWtlL09wdGlvbnNQbGF5U3RhdGlvbi5jbWFrZSBiL1NvdXJjZS9jbWFrZS9PcHRpb25zUGxh
eVN0YXRpb24uY21ha2UKaW5kZXggZDhmM2E1Mjg2ZTMyZDg2ZDRmNGZkODEyY2MxMTYxZjgzZWJi
YTBjYS4uMTA2NTNiMzJmOTFhMzNmNjk5MTg1ZDg0MjliNDkzOWYyMjk3ZDA4MiAxMDA2NDQKLS0t
IGEvU291cmNlL2NtYWtlL09wdGlvbnNQbGF5U3RhdGlvbi5jbWFrZQorKysgYi9Tb3VyY2UvY21h
a2UvT3B0aW9uc1BsYXlTdGF0aW9uLmNtYWtlCkBAIC0xNDUsOSArMTQ1LDYgQEAgc2V0KENNQUtF
X0NYWF9TVEFOREFSRF9MSUJSQVJJRVMKICAgICAiJHtDTUFLRV9DWFhfU1RBTkRBUkRfTElCUkFS
SUVTfSAke0NfU1REX0xJQlJBUll9IgogICApCiAKLSMgVE9ETzogQWRkIGEgY2hlY2sgZm9yIEhB
VkVfUlNBX1BTUyBmb3Igc3VwcG9ydCBvZiBDcnlwdG9BbGdvcml0aG1SU0FfUFNTCi0jIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDY2MzUKLQogU0VUX0FORF9FWFBP
U0VfVE9fQlVJTEQoSEFWRV9QVEhSRUFEX1NFVE5BTUVfTlAgT04pCiAKIFNFVF9BTkRfRVhQT1NF
X1RPX0JVSUxEKFVTRV9DQUlSTyBPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9jbWFrZS9PcHRpb25z
V2luQ2Fpcm8uY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc1dpbkNhaXJvLmNtYWtlCmluZGV4
IDdkZTUwM2VkMWUyMjU5YzYwM2FjMmExNzRhMDVhZTE5MTI4NTFkMjMuLjUxMjM5MmU2NDI0ZWE2
NGZmNjVmZmZjMTRkZjMwMzQ0Y2U2Y2JlOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9PcHRp
b25zV2luQ2Fpcm8uY21ha2UKKysrIGIvU291cmNlL2NtYWtlL09wdGlvbnNXaW5DYWlyby5jbWFr
ZQpAQCAtNDEsOSArNDEsNiBAQCBpZiAoV2ViUF9GT1VORCkKICAgICBTRVRfQU5EX0VYUE9TRV9U
T19CVUlMRChVU0VfV0VCUCBPTikKIGVuZGlmICgpCiAKLSMgVE9ETzogQWRkIGEgY2hlY2sgZm9y
IEhBVkVfUlNBX1BTUyBmb3Igc3VwcG9ydCBvZiBDcnlwdG9BbGdvcml0aG1SU0FfUFNTCi0jIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDY2MzUKLQogc2V0KFVTRV9B
TkdMRV9FR0wgT04pCiBzZXQoVVNFX0FOR0xFX1dFQkdMIE9OKQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZTZhZmExNmJl
ZjZhNjYxYjRhNTY4ODg2MDIxZTVhZmY3ZWU1YjE0MS4uZTdjNzA0YTkyOTkzODViNTgwYmRhYWJj
MjkyNjRjMTZjNTgzMGIwYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA1LTA1ICBZb3No
aWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FAc29ueS5jb20+CisKKyAgICAgICAg
W09wZW5TU0xdIEltcGxlbWVudCBDcnlwdG9BbGdvcml0aG1SU0EqCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjUyOTQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgUlNBIGZvciBPcGVuU1NM
LgorCisgICAgICAgIEltcGxlbWVudCBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUCwgQ3J5cHRvQWxn
b3JpdGhtUlNBX1BTUywKKyAgICAgICAgQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNSwg
Q3J5cHRvQWxnb3JpdGhtUlNBU0FfUEtDUzFfdjFfNSwKKyAgICAgICAgYW5kIENyeXB0b0tleVJT
QSBmb3IgT3BlblNTTC4KKworICAgICAgICBBZGQgd2luY2Fpcm8gcGxhdGZvcm0gZXhwZWN0YXRp
b25zIGZvcgorICAgICAgICByc2EtZ2VuZXJhdGUvaW1wb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1l
dGVycywgbW9kaWZ5aW5nIFJTQS1QU1MKKyAgICAgICAgcmVsYXRlZCByZXN1bHRzIGZyb20gTm90
U3VwcG9ydGVkIHRvIGFwcHJvcHJpYXRlIGVycm9ycy4KKworICAgICAgICAqIHBsYXRmb3JtL3dp
bmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnM6IFVuc2tpcCB0ZXN0cyB0aGF0IGFyZSBub3cgc3VwcG9y
dGVkLgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL2NyeXB0by9zdWJ0bGUvcnNhLWdlbmVy
YXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHBsYXRmb3JtL3dpbmNhaXJvL2NyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1rZXktbWFsZm9y
bWVkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAyMS0wNC0yOCAgTWFudWVs
IFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAgICBbc2VsZWN0b3Jz
XSBVc2luZyBhIG1vZGlmaWVyIGtleSBvbiBhbiBlbGVtZW50IG1ha2VzIGl0IHN0b3AgbWF0Y2hp
bmcgOmZvY3VzLXZpc2libGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNh
aXJvL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0
RXhwZWN0YXRpb25zCmluZGV4IDZmYWIzNDQwMjJiNTFiZDA2ZGI3OTU5NGYxZDE4ZTBiZmFhNWMz
MmEuLjY5MmYxMjM2NWQ2YTg0MjUwNDdlYzY4MDcwOGIzMWEzN2ZjZmVhMGUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucwpAQCAtNzM0LDIyICs3
MzQsMTAgQEAgd2Via2l0Lm9yZy9iLzIyMTQ0NSBmYXN0L3RleHQvaW50ZXJuYXRpb25hbC9zeXN0
ZW0tbGFuZ3VhZ2UvanAtY2lyY2xlZC5odG1sIFsgU2sKICMgY3J5cHRvCiAjLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vCiAKLSMgQ3J5cHRzIG90aGVyIHRoYW4gQUVTIGFyZSBub3Qg
c3VwcG9ydGVkLgotY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9ydC1rZXktdW53cmFwLWp3ay1y
c2Eta2V5LXByaXZhdGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9y
dC1rZXktdW53cmFwLWp3ay1yc2Eta2V5LXB1YmxpYy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3Vi
dGxlL2Flcy1jYmMtaW1wb3J0LWtleS11bndyYXAtcGtjczgta2V5Lmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvYWVzLWNiYy1pbXBvcnQta2V5LXVud3JhcC1zcGtpLWtleS5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS13cmFwLWp3ay1yc2Eta2V5LXBy
aXZhdGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9ydC1rZXktd3Jh
cC1qd2stcnNhLWtleS1wdWJsaWMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9hZXMtY2Jj
LWltcG9ydC1rZXktd3JhcC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9h
ZXMtY2JjLWltcG9ydC1rZXktd3JhcC1zcGtpLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3Vi
dGxlL2Flcy1leHBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KKyMg
Q3J5cHRzIG90aGVyIHRoYW4gQUVTIGFuZCBSU0EgYXJlIG5vdCBzdXBwb3J0ZWQuCiBjcnlwdG8v
c3VidGxlL2Flcy1nY20taW1wb3J0LWtleS11bndyYXAtZWMtcmF3LWtleS5odG1sIFsgU2tpcCBd
Ci1jcnlwdG8vc3VidGxlL2Flcy1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwg
WyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvZGVjcnlwdC1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1s
IFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2Rlcml2ZS1iaXRzLW1hbGZvcm1lZC1wYXJhbWV0ZXJz
Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZGVyaXZlLWtleS1tYWxmb3JtZWQtcGFyYW1l
dGVycy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2RpZ2VzdC1tYWxmb3JtZWQtcGFyYW1l
dGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2VjZGgtZGVyaXZlLWJpdHMtbGVuZ3Ro
LWxpbWl0cy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2VjZGgtZGVyaXZlLWJpdHMtbWFs
Zm9ybWVkLXBhcmFtZXRycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2VjZGgtZ2VuZXJh
dGUtZXhwb3J0LWp3ay1rZXktcDI1Ni5odG1sIFsgU2tpcCBdCkBAIC04NDMsMTQ2ICs4MzEsNDYg
QEAgY3J5cHRvL3N1YnRsZS9lYy1pbXBvcnQtc3BraS1rZXktZXhwb3J0LXJhdy1rZXkuaHRtbCBb
IFNraXAgXQogY3J5cHRvL3N1YnRsZS9lYy1pbXBvcnQtc3BraS1rZXktZXhwb3J0LXNwa2kta2V5
LXAyNTYuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9lYy1pbXBvcnQtc3BraS1rZXktZXhw
b3J0LXNwa2kta2V5LXAzODQuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9lYy1pbXBvcnQt
c3BraS1rZXktZXhwb3J0LXNwa2kta2V5LXA1MjEuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9lbmNyeXB0LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvZXhwb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8v
c3VidGxlL2djLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZ2MtMi5odG1sIFsgU2tpcCBd
CiBjcnlwdG8vc3VidGxlL2djLTMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9nZW5lcmF0
ZS1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9o
a2RmLWRlcml2ZS1iaXRzLWxlbmd0aC1saW1pdHMuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRs
ZS9oa2RmLWRlcml2ZS1iaXRzLW1hbGZvcm1lZC1wYXJhbWV0cnMuaHRtbCBbIFNraXAgXQogY3J5
cHRvL3N1YnRsZS9oa2RmLWltcG9ydC1rZXkuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9o
a2RmLWltcG9ydC1rZXktZGVyaXZlLWJpdHMuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9o
a2RmLWltcG9ydC1rZXktZGVyaXZlLWhtYWMta2V5Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0
bGUvaGtkZi1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvaW1wb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBd
CiBjcnlwdG8vc3VidGxlL3Bia2RmMi1kZXJpdmUtYml0cy1tYWxmb3JtZWQtcGFyYW1ldHJzLmh0
bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcGJrZGYyLWltcG9ydC1rZXkuaHRtbCBbIFNraXAg
XQogY3J5cHRvL3N1YnRsZS9wYmtkZjItaW1wb3J0LWtleS1kZXJpdmUtYml0cy5odG1sIFsgU2tp
cCBdCiBjcnlwdG8vc3VidGxlL3Bia2RmMi1pbXBvcnQta2V5LWRlcml2ZS1obWFjLWtleS5odG1s
IFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3Bia2RmMi1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJh
bWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1nZW5l
cmF0ZS1leHBvcnQta2V5LWp3ay5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYWVzLXBr
Y3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1wa2NzOC5odG1sIFsgU2tpcCBdCi1jcnlwdG8v
c3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1zcGtpLmh0bWwgWyBT
a2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1nZW5lcmF0ZS1rZXkuaHRtbCBb
IFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81LWdlbmVyYXRlLWtleS1lbmNy
eXB0LWRlY3J5cHQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81
LWdlbmVyYXRlLWtleS1leHRyYWN0YWJsZS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3Jz
YWVzLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wcml2YXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wdWJsaWMta2V5Lmh0bWwgWyBT
a2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1r
ZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEt
djFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktbGVhZGluZy16ZXJvLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktbWluaW11
bS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0LWp3
ay1wdWJsaWMta2V5LW5vbi1leHRyYWN0YWJsZS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxl
L3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0LWtleS1kZWNyeXB0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBvcnQta2V5LWVuY3J5cHQuaHRtbCBbIFNraXAg
XQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81LWltcG9ydC1wa2NzOC1rZXkuaHRtbCBb
IFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81LWltcG9ydC1zcGtpLWtleS5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0LXNwa2kt
a2V5LWVtcHR5LXVzYWdlcy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1leHBvcnQt
a2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNh
LWdlbmVyYXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsgU2tpcCBdCi1jcnlwdG8v
c3VidGxlL3JzYS1pbXBvcnQtandrLWtleS1leHBvcnQtandrLWtleS1wcml2YXRlLmh0bWwgWyBT
a2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1qd2sta2V5LWV4cG9ydC1qd2sta2V5LXB1
YmxpYy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQtandrLWtleS1leHBv
cnQtcGtjczgta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1qd2st
a2V5LWV4cG9ydC1zcGtpLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1pbXBv
cnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
cnNhLWltcG9ydC1wa2NzOC1rZXktZXhwb3J0LWp3ay1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRv
L3N1YnRsZS9yc2EtaW1wb3J0LXBrY3M4LWtleS1leHBvcnQtcGtjczgta2V5Lmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1zcGtpLWtleS1leHBvcnQtandrLWtleS5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQtc3BraS1rZXktZXhwb3J0LXNwa2kt
a2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1zcGtpLXNtYWxsLWtl
eS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGIuaHRtbCBbIFNraXAg
XQogY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLmh0bWwgWyBTa2lw
IF0KIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS1wcml2YXRlLmh0
bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1wcml2YXRlLmh0bWwgWyBT
a2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZGVjcnlwdC1tYWxmb3JtZWQtcGFyYW1ldGVy
cy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWVuY3J5cHQtbWFsZm9ybWVk
LXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0
ZS1leHBvcnQta2V5LWp3ay1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9h
ZXAtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMjI0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMjU2Lmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMzg0
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUtZXhwb3J0LWtl
eS1qd2stc2hhNTEyLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJh
dGUtZXhwb3J0LWtleS1wa2NzOC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVw
LWdlbmVyYXRlLWV4cG9ydC1rZXktc3BraS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3Jz
YS1vYWVwLWdlbmVyYXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVw
LWdlbmVyYXRlLWtleS1lbmNyeXB0LWRlY3J5cHQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2Etb2FlcC1nZW5lcmF0ZS1rZXktZW5jcnlwdC1kZWNyeXB0LWxhYmVsLmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wcml2YXRlLWtleS5odG1sIFsg
U2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1qd2stcHVibGljLWtleS1lbXB0
eS11c2FnZXMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQtandr
LXB1YmxpYy1rZXktc2hhMS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWlt
cG9ydC1qd2stcHVibGljLWtleS1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2Etb2FlcC1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMjU2Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTM4NC5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1qd2stcHVibGljLWtleS1zaGE1MTIu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQta2V5LWRlY3J5cHQu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQta2V5LWRlY3J5cHQt
bGFiZWwuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQta2V5LWVu
Y3J5cHQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQta2V5LWVu
Y3J5cHQtbGFiZWwuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1pbXBvcnQt
a2V5LXVud3JhcC1qd2stb2N0LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1v
YWVwLWltcG9ydC1rZXktd3JhcC1qd2stb2N0LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3Vi
dGxlL3JzYS1vYWVwLWltcG9ydC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2Etb2FlcC1pbXBvcnQtc3BraS1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2Etb2FlcC1pbXBvcnQtc3BraS1rZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhLW9hZXAtcGxhaW50ZXh0LWxlbmd0aC5odG1sIFsgU2tpcCBdCi1jcnlwdG8v
c3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMS5odG1sIFsgU2tpcCBd
Ci1jcnlwdG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMjI0Lmh0
bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LWp3
ay1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4
cG9ydC1rZXktandrLXNoYTM4NC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3Mt
Z2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhNTEyLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LXBrY3M4Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LXNwa2kuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8v
c3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wcml2YXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LWVtcHR5LXVzYWdlcy5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNo
YTEuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1qd2stcHVibGlj
LWtleS1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1q
d2stcHVibGljLWtleS1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNz
LWltcG9ydC1qd2stcHVibGljLWtleS1zaGEzODQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2EtcHNzLWltcG9ydC1qd2stcHVibGljLWtleS1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5
cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1rZXktc2lnbi5odG1sIFsgU2tpcCBdCi1jcnlwdG8v
c3VidGxlL3JzYS1wc3MtaW1wb3J0LWtleS1zaWduLWxhcmdlLXNhbHQuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1rZXktdmVyaWZ5Lmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtcGtjczgta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtc3BraS1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1
YnRsZS9yc2EtcHNzLWltcG9ydC1zcGtpLWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1z
aGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJh
dGUtZXhwb3J0LWtleS1qd2stc2hhMjI0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNh
c3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMjU2Lmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1q
d2stc2hhMzg0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUt
Z2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhNTEyLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1wa2NzOC5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdlbmVyYXRlLWV4cG9ydC1rZXkt
c3BraS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdlbmVy
YXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdl
bmVyYXRlLWtleS1zaWduLXZlcmlmeS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNz
YS1wa2NzMS12MV81LWdlbmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3
ay1wcml2YXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12
MV81LWltcG9ydC1qd2stcHVibGljLWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFNraXAgXQotY3J5
cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMS5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2st
cHVibGljLWtleS1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtj
czEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMjU2Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTM4NC5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2st
cHVibGljLWtleS1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtj
czEtdjFfNS1pbXBvcnQta2V5LXNpZ24tc2hhMS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxl
L3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1rZXktc2lnbi1zaGEyMjQuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQta2V5LXNpZ24tc2hhMjU2Lmh0
bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS1z
aWduLXNoYTM4NC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81
LWltcG9ydC1rZXktc2lnbi1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fz
c2EtcGtjczEtdjFfNS1pbXBvcnQta2V5LXZlcmlmeS1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS12ZXJpZnktc2hhMjI0Lmh0bWwg
WyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS12ZXJp
Znktc2hhMjU2Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUt
aW1wb3J0LWtleS12ZXJpZnktc2hhMzg0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNh
c3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS12ZXJpZnktc2hhNTEyLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LXBrY3M4LWtleS5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1zcGtpLWtleS5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1zcGtpLWtl
eS1lbXB0eS11c2FnZXMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9zaGExLWRpZ2VzdC5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3NoYTIyNC1kaWdlc3QuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9zaGEyNTYtZGlnZXN0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
c2hhMzg0LWRpZ2VzdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3NoYTUxMi1kaWdlc3Qu
aHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9zaWduLW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0
bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvdW53cmFwLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVy
cy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3ZlcmlmeS1tYWxmb3JtZWQtcGFyYW1ldGVy
cy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3dyYXAta2V5LW1hbGZvcm1lZC1wYXJhbWV0
ZXJzLmh0bWwgWyBTa2lwIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQt
a2V5LWp3ay1zaGExLmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0
ZS1leHBvcnQta2V5LWp3ay1zaGEyMjQuaHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2Et
cHNzLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTI1Ni5odG1sIFsgUGFzcyBdCitjcnlwdG8v
c3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMzg0Lmh0bWwgWyBQYXNz
IF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGE1MTIu
aHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4cG9ydC1rZXkt
cGtjczguaHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4cG9y
dC1rZXktc3BraS5odG1sIFsgUGFzcyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUt
a2V5Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtandrLXByaXZh
dGUta2V5Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtandrLXB1
YmxpYy1rZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBz
cy1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMS5odG1sIFsgUGFzcyBdCitjcnlwdG8vc3VidGxl
L3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTIyNC5odG1sIFsgUGFzcyBdCitjcnlw
dG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTI1Ni5odG1sIFsgUGFz
cyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTM4NC5o
dG1sIFsgUGFzcyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5
LXNoYTUxMi5odG1sIFsgUGFzcyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWtleS1z
aWduLmh0bWwgWyBQYXNzIF0KKyMgTGFyZ2Ugc2FsdCBzaG91bGQgYmUgc3VwcG9ydGVkLgorY3J5
cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1rZXktc2lnbi1sYXJnZS1zYWx0Lmh0bWwgWyBGYWls
dXJlIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQta2V5LXZlcmlmeS5odG1sIFsgUGFz
cyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LXBrY3M4LWtleS5odG1sIFsgUGFzcyBd
CitjcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LXNwa2kta2V5Lmh0bWwgWyBQYXNzIF0KK2Ny
eXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtc3BraS1rZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBQ
YXNzIF0KIAogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNTY5
CiBjcnlwdG8vY3J5cHRvLXJhbmRvbS12YWx1ZXMtb29tLmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2NyeXB0by9zdWJ0bGUvcnNhLWdlbmVy
YXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW5jYWlyby9jcnlwdG8vc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9ybWVk
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAwNzE4NWJiOWYwOWMwY2I4ZDM3
YWVhZGE5MTEwY2FiNjMyYWU5YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW5jYWlyby9jcnlwdG8vc3VidGxlL3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9ybWVkLXBh
cmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDYgQEAKK1Rlc3QgZ2VuZXJhdGluZyBh
biBSU0Ega2V5IHdpdGggbWFsZm9ybWVkLXBhcmFtdGVycy4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSgiUlNBRVMtUEtDUzEt
djFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9t
aXNlICB3aXRoIFR5cGVFcnJvcjogTWVtYmVyIFJzYUtleUdlblBhcmFtcy5tb2R1bHVzTGVuZ3Ro
IGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIHVuc2lnbmVkIGxvbmcuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81In0s
IGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIFR5cGVFcnJvcjogTWVtYmVyIFJzYUtleUdlblBhcmFtcy5tb2R1bHVzTGVuZ3RoIGlzIHJl
cXVpcmVkIGFuZCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIHVuc2lnbmVkIGxvbmcuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1
c0xlbmd0aDogdW5kZWZpbmVkLCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnR9LCBleHRy
YWN0YWJsZSwgWyJlbmNyeXB0IiwgImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBU
eXBlRXJyb3I6IE1lbWJlciBSc2FLZXlHZW5QYXJhbXMubW9kdWx1c0xlbmd0aCBpcyByZXF1aXJl
ZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiB1bnNpZ25lZCBsb25nLgorUEFTUyBjcnlwdG8u
c3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5n
dGg6IFN5bWJvbCgpLCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnR9LCBleHRyYWN0YWJs
ZSwgWyJlbmNyeXB0IiwgImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJy
b3I6IENhbm5vdCBjb252ZXJ0IGEgc3ltYm9sIHRvIGEgbnVtYmVyLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6
IDIwNDgsIHB1YmxpY0V4cG9uZW50OiAxfSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJkZWNy
eXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1v
ZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiB0cnVlfSwgZXh0cmFjdGFibGUsIFsi
ZW5jcnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9yOiBU
eXBlIGVycm9yLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMt
UEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBudWxsfSwg
ZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5
KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4
cG9uZW50OiB1bmRlZmluZWR9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgImRlY3J5cHQiXSkg
cmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IE1lbWJlciBSc2FLZXlHZW5QYXJhbXMu
cHVibGljRXhwb25lbnQgaXMgcmVxdWlyZWQgYW5kIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgVWlu
dDhBcnJheS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBL
Q1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogeyB9fSwgZXh0
cmFjdGFibGUsIFsiZW5jcnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtu
YW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9u
ZW50OiBTeW1ib2woKX0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWpl
Y3RlZCBwcm9taXNlICB3aXRoIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY3J5cHRvLnN1
YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3Ro
OiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogImZvbyJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Iiwg
ImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
CitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81
IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IFsgXX0sIGV4dHJhY3RhYmxl
LCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFR5cGVFcnJv
cjogVHlwZSBlcnJvci4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJT
QVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IHB1
YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsic2lnbiIsICJ2ZXJpZnkiXSkgcmVqZWN0ZWQg
cHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IE1lbWJlciBSc2FIYXNoZWRLZXlHZW5QYXJhbXMuaGFz
aCBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiAob2JqZWN0IG9yIERPTVN0
cmluZykuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0EtT0FFUCIs
IG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4
dHJhY3RhYmxlLCBbImRlY3J5cHQiLCAiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRo
IFR5cGVFcnJvcjogTWVtYmVyIFJzYUhhc2hlZEtleUdlblBhcmFtcy5oYXNoIGlzIHJlcXVpcmVk
IGFuZCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIChvYmplY3Qgb3IgRE9NU3RyaW5nKS4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1
bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnR9LCBleHRyYWN0
YWJsZSwgWyJzaWduIl0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVx
dWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRv
LnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVu
Z3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnR9LCBleHRyYWN0YWJsZSwg
WyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJl
ZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6
IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4dHJhY3RhYmxlLCBbImRl
cml2ZUtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVk
IHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0
bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDog
MjA0OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsiZGVy
aXZlQml0cyJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVk
IHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0
bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDog
MjA0OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsid3Jh
cEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBh
cmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUu
Z2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0
OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsidW53cmFw
S2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFy
YW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5n
ZW5lcmF0ZUtleSh7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0
OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFj
dGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIG1vZHVs
dXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNo
YS0xIn0sIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBT
eW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJh
bmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBU1NBLVBLQ1Mx
LXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25l
bnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVLZXkiXSkgcmVqZWN0ZWQg
cHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Np
bmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1l
OiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVu
dDogcHVibGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVC
aXRzIl0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFy
YW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5n
ZW5lcmF0ZUtleSh7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0
OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFj
dGFibGUsIFsid3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIG1vZHVs
dXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNo
YS0xIn0sIGV4dHJhY3RhYmxlLCBbInVud3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRo
IFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2Yt
cmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0EtT0FFUCIs
IG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFz
aDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInNpZ24iXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9m
LXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLU9BRVAi
LCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnQsIGhh
c2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0
LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLU9B
RVAiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnQs
IGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVLZXkiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcg
b3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAi
UlNBLU9BRVAiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhw
b25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVCaXRzIl0pIHJlamVj
dGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBt
aXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7
bmFtZTogIlJTQS1QU1MiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVi
bGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJl
amVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdh
cyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtl
eSh7bmFtZTogIlJTQS1QU1MiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDog
cHVibGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0
ZUtleSh7bmFtZTogIlJTQS1QU1MiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVu
dDogcHVibGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVL
ZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJh
bWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdl
bmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBTUyIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4
cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImRl
cml2ZUJpdHMiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJl
ZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBTUyIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1
YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxl
LCBbIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1
aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8u
c3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBTUyIsIG1vZHVsdXNMZW5ndGg6IDIwNDgs
IHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3Rh
YmxlLCBbInVud3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIG1vZHVs
dXNMZW5ndGg6IDAsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0x
In0sIGV4dHJhY3RhYmxlLCBbInNpZ24iLCAidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggT3BlcmF0aW9uRXJyb3I6IFRoZSBvcGVyYXRpb24gZmFpbGVkIGZvciBhbiBvcGVyYXRpb24t
c3BlY2lmaWMgcmVhc29uLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2Ny
eXB0by9zdWJ0bGUvcnNhLWltcG9ydC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vY3J5cHRvL3N1YnRsZS9yc2EtaW1w
b3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjQx
NjNlZWQzOTIxOTAwMTgxY2ZhMjZhYmUzNjM0ZTY3YWQ4MjkzYgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2NyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1r
ZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOTQgQEAKK1Rl
c3QgaW1wb3J0aW5nIGEgUlNBIGtleSB3aXRoIG1hbGZvcm1lZCBwYXJhbWV0ZXJzCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJq
d2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZX0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFj
dGFibGUsIFsiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDog
ZH0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlz
c2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogIiJ9LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4
dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJv
cjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFT
UyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGV9
LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxl
LCBbInNpZ24iXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJl
ZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGQ6IGR9LCB7bmFt
ZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZl
cmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBh
cmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogIiJ9LCB7bmFtZTog
IlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZlcmlm
eSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFt
ZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZX0sIHtuYW1lOiAiUlNBLU9BRVAi
LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsiZGVjcnlwdCIsICJ1bndyYXBLZXkiXSkg
cmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIg
d2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtl
eSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGQ6IGR9LCB7bmFtZTogIlJTQS1PQUVQ
IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSBy
ZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3
YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogIiJ9LCB7bmFtZTogIlJTQS1PQUVQ
IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSBy
ZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3
YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZX0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6
ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJzaWduIl0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
U3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1y
YW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBu
OiBuLCBlOiBlLCBkOiBkfSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0xIn0sIGV4dHJh
Y3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDog
IiJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVy
aWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFy
YW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5p
bXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCB1c2U6ICJzaWcifSwgIlJT
QUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21p
c2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5v
dCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIs
IHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCB1c2U6ICIifSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBl
eHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9y
OiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50
cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBu
LCBlOiBlLCB1c2U6ICJlbmMifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJz
aGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBE
YXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVx
dWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJT
QSIsIG46IG4sIGU6IGUsIHVzZTogIiJ9LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFz
aDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVl
dCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5
OiAiUlNBIiwgbjogbiwgZTogZSwgdXNlOiAic2lnIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNo
OiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBk
b2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCB1c2U6ICIifSwge25hbWU6ICJSU0EtT0FF
UCIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkg
cmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3Bl
cmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIHVzZTogImVuYyJ9LCB7bmFt
ZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJl
amVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJh
dGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBv
cnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCB1c2U6ICIifSwge25hbWU6ICJS
U0EtUFNTIiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24g
ZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiZm9vIn0sICJSU0FFUy1QS0NT
MS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRo
IERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCBy
ZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAi
UlNBIiwgbjogbiwgZTogZSwgYWxnOiAiIn0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFi
bGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBw
cm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNT
IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwg
YWxnOiAiUlMyMjQifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJzaGEtMSJ9
LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJy
b3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1l
bnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46
IG4sIGU6IGUsIGFsZzogIlJTMjU2In0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNo
OiAic2hhLTIyNCJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1l
ZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0
eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIlJTMzg0In0sIHtuYW1lOiAiUlNBU1NBLVBLQ1Mx
LXYxXzUiLCBoYXNoOiAic2hhLTI1NiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0
ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9u
IGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtl
eSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIlJTNTEyIn0sIHtuYW1lOiAi
UlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTM4NCJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJp
ZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8g
YW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIlJTMSJ9
LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS01MTIifSwgZXh0cmFjdGFi
bGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHBy
b3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBh
bGc6ICIifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJzaGEtMSJ9LCBleHRy
YWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERh
dGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgor
UEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6
IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0yMjQi
fSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVy
cm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVt
ZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBu
OiBuLCBlOiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJz
aGEtMjU2In0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRo
IERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCBy
ZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAi
UlNBIiwgbjogbiwgZTogZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBo
YXNoOiAic2hhLTM4NCJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlz
ZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90
IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwg
e2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12
MV81IiwgaGFzaDogInNoYS01MTIifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBk
b2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6ICJSU0EtT0FFUC0yMjQifSwge25h
bWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Iiwg
IndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlk
ZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlw
dG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzog
IlJTQS1PQUVQLTI1NiJ9LCB7bmFtZTogIlJTQS1PQUVQIiwgaGFzaDogInNoYS0yMjQifSwgZXh0
cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
RGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJl
cXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJS
U0EiLCBuOiBuLCBlOiBlLCBhbGc6ICJSU0EtT0FFUC0zODQifSwge25hbWU6ICJSU0EtT0FFUCIs
IGhhc2g6ICJzaGEtMjU2In0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSBy
ZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVy
YXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiUlNBLU9BRVAtNTEy
In0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTM4NCJ9LCBleHRyYWN0YWJsZSwgWyJl
bmNyeXB0IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERh
dGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgor
UEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6
IGUsIGFsZzogIlJTQS1PQUVQIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTUxMiJ9
LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1l
ZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0
eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJTQS1PQUVQIiwgaGFzaDog
InNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSByZWplY3RlZCBw
cm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9l
cyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJq
d2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBLU9BRVAi
LCBoYXNoOiAic2hhLTIyNCJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkg
cmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3Bl
cmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTog
IlJTQS1PQUVQIiwgaGFzaDogInNoYS0yNTYifSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3
cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVk
IHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRv
LnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6ICIi
fSwge25hbWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtMzg0In0sIGV4dHJhY3RhYmxlLCBbImVu
Y3J5cHQiLCAid3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0
YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTog
ZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTUxMiJ9LCBleHRyYWN0
YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIGFsZzogIlBTMjI0In0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEt
MSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIGFsZzogIlBTMjU2In0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEt
MjI0In0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERh
dGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1
aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNB
IiwgbjogbiwgZTogZSwgYWxnOiAiUFMzODQifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNo
YS0yNTYifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
RGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJl
cXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJS
U0EiLCBuOiBuLCBlOiBlLCBhbGc6ICJQUzUxMiJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAi
c2hhLTM4NCJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQg
cmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTog
IlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIlBTMSJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAi
c2hhLTUxMiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQg
cmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTog
IlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hh
LTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0
YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVp
cmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0Ei
LCBuOiBuLCBlOiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0yMjQi
fSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVy
cm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVt
ZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBu
OiBuLCBlOiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0yNTYifSwg
ZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9y
OiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50
cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBu
LCBlOiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0zODQifSwgZXh0
cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBE
YXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4K
K1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBl
OiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS01MTIifSwgZXh0cmFj
dGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRh
IHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BB
U1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJvY3QiLCBuOiBuLCBlOiBl
fSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBk
b2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBrZXlfb3BzOiBbInNpZ24iLCAidmVyaWZ5
Il19LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0
ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9u
IGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtl
eSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGtleV9vcHM6IFsgXX0sICJSU0FFUy1Q
S0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVl
dCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5
OiAiUlNBIiwgbjogbiwgZTogZSwgZXh0OiBmYWxzZX0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0
cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjog
RGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMu
CitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIn0sICJSU0FF
Uy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNl
ICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3Qg
bWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7
a3R5OiAiUlNBIiwgbjogbn0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5j
cnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0
byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5z
dWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgZTogZX0sICJSU0FFUy1QS0NTMS12
MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERh
dGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1
aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNB
IiwgbjogbiwgZTogZSwgZDogZH0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsi
ZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRl
ZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogZCwg
cDogcCwgcTogcSwgZHA6IGRwLCBkcTogZHEsIHFpOiBxaSwgb3RoOiBbe3I6IHEsIGQ6IGRxLCB0
OiBxaX1dfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJl
amVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJh
dGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBv
cnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkLCBxOiBxLCBkcDogZHAs
IGRxOiBkcSwgcWk6IHFpfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNy
eXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRv
IGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1
YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkLCBwOiBw
LCBkcDogZHAsIGRxOiBkcSwgcWk6IHFpfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJs
ZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHBy
b3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBk
OiBkLCBwOiBwLCBxOiBxLCBkcTogZHEsIHFpOiBxaX0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0
cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjog
RGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMu
CitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwg
ZTogZSwgZDogZCwgcDogcCwgcTogcSwgZHA6IGRwLCBxaTogcWl9LCAiUlNBRVMtUEtDUzEtdjFf
NSIsIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIGQ6IGQsIHA6IHAsIHE6IHEsIGRwOiBkcCwgZHE6IGRxfSwgIlJTQUVTLVBL
Q1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0
IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6
ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkLCBwOiAiIiwgcTogcSwgZHA6IGRwLCBkcTogZHEsIHFp
OiBxaX0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWpl
Y3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRp
b24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJzcGtpIiwgc3BraUtleSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJk
ZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQg
cGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRs
ZS5pbXBvcnRLZXkoInNwa2kiLCBzcGtpS2V5LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81Iiwg
aGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInNpZ24iXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0
LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgic3BraSIsIHNwa2lLZXks
IHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsiZGVjcnlw
dCIsICJ1bndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSBy
ZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlw
dG8uc3VidGxlLmltcG9ydEtleSgic3BraSIsIHNwa2lLZXksIHtuYW1lOiAiUlNBLVBTUyIsIGhh
c2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJzaWduIl0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1v
Zi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgcGtjczhLZXks
ICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBw
cm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2lu
ZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJwa2NzOCIs
IHBrY3M4S2V5LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4
dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9y
OiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNT
IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJwa2NzOCIsIHBrY3M4S2V5LCB7bmFtZTogIlJTQS1P
QUVQIiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJd
KSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRl
ciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJwa2NzOCIsIHBrY3M4S2V5LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTEifSwg
ZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJy
b3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BB
U1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInNwa2kiLCBtYWxmb3JtZWRLZXkwLCAiUlNBRVMt
UEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1l
ZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgic3BraSIsIG1h
bGZvcm1lZEtleTEsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJd
KSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBv
cGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJzcGtpIiwgbWFsZm9ybWVkS2V5MiwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRy
YWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBE
YXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4K
K1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInNwa2kiLCBtYWxmb3JtZWRLZXk0LCAiUlNB
RVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlz
ZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90
IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgic3BraSIs
IG1hbGZvcm1lZEtleTYsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlw
dCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBh
biBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0
bGUuaW1wb3J0S2V5KCJwa2NzOCIsIG1hbGZvcm1lZEtleTAsICJSU0FFUy1QS0NTMS12MV81Iiwg
ZXh0cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJv
cjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVu
dHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJwa2NzOCIsIG1hbGZvcm1lZEtleTEs
ICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWplY3RlZCBw
cm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9l
cyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJw
a2NzOCIsIG1hbGZvcm1lZEtleTMsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsi
ZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRl
ZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJwa2NzOCIsIG1hbGZvcm1lZEtleTUsICJSU0FFUy1QS0NTMS12
MV81IiwgZXh0cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERh
dGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1
aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJwa2NzOCIsIG1hbGZvcm1l
ZEtleTcsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZGVjcnlwdCJdKSByZWpl
Y3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRp
b24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdl
TG9nCmluZGV4IDgxODM5OGIzMGRkYTY5ZDU1ZmMyZjc5MjczNDMzYTFjNTM3YmNjNDYuLjhlYjIy
NThiMzM1MDk4YmFjZjBiN2ViYzBjZDg0MDhiMzMyNWRkNGIgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxv
ZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAyMS0wNS0wNSAgWW9zaGlha2kg
Sml0c3VrYXdhICA8eW9zaGlha2kuaml0c3VrYXdhQHNvbnkuY29tPgorCisgICAgICAgIFtPcGVu
U1NMXSBJbXBsZW1lbnQgQ3J5cHRvQWxnb3JpdGhtUlNBKgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1Mjk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IFJTQSBmb3IgT3BlblNTTC4KKwor
ICAgICAgICBJbXBsZW1lbnQgQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVAsIENyeXB0b0FsZ29yaXRo
bVJTQV9QU1MsCisgICAgICAgIENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzUsIENyeXB0
b0FsZ29yaXRobVJTQVNBX1BLQ1MxX3YxXzUsCisgICAgICAgIGFuZCBDcnlwdG9LZXlSU0EgZm9y
IE9wZW5TU0wuCisKKyAgICAgICAgTm90ZSB0aGF0IGlmIHN1Y2ggT3BlblNTTCB2ZXJzaW9uIHRo
YXQgZG9lcyBub3Qgc3VwcG9ydCBSU0FfT0FFUCBvcgorICAgICAgICBSU0FfUFNTLCB0aGUgV2Vi
Q3J5cHRvIEFQSSBmb3IgdGhvc2UgYWxnb3JpdGhtIHdpbGwgcmV0dXJuIGEKKyAgICAgICAgTm90
U3VwcG9ydGVkRXJyb3IuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc1BsYXlTdGF0
aW9uLmNtYWtlOgorICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zV2luQ2Fpcm8uY21ha2U6
CisKIDIwMjEtMDQtMjcgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAog
ICAgICAgICBbQ01ha2VdIERvbid0IHVzZSBGT1JXQVJESU5HX0hFQURFUlNfRElSIGZvciBHVEsg
V2ViS2l0IGhlYWRlcnMK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427871</attachid>
            <date>2021-05-06 04:50:47 -0700</date>
            <delta_ts>2021-05-06 17:17:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225294-20210506205046.patch</filename>
            <type>text/plain</type>
            <size>93533</size>
            <attacher name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2Njk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDM3ZGRkMzY1MzM0NmQ0YzRmODM0YmM1
NzJhOTczOTIwYzRmODljYjQuLjJjMDZlODNhZmVlNDU1Yzk0OTI5NzQ3OTMwY2I5MzY5MDg0ZmM1
NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDUtMDUgIFlvc2hpYWtpIEppdHN1a2F3YSAg
PHlvc2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAgICAgICBbT3BlblNTTF0gSW1wbGVt
ZW50IENyeXB0b0FsZ29yaXRobVJTQSoKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTI5NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEltcGxlbWVudCBSU0EgZm9yIE9wZW5TU0wuCisKKyAgICAgICAgSW1w
bGVtZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLCBDcnlwdG9BbGdvcml0aG1SU0FfUFNTLAor
ICAgICAgICBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LCBDcnlwdG9BbGdvcml0aG1S
U0FTQV9QS0NTMV92MV81LAorICAgICAgICBhbmQgQ3J5cHRvS2V5UlNBIGZvciBPcGVuU1NMLgor
CisgICAgICAgIE5vdGUgdGhhdCBpZiBzdWNoIE9wZW5TU0wgdmVyc2lvbiB0aGF0IGRvZXMgbm90
IHN1cHBvcnQgUlNBX09BRVAgb3IKKyAgICAgICAgUlNBX1BTUywgdGhlIFdlYkNyeXB0byBBUEkg
Zm9yIHRob3NlIGFsZ29yaXRobSB3aWxsIHJldHVybiBhCisgICAgICAgIE5vdFN1cHBvcnRlZEVy
cm9yLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6IFNldCBIQVZFX1JTQV9QU1MgZm9yIFVT
RShPUEVOU1NMKQorCiAyMDIxLTA0LTI4ICBEYW5pZWwgS29sZXNhICA8ZGtvbGVzYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtXUEVdW0dUS10gTW9yZSBjb3JyZWN0IGZpeGVzIGZvciBzdGFjayBz
aXplIGlzc3VlcyBvbiBtdXNsIGxpYmMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkNjg0OWFlYzVhMGQwN2I4NDJh
MDI3Nzg0OTQwNGYzNDBiNDNmNmYxLi5jNDg5NzAyMzE0N2ZlYWY3NjYzNTcxMjVhMGNiZjYwMzE0
ZGQxMWFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzggQEAKKzIwMjEtMDUtMDUgIFlvc2hpYWtp
IEppdHN1a2F3YSAgPHlvc2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAgICAgICBbT3Bl
blNTTF0gSW1wbGVtZW50IENyeXB0b0FsZ29yaXRobVJTQSoKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTI5NAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBSU0EgZm9yIE9wZW5TU0wuCisK
KyAgICAgICAgSW1wbGVtZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLCBDcnlwdG9BbGdvcml0
aG1SU0FfUFNTLAorICAgICAgICBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LCBDcnlw
dG9BbGdvcml0aG1SU0FTQV9QS0NTMV92MV81LAorICAgICAgICBhbmQgQ3J5cHRvS2V5UlNBIGZv
ciBPcGVuU1NMLgorCisgICAgICAgIE5vdGUgdGhhdCBpZiBzdWNoIE9wZW5TU0wgdmVyc2lvbiB0
aGF0IGRvZXMgbm90IHN1cHBvcnQgUlNBX09BRVAgb3IKKyAgICAgICAgUlNBX1BTUywgdGhlIFdl
YkNyeXB0byBBUEkgZm9yIHRob3NlIGFsZ29yaXRobSB3aWxsIHJldHVybiBhCisgICAgICAgIE5v
dFN1cHBvcnRlZEVycm9yLgorCisgICAgICAgIEFsc28gbm90ZSB0aGF0IE9wZW5TU0wgYWNjZXB0
cyBSU0FfUFNTIHNhbHQgbGVuZ3RoIGxvbmdlciB0aGFuIHRoZSBoYXNoCisgICAgICAgIGxlbmd0
aC4gVGhpcyBtYWtlcyB0aGUKKyAgICAgICAgY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1r
ZXktc2lnbi1sYXJnZS1zYWx0Lmh0bWwgdGVzdCBmYWlsLgorCisgICAgICAgIFRlc3Q6IEV4aXN0
aW5nIGNyeXB0by9zdWJ0bGUgdGVzdHMKKworICAgICAgICAqIGNyeXB0by9rZXlzL0NyeXB0b0tl
eVJTQS5oOiBVc2UgdGhlIEVWUF9QS0VZIHN0cnVjdCBmb3IgdGhlIHBsYXRmb3JtCisgICAgICAg
IGtleS4KKyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1ITUFDT3BlblNT
TC5jcHA6IE1vdmUgSE1BQ0FsZ29yaXRobSgpCisgICAgICAgIHRvIE9wZW5TU0xVdGlsaXRpZXMg
YXMgRGlnZXN0QWxnb3JpdGhtKCkuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxn
b3JpdGhtUlNBRVNfUEtDUzFfdjFfNU9wZW5TU0wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3J5
cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNTo6cGxhdGZvcm1FbmNyeXB0KToKKyAgICAgICAg
SW1wbGVtZW50ZWQuCisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NT
MV92MV81OjpwbGF0Zm9ybURlY3J5cHQpOgorICAgICAgICBJbXBsZW1lbnRlZC4KKyAgICAgICAg
KiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNU9wZW5TU0wu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6
OnBsYXRmb3JtU2lnbik6CisgICAgICAgIEltcGxlbWVudGVkLgorICAgICAgICAoV2ViQ29yZTo6
Q3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6OnBsYXRmb3JtVmVyaWZ5KToKKyAgICAg
ICAgSW1wbGVtZW50ZWQuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGht
UlNBX09BRVBPcGVuU1NMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0FsZ29yaXRobVJT
QV9PQUVQOjpwbGF0Zm9ybUVuY3J5cHQpOiBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNyeXB0b0FsZ29yaXRobVJTQV9PQUVQOjpwbGF0Zm9ybURlY3J5cHQpOiBJbXBsZW1lbnRlZC4K
KyAgICAgICAgKiBjcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FfUFNTT3BlblNTTC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9BbGdvcml0aG1SU0FfUFNTOjpwbGF0Zm9ybVNp
Z24pOiBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0FsZ29yaXRobVJTQV9Q
U1M6OnBsYXRmb3JtVmVyaWZ5KTogSW1wbGVtZW50ZWQuCisgICAgICAgICogY3J5cHRvL29wZW5z
c2wvQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpwbGF0Zm9ybVJlZ2lzdGVyQWxnb3JpdGhtcyk6Cisg
ICAgICAgIFJlZ2lzdGVyZWQgUlNBRVNfUEtDUzFfdl8xXzUsIFJTQVNTQV9QS0NTMV92MV81LCBS
U0FfT0FFUCwgYW5kIFJTQV9QU1MuCisgICAgICAgICogY3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5
UlNBT3BlblNTTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRSU0FNb2R1bHVzTGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRUb0J5dGVzKToKKyAgICAgICAgKFdlYkNvcmU6OmNv
bnZlcnRUb0JpZ051bWJlcik6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OkNyeXB0b0tleVJTQSk6CisgICAg
ICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmlzUmVzdHJpY3RlZFRvSGFzaCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmtleVNpemVJbkJpdHMgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6ZXhwb25lbnRWZWN0b3JUb1VJbnQzMik6CisgICAgICAgIChXZWJDb3Jl
OjpDcnlwdG9LZXlSU0E6OmdlbmVyYXRlUGFpcik6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9L
ZXlSU0E6OmltcG9ydFNwa2kpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjppbXBv
cnRQa2NzOCk6CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmV4cG9ydFNwa2kgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5UlNBOjpleHBvcnRQa2NzOCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmFsZ29yaXRobSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpDcnlwdG9LZXlSU0E6OmV4cG9ydERhdGEgY29uc3QpOgorICAgICAgICAq
IGNyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlwdG9VbmlxdWVQdHIuaDoKKyAgICAgICAgKFdlYkNv
cmU6Ok9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPEVWUF9QS0VZX0NUWD46Om9wZXJhdG9yKCkgY29u
c3QpOgorICAgICAgICBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok9wZW5TU0xDcnlwdG9QdHJE
ZWxldGVyPFJTQT46Om9wZXJhdG9yKCkgY29uc3QpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
Ok9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPFBLQ1M4X1BSSVZfS0VZX0lORk8+OjpvcGVyYXRvcigp
IGNvbnN0KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpPcGVuU1NMQ3J5cHRvUHRyRGVsZXRl
cjxCSUdOVU0+OjpvcGVyYXRvcigpIGNvbnN0KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpP
cGVuU1NMQ3J5cHRvUHRyRGVsZXRlcjxCTl9DVFg+OjpvcGVyYXRvcigpIGNvbnN0KTogQWRkZWQu
CisgICAgICAgICogY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpkaWdlc3RBbGdvcml0aG0pOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmNh
bGN1bGF0ZURpZ2VzdCk6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9vcGVuc3NsL09wZW5TU0xV
dGlsaXRpZXMuaDogCisgICAgICAgICogcGxhdGZvcm0vT3BlblNTTC5jbWFrZToKKwogMjAyMS0w
NC0yOCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbc2VsZWN0b3JzXSBVc2luZyBhIG1vZGlmaWVyIGtleSBvbiBhbiBlbGVtZW50IG1ha2VzIGl0
IHN0b3AgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCmluZGV4IDZmYTEwNGM4Mjk5
MmJkYWY2ZTU2YTMyYjM0NDQ1YmQxMWJkMTJkZmQuLjkwODBlOThkYTRjNDEyYmIzZDc3YjEwMWZh
ODRhZWNmZjc1ZmM3NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgKKysr
IGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaApAQCAtMTQ4LDcgKzE0OCw3IEBACiAjZW5kaWYK
IAogLyogRklYTUU6IFRoZSBhdmFpbGFiaWxpdHkgb2YgUlNBX1BTUyBzaG91bGQgbm90IGRlcGVu
ZCBvbiB0aGUgcG9saWN5IGRlY2lzaW9uIHRvIFVTRShHQ1JZUFQpLiAqLwotI2lmIFBMQVRGT1JN
KE1BQykgfHwgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkgfHwgVVNFKEdD
UllQVCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFD
Q0FUQUxZU1QpIHx8IFVTRShHQ1JZUFQpIHx8IFVTRShPUEVOU1NMKQogI2RlZmluZSBIQVZFX1JT
QV9QU1MgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9rZXlz
L0NyeXB0b0tleVJTQS5oIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNB
LmgKaW5kZXggYzQ5ZmU2OGRmODJjMDAzYTZlYzNmOWZjYjNkOWFiNmU1YzBjNmNkYy4uZWU5MzZl
YWFhN2I1OTk2MWVmZjFjYTk2YjFmZDI3MDViZTZlZjAyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3J5cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5
cHRvL2tleXMvQ3J5cHRvS2V5UlNBLmgKQEAgLTUxLDggKzUxLDkgQEAgdHlwZWRlZiBzdGQ6OnVu
aXF1ZV9wdHI8dHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9pbnRlcjxnY3J5X3NleHBfdD46OnR5cGUs
IFBBTDo6R0MKICNlbmRpZgogCiAjaWYgVVNFKE9QRU5TU0wpCi10eXBlZGVmIHZvaWQqIFBsYXRm
b3JtUlNBS2V5OwotdHlwZWRlZiBzdGQ6OnVuaXF1ZV9wdHI8UGxhdGZvcm1SU0FLZXk+IFBsYXRm
b3JtUlNBS2V5Q29udGFpbmVyOworI2luY2x1ZGUgImNyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlw
dG9VbmlxdWVQdHIuaCIKK3R5cGVkZWYgRVZQX1BLRVkqIFBsYXRmb3JtUlNBS2V5OwordHlwZWRl
ZiBXZWJDb3JlOjpFdnBQS2V5UHRyIFBsYXRmb3JtUlNBS2V5Q29udGFpbmVyOwogI2VuZGlmCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9v
cGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Ny
eXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobUhNQUNPcGVuU1NMLmNwcAppbmRleCBkM2FkOTRh
YTZlNDExMTVlNjcwMzYwZDRjZTA5ZDY4MWMzNDA3ZDFhLi5kZmZjOWM5ZTQwMjNjZmM1YjE4MjQy
ZjU1M2M0ODYyYjM5Njc0N2M1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3Bl
bnNzbC9DcnlwdG9BbGdvcml0aG1ITUFDT3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtSE1BQ09wZW5TU0wuY3BwCkBAIC0zMCwyOSAr
MzAsMTIgQEAKIAogI2luY2x1ZGUgIkNyeXB0b0tleUhNQUMuaCIKICNpbmNsdWRlICJPcGVuU1NM
Q3J5cHRvVW5pcXVlUHRyLmgiCisjaW5jbHVkZSAiT3BlblNTTFV0aWxpdGllcy5oIgogI2luY2x1
ZGUgPG9wZW5zc2wvZXZwLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMu
aD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgY29uc3QgRVZQX01EKiBITUFDQWxn
b3JpdGhtKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaGFzaEZ1bmN0aW9uKQotewotICAgIHN3
aXRjaCAoaGFzaEZ1bmN0aW9uKSB7Ci0gICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVy
OjpTSEFfMToKLSAgICAgICAgcmV0dXJuIEVWUF9zaGExKCk7Ci0gICAgY2FzZSBDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyOjpTSEFfMjI0OgotICAgICAgICByZXR1cm4gRVZQX3NoYTIyNCgpOwot
ICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzI1NjoKLSAgICAgICAgcmV0
dXJuIEVWUF9zaGEyNTYoKTsKLSAgICBjYXNlIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI6OlNI
QV8zODQ6Ci0gICAgICAgIHJldHVybiBFVlBfc2hhMzg0KCk7Ci0gICAgY2FzZSBDcnlwdG9BbGdv
cml0aG1JZGVudGlmaWVyOjpTSEFfNTEyOgotICAgICAgICByZXR1cm4gRVZQX3NoYTUxMigpOwot
ICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIH0KLX0KLQogc3RhdGlj
IE9wdGlvbmFsPFZlY3Rvcjx1aW50OF90Pj4gY2FsY3VsYXRlU2lnbmF0dXJlKGNvbnN0IEVWUF9N
RCogYWxnb3JpdGhtLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGtleSwgY29uc3QgdWludDhfdCog
ZGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgpCiB7CiAgICAgLy8gQ3JlYXRlIHRoZSBNZXNzYWdlIERp
Z2VzdCBDb250ZXh0CkBAIC04Nyw3ICs3MCw3IEBAIHN0YXRpYyBPcHRpb25hbDxWZWN0b3I8dWlu
dDhfdD4+IGNhbGN1bGF0ZVNpZ25hdHVyZShjb25zdCBFVlBfTUQqIGFsZ29yaXRobSwgY29uCiAK
IEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtSE1BQzo6cGxhdGZv
cm1TaWduKGNvbnN0IENyeXB0b0tleUhNQUMmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBk
YXRhKQogewotICAgIGF1dG8gYWxnb3JpdGhtID0gSE1BQ0FsZ29yaXRobShrZXkuaGFzaEFsZ29y
aXRobUlkZW50aWZpZXIoKSk7CisgICAgYXV0byBhbGdvcml0aG0gPSBkaWdlc3RBbGdvcml0aG0o
a2V5Lmhhc2hBbGdvcml0aG1JZGVudGlmaWVyKCkpOwogICAgIGlmICghYWxnb3JpdGhtKQogICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKIApAQCAtOTksNyArODIs
NyBAQCBFeGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobUhNQUM6OnBs
YXRmb3JtU2lnbihjb25zdCBDcnlwdG9LZXlITQogCiBFeGNlcHRpb25Pcjxib29sPiBDcnlwdG9B
bGdvcml0aG1ITUFDOjpwbGF0Zm9ybVZlcmlmeShjb25zdCBDcnlwdG9LZXlITUFDJiBrZXksIGNv
bnN0IFZlY3Rvcjx1aW50OF90PiYgc2lnbmF0dXJlLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGRh
dGEpCiB7Ci0gICAgYXV0byBhbGdvcml0aG0gPSBITUFDQWxnb3JpdGhtKGtleS5oYXNoQWxnb3Jp
dGhtSWRlbnRpZmllcigpKTsKKyAgICBhdXRvIGFsZ29yaXRobSA9IGRpZ2VzdEFsZ29yaXRobShr
ZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAgICAgaWYgKCFhbGdvcml0aG0pCiAgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92
MV81T3BlblNTTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdv
cml0aG1SU0FFU19QS0NTMV92MV81T3BlblNTTC5jcHAKaW5kZXggMGFhNDk1ZTU5NjNjYTA5Yzk4
NDUxYmI2YzAyODg2ODc5NWViMDA4Yy4uNjNiNWI5NTUxMzg0ZGYyNmY0YTkwOTRkNzUxOTdkODAx
YzhhMmE5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRv
QWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNU9wZW5TU0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzVPcGVuU1NMLmNw
cApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFj
dGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVy
YWN0aXZlIEVudGVydGFpbm1lbnQgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0yOSwyMCArMjksNTYgQEAKICNpZiBFTkFCTEUoV0VCX0NSWVBUTykKIAogI2luY2x1ZGUg
IkNyeXB0b0tleVJTQS5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVkZSAi
T3BlblNTTFV0aWxpdGllcy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlvbk9y
PFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNTo6cGxhdGZv
cm1FbmNyeXB0KGNvbnN0IENyeXB0b0tleVJTQSYsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYpCitF
eGNlcHRpb25PcjxWZWN0b3I8dWludDhfdD4+IENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3Yx
XzU6OnBsYXRmb3JtRW5jcnlwdChjb25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9y
PHVpbnQ4X3Q+JiBwbGFpblRleHQpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1
cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBhdXRvIGN0eCA9IEV2cFBL
ZXlDdHhQdHIoRVZQX1BLRVlfQ1RYX25ldyhrZXkucGxhdGZvcm1LZXkoKSwgbnVsbHB0cikpOwor
ICAgIGlmICghY3R4KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3Ig
fTsKKworICAgIGlmIChFVlBfUEtFWV9lbmNyeXB0X2luaXQoY3R4LmdldCgpKSA8PSAwKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBf
UEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5nZXQoKSwgUlNBX1BLQ1MxX1BBRERJTkcpIDw9
IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAg
c2l6ZV90IGNpcGhlclRleHRMZW47CisgICAgaWYgKEVWUF9QS0VZX2VuY3J5cHQoY3R4LmdldCgp
LCBudWxscHRyLCAmY2lwaGVyVGV4dExlbiwgcGxhaW5UZXh0LmRhdGEoKSwgcGxhaW5UZXh0LnNp
emUoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07
CisKKyAgICBWZWN0b3I8dWludDhfdD4gY2lwaGVyVGV4dChjaXBoZXJUZXh0TGVuKTsKKyAgICBp
ZiAoRVZQX1BLRVlfZW5jcnlwdChjdHguZ2V0KCksIGNpcGhlclRleHQuZGF0YSgpLCAmY2lwaGVy
VGV4dExlbiwgcGxhaW5UZXh0LmRhdGEoKSwgcGxhaW5UZXh0LnNpemUoKSkgPD0gMCkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisgICAgY2lwaGVyVGV4dC5z
aHJpbmsoY2lwaGVyVGV4dExlbik7CisKKyAgICByZXR1cm4gY2lwaGVyVGV4dDsKIH0KIAotRXhj
ZXB0aW9uT3I8VmVjdG9yPHVpbnQ4X3Q+PiBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81
OjpwbGF0Zm9ybURlY3J5cHQoY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29uc3QgVmVjdG9yPHVpbnQ4
X3Q+JikKK0V4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBRVNf
UEtDUzFfdjFfNTo6cGxhdGZvcm1EZWNyeXB0KGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25z
dCBWZWN0b3I8dWludDhfdD4mIGNpcGhlclRleHQpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsK
LSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBhdXRvIGN0
eCA9IEV2cFBLZXlDdHhQdHIoRVZQX1BLRVlfQ1RYX25ldyhrZXkucGxhdGZvcm1LZXkoKSwgbnVs
bHB0cikpOworICAgIGlmICghY3R4KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0
aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9kZWNyeXB0X2luaXQoY3R4LmdldCgpKSA8
PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAg
IGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5nZXQoKSwgUlNBX1BLQ1MxX1BB
RERJTkcpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9
OworCisgICAgc2l6ZV90IHBsYWluVGV4dExlbjsKKyAgICBpZiAoRVZQX1BLRVlfZGVjcnlwdChj
dHguZ2V0KCksIG51bGxwdHIsICZwbGFpblRleHRMZW4sIGNpcGhlclRleHQuZGF0YSgpLCBjaXBo
ZXJUZXh0LnNpemUoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlv
bkVycm9yIH07CisKKyAgICBWZWN0b3I8dWludDhfdD4gcGxhaW5UZXh0KHBsYWluVGV4dExlbik7
CisgICAgaWYgKEVWUF9QS0VZX2RlY3J5cHQoY3R4LmdldCgpLCBwbGFpblRleHQuZGF0YSgpLCAm
cGxhaW5UZXh0TGVuLCBjaXBoZXJUZXh0LmRhdGEoKSwgY2lwaGVyVGV4dC5zaXplKCkpIDw9IDAp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworICAgIHBsYWlu
VGV4dC5zaHJpbmsocGxhaW5UZXh0TGVuKTsKKworICAgIHJldHVybiBwbGFpblRleHQ7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0
by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQVNTQV9QS0NTMV92MV81T3BlblNTTC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFf
djFfNU9wZW5TU0wuY3BwCmluZGV4IGNkNGQwYjU4M2FhODA5N2E0YWNlZjU1MzA2ZjJmZjE0MTBk
ZjkxZmMuLmFlMzJiNmY4NmRjM2I1ZGNjZjE5OTE3YjA4MjM1NGZmZDM2Yzk1YmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQVNTQV9Q
S0NTMV92MV81T3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wv
Q3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzVPcGVuU1NMLmNwcApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5t
ZW50IEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVyYWN0aXZlIEVudGVydGFp
bm1lbnQgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yOSwyMCArMjks
NzEgQEAKICNpZiBFTkFCTEUoV0VCX0NSWVBUTykKIAogI2luY2x1ZGUgIkNyeXB0b0tleVJTQS5o
IgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVkZSAiT3BlblNTTFV0aWxpdGll
cy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90
Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6OnBsYXRmb3JtU2lnbihjb25zdCBD
cnlwdG9LZXlSU0EmLCBjb25zdCBWZWN0b3I8dWludDhfdD4mKQorRXhjZXB0aW9uT3I8VmVjdG9y
PHVpbnQ4X3Q+PiBDcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNTo6cGxhdGZvcm1TaWdu
KGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25zdCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7
Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9y
dGVkRXJyb3IgfTsKKyAgICBjb25zdCBFVlBfTUQqIG1kID0gZGlnZXN0QWxnb3JpdGhtKGtleS5o
YXNoQWxnb3JpdGhtSWRlbnRpZmllcigpKTsKKyAgICBpZiAoIW1kKQorICAgICAgICByZXR1cm4g
RXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKworICAgIE9wdGlvbmFsPFZlY3Rvcjx1
aW50OF90Pj4gZGlnZXN0ID0gY2FsY3VsYXRlRGlnZXN0KG1kLCBkYXRhKTsKKyAgICBpZiAoIWRp
Z2VzdCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAg
ICBhdXRvIGN0eCA9IEV2cFBLZXlDdHhQdHIoRVZQX1BLRVlfQ1RYX25ldyhrZXkucGxhdGZvcm1L
ZXkoKSwgbnVsbHB0cikpOworICAgIGlmICghY3R4KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9zaWduX2luaXQoY3R4Lmdl
dCgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsK
KworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5nZXQoKSwgUlNBX1BL
Q1MxX1BBRERJTkcpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25F
cnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRfc2lnbmF0dXJlX21kKGN0eC5nZXQo
KSwgbWQpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9
OworCisgICAgc2l6ZV90IHNpZ25hdHVyZUxlbjsKKyAgICBpZiAoRVZQX1BLRVlfc2lnbihjdHgu
Z2V0KCksIG51bGxwdHIsICZzaWduYXR1cmVMZW4sIGRpZ2VzdC0+ZGF0YSgpLCBkaWdlc3QtPnNp
emUoKSkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07
CisKKyAgICBWZWN0b3I8dWludDhfdD4gc2lnbmF0dXJlKHNpZ25hdHVyZUxlbik7CisgICAgaWYg
KEVWUF9QS0VZX3NpZ24oY3R4LmdldCgpLCBzaWduYXR1cmUuZGF0YSgpLCAmc2lnbmF0dXJlTGVu
LCBkaWdlc3QtPmRhdGEoKSwgZGlnZXN0LT5zaXplKCkpIDw9IDApCisgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworICAgIHNpZ25hdHVyZS5zaHJpbmsoc2lnbmF0
dXJlTGVuKTsKKworICAgIHJldHVybiBzaWduYXR1cmU7CiB9CiAKLUV4Y2VwdGlvbk9yPGJvb2w+
IENyeXB0b0FsZ29yaXRobVJTQVNTQV9QS0NTMV92MV81OjpwbGF0Zm9ybVZlcmlmeShjb25zdCBD
cnlwdG9LZXlSU0EmLCBjb25zdCBWZWN0b3I8dWludDhfdD4mLCBjb25zdCBWZWN0b3I8dWludDhf
dD4mKQorRXhjZXB0aW9uT3I8Ym9vbD4gQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzU6
OnBsYXRmb3JtVmVyaWZ5KGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25zdCBWZWN0b3I8dWlu
dDhfdD4mIHNpZ25hdHVyZSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewotICAgIG5v
dEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9y
IH07CisgICAgY29uc3QgRVZQX01EKiBtZCA9IGRpZ2VzdEFsZ29yaXRobShrZXkuaGFzaEFsZ29y
aXRobUlkZW50aWZpZXIoKSk7CisgICAgaWYgKCFtZCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE5vdFN1cHBvcnRlZEVycm9yIH07CisKKyAgICBPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+
IGRpZ2VzdCA9IGNhbGN1bGF0ZURpZ2VzdChtZCwgZGF0YSk7CisgICAgaWYgKCFkaWdlc3QpCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgYXV0byBj
dHggPSBFdnBQS2V5Q3R4UHRyKEVWUF9QS0VZX0NUWF9uZXcoa2V5LnBsYXRmb3JtS2V5KCksIG51
bGxwdHIpKTsKKyAgICBpZiAoIWN0eCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJh
dGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfdmVyaWZ5X2luaXQoY3R4LmdldCgpKSA8
PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAg
IGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5nZXQoKSwgUlNBX1BLQ1MxX1BB
RERJTkcpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9
OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRfc2lnbmF0dXJlX21kKGN0eC5nZXQoKSwgbWQp
IDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisg
ICAgaW50IHJldCA9IEVWUF9QS0VZX3ZlcmlmeShjdHguZ2V0KCksIHNpZ25hdHVyZS5kYXRhKCks
IHNpZ25hdHVyZS5zaXplKCksIGRpZ2VzdC0+ZGF0YSgpLCBkaWdlc3QtPnNpemUoKSk7CisKKyAg
ICByZXR1cm4gcmV0ID09IDE7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJTQV9PQUVQ
T3BlblNTTC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0
aG1SU0FfT0FFUE9wZW5TU0wuY3BwCmluZGV4IDFkOGUzZDdhZWQxZWEyZTI0YmI5OGEwNWI5MzY2
M2ExNDA3Y2JkZGQuLjRhM2RiYjZiN2U5ODY0ODAyN2MyM2FiZTYyODNhZDc4MTIxOTc5YmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJT
QV9PQUVQT3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvQ3J5
cHRvQWxnb3JpdGhtUlNBX09BRVBPcGVuU1NMLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMjAgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAq
IENvcHlyaWdodCAoQykgMjAyMSBTb255IEludGVyYWN0aXZlIEVudGVydGFpbm1lbnQgSW5jLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zMCwyMCArMzAsMTA2IEBACiAKICNp
bmNsdWRlICJDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zLmgiCiAjaW5jbHVkZSAiQ3J5cHRv
S2V5UlNBLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRlICJPcGVuU1NM
VXRpbGl0aWVzLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRXhjZXB0aW9uT3I8VmVjdG9y
PHVpbnQ4X3Q+PiBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUDo6cGxhdGZvcm1FbmNyeXB0KGNvbnN0
IENyeXB0b0FsZ29yaXRobVJzYU9hZXBQYXJhbXMmLCBjb25zdCBDcnlwdG9LZXlSU0EmLCBjb25z
dCBWZWN0b3I8dWludDhfdD4mKQorRXhjZXB0aW9uT3I8VmVjdG9yPHVpbnQ4X3Q+PiBDcnlwdG9B
bGdvcml0aG1SU0FfT0FFUDo6cGxhdGZvcm1FbmNyeXB0KGNvbnN0IENyeXB0b0FsZ29yaXRobVJz
YU9hZXBQYXJhbXMmIHBhcmFtZXRlcnMsIGNvbnN0IENyeXB0b0tleVJTQSYga2V5LCBjb25zdCBW
ZWN0b3I8dWludDhfdD4mIHBsYWluVGV4dCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworI2lm
IGRlZmluZWQoRVZQX1BLRVlfQ1RYX3NldF9yc2Ffb2FlcF9tZCkgJiYgZGVmaW5lZChFVlBfUEtF
WV9DVFhfc2V0X3JzYV9tZ2YxX21kKSAmJiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXQwX3JzYV9v
YWVwX2xhYmVsKQorICAgIGNvbnN0IEVWUF9NRCogbWQgPSBkaWdlc3RBbGdvcml0aG0oa2V5Lmhh
c2hBbGdvcml0aG1JZGVudGlmaWVyKCkpOworICAgIGlmICghbWQpCisgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworCisgICAgYXV0byBjdHggPSBFdnBQS2V5
Q3R4UHRyKEVWUF9QS0VZX0NUWF9uZXcoa2V5LnBsYXRmb3JtS2V5KCksIG51bGxwdHIpKTsKKyAg
ICBpZiAoIWN0eCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07
CisKKyAgICBpZiAoRVZQX1BLRVlfZW5jcnlwdF9pbml0KGN0eC5nZXQoKSkgPD0gMCkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BL
RVlfQ1RYX3NldF9yc2FfcGFkZGluZyhjdHguZ2V0KCksIFJTQV9QS0NTMV9PQUVQX1BBRERJTkcp
IDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisg
ICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRfcnNhX29hZXBfbWQoY3R4LmdldCgpLCBtZCkgPD0gMCkK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAo
RVZQX1BLRVlfQ1RYX3NldF9yc2FfbWdmMV9tZChjdHguZ2V0KCksIG1kKSA8PSAwKQorICAgICAg
ICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmICghcGFyYW1l
dGVycy5sYWJlbFZlY3RvcigpLmlzRW1wdHkoKSkgeworICAgICAgICBzaXplX3QgbGFiZWxTaXpl
ID0gcGFyYW1ldGVycy5sYWJlbFZlY3RvcigpLnNpemUoKTsKKyAgICAgICAgLy8gVGhlIGxpYnJh
cnkgdGFrZXMgb3duZXJzaGlwIG9mIHRoZSBsYWJlbCBzbyB0aGUgY2FsbGVyIHNob3VsZCBub3Qg
ZnJlZSB0aGUgb3JpZ2luYWwgbWVtb3J5IHBvaW50ZWQgdG8gYnkgbGFiZWwuCisgICAgICAgIGF1
dG8gbGFiZWwgPSBPUEVOU1NMX21hbGxvYyhsYWJlbFNpemUpOworICAgICAgICBtZW1jcHkobGFi
ZWwsIHBhcmFtZXRlcnMubGFiZWxWZWN0b3IoKS5kYXRhKCksIGxhYmVsU2l6ZSk7CisgICAgICAg
IGlmIChFVlBfUEtFWV9DVFhfc2V0MF9yc2Ffb2FlcF9sYWJlbChjdHguZ2V0KCksIGxhYmVsLCBs
YWJlbFNpemUpIDw9IDApIHsKKyAgICAgICAgICAgIE9QRU5TU0xfZnJlZShsYWJlbCk7CisgICAg
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKyAgICAgICAgfQor
ICAgIH0KKworICAgIHNpemVfdCBjaXBoZXJUZXh0TGVuOworICAgIGlmIChFVlBfUEtFWV9lbmNy
eXB0KGN0eC5nZXQoKSwgbnVsbHB0ciwgJmNpcGhlclRleHRMZW4sIHBsYWluVGV4dC5kYXRhKCks
IHBsYWluVGV4dC5zaXplKCkpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVy
YXRpb25FcnJvciB9OworCisgICAgVmVjdG9yPHVpbnQ4X3Q+IGNpcGhlclRleHQoY2lwaGVyVGV4
dExlbik7CisgICAgaWYgKEVWUF9QS0VZX2VuY3J5cHQoY3R4LmdldCgpLCBjaXBoZXJUZXh0LmRh
dGEoKSwgJmNpcGhlclRleHRMZW4sIHBsYWluVGV4dC5kYXRhKCksIHBsYWluVGV4dC5zaXplKCkp
IDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworICAg
IGNpcGhlclRleHQuc2hyaW5rKGNpcGhlclRleHRMZW4pOworCisgICAgcmV0dXJuIGNpcGhlclRl
eHQ7CisjZWxzZQogICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9Owor
I2VuZGlmCiB9CiAKLUV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGht
UlNBX09BRVA6OnBsYXRmb3JtRGVjcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFy
YW1zJiwgY29uc3QgQ3J5cHRvS2V5UlNBJiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JikKK0V4Y2Vw
dGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVA6OnBsYXRmb3Jt
RGVjcnlwdChjb25zdCBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1zJiBwYXJhbWV0ZXJzLCBj
b25zdCBDcnlwdG9LZXlSU0EmIGtleSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBjaXBoZXJUZXh0
KQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisjaWYgZGVmaW5lZChFVlBfUEtFWV9DVFhfc2V0
X3JzYV9vYWVwX21kKSAmJiBkZWZpbmVkKEVWUF9QS0VZX0NUWF9zZXRfcnNhX21nZjFfbWQpICYm
IGRlZmluZWQoRVZQX1BLRVlfQ1RYX3NldDBfcnNhX29hZXBfbGFiZWwpCisgICAgY29uc3QgRVZQ
X01EKiBtZCA9IGRpZ2VzdEFsZ29yaXRobShrZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7
CisgICAgaWYgKCFtZCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVy
cm9yIH07CisKKyAgICBhdXRvIGN0eCA9IEV2cFBLZXlDdHhQdHIoRVZQX1BLRVlfQ1RYX25ldyhr
ZXkucGxhdGZvcm1LZXkoKSwgbnVsbHB0cikpOworICAgIGlmICghY3R4KQorICAgICAgICByZXR1
cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9kZWNy
eXB0X2luaXQoY3R4LmdldCgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3Bl
cmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0
eC5nZXQoKSwgUlNBX1BLQ1MxX09BRVBfUEFERElORykgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9y
c2Ffb2FlcF9tZChjdHguZ2V0KCksIG1kKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9tZ2Yx
X21kKGN0eC5nZXQoKSwgbWQpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVy
YXRpb25FcnJvciB9OworCisgICAgaWYgKCFwYXJhbWV0ZXJzLmxhYmVsVmVjdG9yKCkuaXNFbXB0
eSgpKSB7CisgICAgICAgIHNpemVfdCBsYWJlbFNpemUgPSBwYXJhbWV0ZXJzLmxhYmVsVmVjdG9y
KCkuc2l6ZSgpOworICAgICAgICAvLyBUaGUgbGlicmFyeSB0YWtlcyBvd25lcnNoaXAgb2YgdGhl
IGxhYmVsIHNvIHRoZSBjYWxsZXIgc2hvdWxkIG5vdCBmcmVlIHRoZSBvcmlnaW5hbCBtZW1vcnkg
cG9pbnRlZCB0byBieSBsYWJlbC4KKyAgICAgICAgYXV0byBsYWJlbCA9IE9QRU5TU0xfbWFsbG9j
KGxhYmVsU2l6ZSk7CisgICAgICAgIG1lbWNweShsYWJlbCwgcGFyYW1ldGVycy5sYWJlbFZlY3Rv
cigpLmRhdGEoKSwgbGFiZWxTaXplKTsKKyAgICAgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXQwX3Jz
YV9vYWVwX2xhYmVsKGN0eC5nZXQoKSwgbGFiZWwsIGxhYmVsU2l6ZSkgPD0gMCkgeworICAgICAg
ICAgICAgT1BFTlNTTF9mcmVlKGxhYmVsKTsKKyAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBPcGVyYXRpb25FcnJvciB9OworICAgICAgICB9CisgICAgfQorCisgICAgc2l6ZV90IHBsYWlu
VGV4dExlbjsKKyAgICBpZiAoRVZQX1BLRVlfZGVjcnlwdChjdHguZ2V0KCksIG51bGxwdHIsICZw
bGFpblRleHRMZW4sIGNpcGhlclRleHQuZGF0YSgpLCBjaXBoZXJUZXh0LnNpemUoKSkgPD0gMCkK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBWZWN0
b3I8dWludDhfdD4gcGxhaW5UZXh0KHBsYWluVGV4dExlbik7CisgICAgaWYgKEVWUF9QS0VZX2Rl
Y3J5cHQoY3R4LmdldCgpLCBwbGFpblRleHQuZGF0YSgpLCAmcGxhaW5UZXh0TGVuLCBjaXBoZXJU
ZXh0LmRhdGEoKSwgY2lwaGVyVGV4dC5zaXplKCkpIDw9IDApCisgICAgICAgIHJldHVybiBFeGNl
cHRpb24geyBPcGVyYXRpb25FcnJvciB9OworICAgIHBsYWluVGV4dC5zaHJpbmsocGxhaW5UZXh0
TGVuKTsKKworICAgIHJldHVybiBwbGFpblRleHQ7CisjZWxzZQogICAgIHJldHVybiBFeGNlcHRp
b24geyBOb3RTdXBwb3J0ZWRFcnJvciB9OworI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0Fs
Z29yaXRobVJTQV9QU1NPcGVuU1NMLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3Ns
L0NyeXB0b0FsZ29yaXRobVJTQV9QU1NPcGVuU1NMLmNwcAppbmRleCBjNDhiMmYwMjAwMmI2MDRk
Y2JkYzI1YzUwZTM4ZGM4ZWFhNjE3ZTAzLi45ZTNkOWVjZmY3MjQ2NDJiMmQxNTY1MTc2MDdiMDM5
YzQxNDYwMTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9Dcnlw
dG9BbGdvcml0aG1SU0FfUFNTT3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRv
L29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUlNBX1BTU09wZW5TU0wuY3BwCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBTb255IEludGVyYWN0aXZlIEVudGVydGFpbm1l
bnQgSW5jLgorICogQ29weXJpZ2h0IChDKSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlu
bWVudCBJbmMuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMwLDIwICszMCw5
MSBAQAogCiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtUnNhUHNzUGFyYW1zLmgiCiAjaW5jbHVk
ZSAiQ3J5cHRvS2V5UlNBLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRl
ICJPcGVuU1NMVXRpbGl0aWVzLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRXhjZXB0aW9u
T3I8VmVjdG9yPHVpbnQ4X3Q+PiBDcnlwdG9BbGdvcml0aG1SU0FfUFNTOjpwbGF0Zm9ybVNpZ24o
Y29uc3QgQ3J5cHRvQWxnb3JpdGhtUnNhUHNzUGFyYW1zJiwgY29uc3QgQ3J5cHRvS2V5UlNBJiwg
Y29uc3QgVmVjdG9yPHVpbnQ4X3Q+JikKK0V4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4gQ3J5
cHRvQWxnb3JpdGhtUlNBX1BTUzo6cGxhdGZvcm1TaWduKGNvbnN0IENyeXB0b0FsZ29yaXRobVJz
YVBzc1BhcmFtcyYgcGFyYW1ldGVycywgY29uc3QgQ3J5cHRvS2V5UlNBJiBrZXksIGNvbnN0IFZl
Y3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworI2lmIGRlZmlu
ZWQoRVZQX1BLRVlfQ1RYX3NldF9yc2FfcHNzX3NhbHRsZW4pICYmIGRlZmluZWQoRVZQX1BLRVlf
Q1RYX3NldF9yc2FfbWdmMV9tZCkKKyAgICBjb25zdCBFVlBfTUQqIG1kID0gZGlnZXN0QWxnb3Jp
dGhtKGtleS5oYXNoQWxnb3JpdGhtSWRlbnRpZmllcigpKTsKKyAgICBpZiAoIW1kKQorICAgICAg
ICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKworICAgIE9wdGlvbmFs
PFZlY3Rvcjx1aW50OF90Pj4gZGlnZXN0ID0gY2FsY3VsYXRlRGlnZXN0KG1kLCBkYXRhKTsKKyAg
ICBpZiAoIWRpZ2VzdCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9y
IH07CisKKyAgICBhdXRvIGN0eCA9IEV2cFBLZXlDdHhQdHIoRVZQX1BLRVlfQ1RYX25ldyhrZXku
cGxhdGZvcm1LZXkoKSwgbnVsbHB0cikpOworICAgIGlmICghY3R4KQorICAgICAgICByZXR1cm4g
RXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9zaWduX2lu
aXQoY3R4LmdldCgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9u
RXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5nZXQo
KSwgUlNBX1BLQ1MxX1BTU19QQURESU5HICkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9yc2FfcHNz
X3NhbHRsZW4oY3R4LmdldCgpLCBwYXJhbWV0ZXJzLnNhbHRMZW5ndGgpIDw9IDApCisgICAgICAg
IHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZ
X0NUWF9zZXRfc2lnbmF0dXJlX21kKGN0eC5nZXQoKSwgbWQpIDw9IDApCisgICAgICAgIHJldHVy
biBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NUWF9z
ZXRfcnNhX21nZjFfbWQoY3R4LmdldCgpLCBtZCkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBzaXplX3Qgc2lnbmF0dXJlTGVuOworICAg
IGlmIChFVlBfUEtFWV9zaWduKGN0eC5nZXQoKSwgbnVsbHB0ciwgJnNpZ25hdHVyZUxlbiwgZGln
ZXN0LT5kYXRhKCksIGRpZ2VzdC0+c2l6ZSgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBzaWduYXR1cmUo
c2lnbmF0dXJlTGVuKTsKKyAgICBpZiAoRVZQX1BLRVlfc2lnbihjdHguZ2V0KCksIHNpZ25hdHVy
ZS5kYXRhKCksICZzaWduYXR1cmVMZW4sIGRpZ2VzdC0+ZGF0YSgpLCBkaWdlc3QtPnNpemUoKSkg
PD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisgICAg
c2lnbmF0dXJlLnNocmluayhzaWduYXR1cmVMZW4pOworCisgICAgcmV0dXJuIHNpZ25hdHVyZTsK
KyNlbHNlCiAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH07CisjZW5k
aWYKIH0KIAotRXhjZXB0aW9uT3I8Ym9vbD4gQ3J5cHRvQWxnb3JpdGhtUlNBX1BTUzo6cGxhdGZv
cm1WZXJpZnkoY29uc3QgQ3J5cHRvQWxnb3JpdGhtUnNhUHNzUGFyYW1zJiwgY29uc3QgQ3J5cHRv
S2V5UlNBJiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JikK
K0V4Y2VwdGlvbk9yPGJvb2w+IENyeXB0b0FsZ29yaXRobVJTQV9QU1M6OnBsYXRmb3JtVmVyaWZ5
KGNvbnN0IENyeXB0b0FsZ29yaXRobVJzYVBzc1BhcmFtcyYgcGFyYW1ldGVycywgY29uc3QgQ3J5
cHRvS2V5UlNBJiBrZXksIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgc2lnbmF0dXJlLCBjb25zdCBW
ZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyNpZiBkZWZp
bmVkKEVWUF9QS0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKSAmJiBkZWZpbmVkKEVWUF9QS0VZ
X0NUWF9zZXRfcnNhX21nZjFfbWQpCisgICAgY29uc3QgRVZQX01EKiBtZCA9IGRpZ2VzdEFsZ29y
aXRobShrZXkuaGFzaEFsZ29yaXRobUlkZW50aWZpZXIoKSk7CisgICAgaWYgKCFtZCkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH07CisKKyAgICBPcHRpb25h
bDxWZWN0b3I8dWludDhfdD4+IGRpZ2VzdCA9IGNhbGN1bGF0ZURpZ2VzdChtZCwgZGF0YSk7Cisg
ICAgaWYgKCFkaWdlc3QpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJv
ciB9OworCisgICAgYXV0byBjdHggPSBFdnBQS2V5Q3R4UHRyKEVWUF9QS0VZX0NUWF9uZXcoa2V5
LnBsYXRmb3JtS2V5KCksIG51bGxwdHIpKTsKKyAgICBpZiAoIWN0eCkKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfdmVyaWZ5
X2luaXQoY3R4LmdldCgpKSA8PSAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0
aW9uRXJyb3IgfTsKKworICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3JzYV9wYWRkaW5nKGN0eC5n
ZXQoKSwgUlNBX1BLQ1MxX1BTU19QQURESU5HICkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9yc2Ff
cHNzX3NhbHRsZW4oY3R4LmdldCgpLCBwYXJhbWV0ZXJzLnNhbHRMZW5ndGgpIDw9IDApCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9Q
S0VZX0NUWF9zZXRfc2lnbmF0dXJlX21kKGN0eC5nZXQoKSwgbWQpIDw9IDApCisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9OworCisgICAgaWYgKEVWUF9QS0VZX0NU
WF9zZXRfcnNhX21nZjFfbWQoY3R4LmdldCgpLCBtZCkgPD0gMCkKKyAgICAgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IE9wZXJhdGlvbkVycm9yIH07CisKKyAgICBpbnQgcmV0ID0gRVZQX1BLRVlfdmVy
aWZ5KGN0eC5nZXQoKSwgc2lnbmF0dXJlLmRhdGEoKSwgc2lnbmF0dXJlLnNpemUoKSwgZGlnZXN0
LT5kYXRhKCksIGRpZ2VzdC0+c2l6ZSgpKTsKKworICAgIHJldHVybiByZXQgPT0gMTsKKyNlbHNl
CiAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH07CisjZW5kaWYKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3J5
cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2NyeXB0by9vcGVuc3NsL0NyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5T3BlblNTTC5jcHAK
aW5kZXggODFiNzBmNzc4Njg3OTk0OGEwMDNiMGZkNzgzMTliZTQwODFmMjcwYi4uOTUxZjFhMjky
OGEyZmY5MmIyMTIxMDc1NjY1MzVkOWE2N2QxNTRkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3J5cHRvL29wZW5zc2wvQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlPcGVuU1NMLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9DcnlwdG9BbGdvcml0aG1SZWdpc3RyeU9w
ZW5TU0wuY3BwCkBAIC0zNCw2ICszNCwxMCBAQAogI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRobUFF
U19HQ00uaCIKICNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1BRVNfS1cuaCIKICNpbmNsdWRlICJD
cnlwdG9BbGdvcml0aG1ITUFDLmgiCisjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtD
UzFfdjFfNS5oIgorI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRobVJTQVNTQV9QS0NTMV92MV81Lmgi
CisjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVAuaCIKKyNpbmNsdWRlICJDcnlwdG9B
bGdvcml0aG1SU0FfUFNTLmgiCiAjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGhtU0hBMS5oIgogI2lu
Y2x1ZGUgIkNyeXB0b0FsZ29yaXRobVNIQTIyNC5oIgogI2luY2x1ZGUgIkNyeXB0b0FsZ29yaXRo
bVNIQTI1Ni5oIgpAQCAtNTAsNiArNTQsMTAgQEAgdm9pZCBDcnlwdG9BbGdvcml0aG1SZWdpc3Ry
eTo6cGxhdGZvcm1SZWdpc3RlckFsZ29yaXRobXMoKQogICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENy
eXB0b0FsZ29yaXRobUFFU19HQ00+KCk7CiAgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxn
b3JpdGhtQUVTX0tXPigpOwogICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENyeXB0b0FsZ29yaXRobUhN
QUM+KCk7CisgICAgcmVnaXN0ZXJBbGdvcml0aG08Q3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFf
djFfNT4oKTsKKyAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtD
UzFfdjFfNT4oKTsKKyAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1SU0FfT0FF
UD4oKTsKKyAgICByZWdpc3RlckFsZ29yaXRobTxDcnlwdG9BbGdvcml0aG1SU0FfUFNTPigpOwog
ICAgIHJlZ2lzdGVyQWxnb3JpdGhtPENyeXB0b0FsZ29yaXRobVNIQTE+KCk7CiAgICAgcmVnaXN0
ZXJBbGdvcml0aG08Q3J5cHRvQWxnb3JpdGhtU0hBMjI0PigpOwogICAgIHJlZ2lzdGVyQWxnb3Jp
dGhtPENyeXB0b0FsZ29yaXRobVNIQTI1Nj4oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9vcGVuc3NsL0NyeXB0b0tleVJTQU9wZW5TU0wuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5UlNBT3BlblNTTC5jcHAKaW5kZXggNWQzNjA2NzBlY2U2
NzQzMTc4NmE1YTA3YWMyMzU1ZmNkYmRiMzk1Ny4uMTljNDVkZjQ5MGIyM2RmMWQzOTk3ODFjZDlh
OWM4OTAzNTEyMjU1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wv
Q3J5cHRvS2V5UlNBT3BlblNTTC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5z
c2wvQ3J5cHRvS2V5UlNBT3BlblNTTC5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDIwIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KICAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjgsNzEgKzI4LDMzOCBAQAogCiAjaWYgRU5B
QkxFKFdFQl9DUllQVE8pCiAKKyNpbmNsdWRlICJDcnlwdG9BbGdvcml0aG1SZWdpc3RyeS5oIgor
I2luY2x1ZGUgIkNyeXB0b0tleVBhaXIuaCIKICNpbmNsdWRlICJDcnlwdG9LZXlSU0FDb21wb25l
bnRzLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRlIDxvcGVuc3NsL1g1
MDkuaD4KKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LVJlZlB0cjxDcnlwdG9LZXlSU0E+IENyeXB0b0tleVJTQTo6Y3JlYXRlKENyeXB0b0FsZ29yaXRo
bUlkZW50aWZpZXIsIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIsIGJvb2wgaGFzSGFzaCwgY29u
c3QgQ3J5cHRvS2V5UlNBQ29tcG9uZW50cyYsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVz
YWdlQml0bWFwKQorc3RhdGljIHNpemVfdCBnZXRSU0FNb2R1bHVzTGVuZ3RoKFJTQSogcnNhKQog
ewotICAgIFVOVVNFRF9QQVJBTShoYXNIYXNoKTsKLSAgICBVTlVTRURfUEFSQU0oZXh0cmFjdGFi
bGUpOwotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYg
KCFyc2EpCisgICAgICAgIHJldHVybiAwOworICAgIHJldHVybiBCTl9udW1fYnl0ZXMocnNhLT5u
KSAqIDg7CiB9CiAKLWJvb2wgQ3J5cHRvS2V5UlNBOjppc1Jlc3RyaWN0ZWRUb0hhc2goQ3J5cHRv
QWxnb3JpdGhtSWRlbnRpZmllciYpIGNvbnN0CitzdGF0aWMgVmVjdG9yPHVpbnQ4X3Q+IGNvbnZl
cnRUb0J5dGVzKEJJR05VTSogYmlnbnVtKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAg
VmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzKEJOX251bV9ieXRlcyhiaWdudW0pKTsKKyAgICBCTl9ibjJi
aW4oYmlnbnVtLCBieXRlcy5kYXRhKCkpOworICAgIHJldHVybiBieXRlczsKK30KKworc3RhdGlj
IEJJR05VTSogY29udmVydFRvQmlnTnVtYmVyKEJJR05VTSogYmlnbnVtLCBjb25zdCBWZWN0b3I8
dWludDhfdD4mIGJ5dGVzKQoreworICAgIHJldHVybiBCTl9iaW4yYm4oYnl0ZXMuZGF0YSgpLCBi
eXRlcy5zaXplKCksIGJpZ251bSk7Cit9CisKK1JlZlB0cjxDcnlwdG9LZXlSU0E+IENyeXB0b0tl
eVJTQTo6Y3JlYXRlKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRlbnRpZmllciwgQ3J5cHRv
QWxnb3JpdGhtSWRlbnRpZmllciBoYXNoLCBib29sIGhhc0hhc2gsIGNvbnN0IENyeXB0b0tleVJT
QUNvbXBvbmVudHMmIGtleURhdGEsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0
bWFwIHVzYWdlcykKK3sKKyAgICBDcnlwdG9LZXlUeXBlIGtleVR5cGU7CisgICAgc3dpdGNoIChr
ZXlEYXRhLnR5cGUoKSkgeworICAgIGNhc2UgQ3J5cHRvS2V5UlNBQ29tcG9uZW50czo6VHlwZTo6
UHVibGljOgorICAgICAgICBrZXlUeXBlID0gQ3J5cHRvS2V5VHlwZTo6UHVibGljOworICAgICAg
ICBicmVhazsKKyAgICBjYXNlIENyeXB0b0tleVJTQUNvbXBvbmVudHM6OlR5cGU6OlByaXZhdGU6
CisgICAgICAgIGtleVR5cGUgPSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlOworICAgICAgICBicmVh
azsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICAv
LyBXaGVuIGNyZWF0aW5nIGEgcHJpdmF0ZSBrZXksIHdlIHJlcXVpcmUgdGhlIHAgYW5kIHEgcHJp
bWUgaW5mb3JtYXRpb24uCisgICAgaWYgKGtleVR5cGUgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0
ZSAmJiAha2V5RGF0YS5oYXNBZGRpdGlvbmFsUHJpdmF0ZUtleVBhcmFtZXRlcnMoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAvLyBCdXQgd2UgZG9uJ3QgY3VycmVudGx5IHN1cHBv
cnQgY3JlYXRpbmcga2V5cyB3aXRoIGFueSBhZGRpdGlvbmFsIHByaW1lIGluZm9ybWF0aW9uLgor
ICAgIGlmICgha2V5RGF0YS5vdGhlclByaW1lSW5mb3MoKS5pc0VtcHR5KCkpCisgICAgICAgIHJl
dHVybiBudWxscHRyOworCisgICAgLy8gRm9yIGJvdGggcHVibGljIGFuZCBwcml2YXRlIGtleXMs
IHdlIG5lZWQgdGhlIHB1YmxpYyBtb2R1bHVzIGFuZCBleHBvbmVudC4KKyAgICBpZiAoa2V5RGF0
YS5tb2R1bHVzKCkuaXNFbXB0eSgpIHx8IGtleURhdGEuZXhwb25lbnQoKS5pc0VtcHR5KCkpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgLy8gRm9yIHByaXZhdGUga2V5cywgd2UgcmVx
dWlyZSB0aGUgcHJpdmF0ZSBleHBvbmVudCwgYXMgd2VsbCBhcyBwIGFuZCBxIHByaW1lIGluZm9y
bWF0aW9uLgorICAgIGlmIChrZXlUeXBlID09IENyeXB0b0tleVR5cGU6OlByaXZhdGUpIHsKKyAg
ICAgICAgaWYgKGtleURhdGEucHJpdmF0ZUV4cG9uZW50KCkuaXNFbXB0eSgpIHx8IGtleURhdGEu
Zmlyc3RQcmltZUluZm8oKS5wcmltZUZhY3Rvci5pc0VtcHR5KCkgfHwga2V5RGF0YS5zZWNvbmRQ
cmltZUluZm8oKS5wcmltZUZhY3Rvci5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKKyAgICB9CisKKyAgICBhdXRvIHJzYSA9IFJTQVB0cihSU0FfbmV3KCkpOworICAgIGlm
ICghcnNhKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJzYS0+biA9IGNvbnZlcnRU
b0JpZ051bWJlcihyc2EtPm4sIGtleURhdGEubW9kdWx1cygpKTsKKyAgICByc2EtPmUgPSBjb252
ZXJ0VG9CaWdOdW1iZXIocnNhLT5lLCBrZXlEYXRhLmV4cG9uZW50KCkpOworICAgIGlmICghcnNh
LT5uIHx8ICFyc2EtPmUpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKGtleVR5
cGUgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSkgeworICAgICAgICByc2EtPmQgPSBjb252ZXJ0
VG9CaWdOdW1iZXIocnNhLT5kLCBrZXlEYXRhLnByaXZhdGVFeHBvbmVudCgpKTsKKyAgICAgICAg
cnNhLT5wID0gY29udmVydFRvQmlnTnVtYmVyKHJzYS0+cCwga2V5RGF0YS5maXJzdFByaW1lSW5m
bygpLnByaW1lRmFjdG9yKTsKKyAgICAgICAgcnNhLT5xID0gY29udmVydFRvQmlnTnVtYmVyKHJz
YS0+cSwga2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5wcmltZUZhY3Rvcik7CisgICAgICAgIGlm
ICghcnNhLT5kIHx8ICFyc2EtPnAgfHwgIXJzYS0+cSkKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworCisgICAgICAgIC8vIFdlIHNldCBkbXAxLCBkbXBxMSwgYW5kIGlxbXAgbWVtYmVyIG9m
IHRoZSBSU0Egc3RydWN0IGlmIHRoZSBrZXlEYXRhIGhhcyBjb3JyZXNwb25kaW5nIGRhdGEuCisK
KyAgICAgICAgLy8gZG1wMSAtLSBkIG1vZCAocCAtIDEpCisgICAgICAgIGlmICgha2V5RGF0YS5m
aXJzdFByaW1lSW5mbygpLmZhY3RvckNSVEV4cG9uZW50LmlzRW1wdHkoKSkKKyAgICAgICAgICAg
IHJzYS0+ZG1wMSA9IGNvbnZlcnRUb0JpZ051bWJlcihyc2EtPmRtcDEsIGtleURhdGEuZmlyc3RQ
cmltZUluZm8oKS5mYWN0b3JDUlRFeHBvbmVudCk7CisgICAgICAgIC8vIGRtcTEgLS0gZCBtb2Qg
KHEgLSAxKQorICAgICAgICBpZiAoIWtleURhdGEuc2Vjb25kUHJpbWVJbmZvKCkuZmFjdG9yQ1JU
RXhwb25lbnQuaXNFbXB0eSgpKQorICAgICAgICAgICAgcnNhLT5kbXExID0gY29udmVydFRvQmln
TnVtYmVyKHJzYS0+ZG1xMSwga2V5RGF0YS5zZWNvbmRQcmltZUluZm8oKS5mYWN0b3JDUlRFeHBv
bmVudCk7CisgICAgICAgIC8vIGlxbXAgLS0gcV4oLTEpIG1vZCBwCisgICAgICAgIGlmICgha2V5
RGF0YS5zZWNvbmRQcmltZUluZm8oKS5mYWN0b3JDUlRDb2VmZmljaWVudC5pc0VtcHR5KCkpCisg
ICAgICAgICAgICByc2EtPmlxbXAgPSBjb252ZXJ0VG9CaWdOdW1iZXIocnNhLT5pcW1wLCBrZXlE
YXRhLnNlY29uZFByaW1lSW5mbygpLmZhY3RvckNSVENvZWZmaWNpZW50KTsKKyAgICB9CisKKyAg
ICBhdXRvIHBrZXkgPSBFdnBQS2V5UHRyKEVWUF9QS0VZX25ldygpKTsKKyAgICBpZiAoIXBrZXkp
CisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKEVWUF9QS0VZX3NldDFfUlNBKHBr
ZXkuZ2V0KCksIHJzYS5nZXQoKSkgIT0gMSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tleVJTQShpZGVudGlmaWVyLCBoYXNoLCBoYXNI
YXNoLCBrZXlUeXBlLCBXVEZNb3ZlKHBrZXkpLCBleHRyYWN0YWJsZSwgdXNhZ2VzKSk7Cit9CisK
K0NyeXB0b0tleVJTQTo6Q3J5cHRvS2V5UlNBKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRl
bnRpZmllciwgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBoYXNoLCBib29sIGhhc0hhc2gsIENy
eXB0b0tleVR5cGUgdHlwZSwgUGxhdGZvcm1SU0FLZXlDb250YWluZXImJiBwbGF0Zm9ybUtleSwg
Ym9vbCBleHRyYWN0YWJsZSwgQ3J5cHRvS2V5VXNhZ2VCaXRtYXAgdXNhZ2VzKQorICAgIDogQ3J5
cHRvS2V5KGlkZW50aWZpZXIsIHR5cGUsIGV4dHJhY3RhYmxlLCB1c2FnZXMpCisgICAgLCBtX3Bs
YXRmb3JtS2V5KFdURk1vdmUocGxhdGZvcm1LZXkpKQorICAgICwgbV9yZXN0cmljdGVkVG9TcGVj
aWZpY0hhc2goaGFzSGFzaCkKKyAgICAsIG1faGFzaChoYXNoKQoreworfQorCitib29sIENyeXB0
b0tleVJTQTo6aXNSZXN0cmljdGVkVG9IYXNoKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXImIGlk
ZW50aWZpZXIpIGNvbnN0Cit7CisgICAgaWYgKCFtX3Jlc3RyaWN0ZWRUb1NwZWNpZmljSGFzaCkK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWRlbnRpZmllciA9IG1faGFzaDsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAogc2l6ZV90IENyeXB0b0tleVJTQTo6a2V5U2l6ZUluQml0cygpIGNv
bnN0CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gMDsKKyAgICBSU0EqIHJz
YSA9IEVWUF9QS0VZX2dldDBfUlNBKG1fcGxhdGZvcm1LZXkuZ2V0KCkpOworICAgIGlmICghcnNh
KQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBnZXRSU0FNb2R1bHVzTGVuZ3RoKHJz
YSk7CiB9CiAKLXZvaWQgQ3J5cHRvS2V5UlNBOjpnZW5lcmF0ZVBhaXIoQ3J5cHRvQWxnb3JpdGht
SWRlbnRpZmllciwgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgYm9vbCBoYXNIYXNoLCB1bnNp
Z25lZCBtb2R1bHVzTGVuZ3RoLCBjb25zdCBWZWN0b3I8dWludDhfdD4mIHB1YmxpY0V4cG9uZW50
LCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCwgS2V5UGFpckNhbGxiYWNr
JiYsIFZvaWRDYWxsYmFjayYmIGZhaWx1cmVDYWxsYmFjaywgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCopCisvLyBDb252ZXJ0IHRoZSBleHBvbmVudCB2ZWN0b3IgdG8gYSAzMi1iaXQgdmFsdWUsIGlm
IHBvc3NpYmxlLgorc3RhdGljIE9wdGlvbmFsPHVpbnQzMl90PiBleHBvbmVudFZlY3RvclRvVUlu
dDMyKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgZXhwb25lbnQpCiB7Ci0gICAgVU5VU0VEX1BBUkFN
KGhhc0hhc2gpOwotICAgIFVOVVNFRF9QQVJBTShtb2R1bHVzTGVuZ3RoKTsKLSAgICBVTlVTRURf
UEFSQU0ocHVibGljRXhwb25lbnQpOwotICAgIFVOVVNFRF9QQVJBTShleHRyYWN0YWJsZSk7Ci0g
ICAgVU5VU0VEX1BBUkFNKGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsK
KyAgICBpZiAoZXhwb25lbnQuc2l6ZSgpID4gNCkgeworICAgICAgICBpZiAoc3RkOjphbnlfb2Yo
ZXhwb25lbnQuYmVnaW4oKSwgZXhwb25lbnQuZW5kKCkgLSA0LCBbXSh1aW50OF90IGVsZW1lbnQp
IHsgcmV0dXJuICEhZWxlbWVudDsgfSkpCisgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0
OworICAgIH0KKworICAgIHVpbnQzMl90IHJlc3VsdCA9IDA7CisgICAgZm9yIChzaXplX3Qgc2l6
ZSA9IGV4cG9uZW50LnNpemUoKSwgaSA9IHN0ZDo6bWluPHNpemVfdD4oNCwgc2l6ZSk7IGkgPiAw
OyAtLWkpIHsKKyAgICAgICAgcmVzdWx0IDw8PSA4OworICAgICAgICByZXN1bHQgKz0gZXhwb25l
bnRbc2l6ZSAtIGldOworICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLVJlZlB0cjxD
cnlwdG9LZXlSU0E+IENyeXB0b0tleVJTQTo6aW1wb3J0U3BraShDcnlwdG9BbGdvcml0aG1JZGVu
dGlmaWVyLCBPcHRpb25hbDxDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyPiwgVmVjdG9yPHVpbnQ4
X3Q+JiYsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFwKQordm9pZCBDcnlw
dG9LZXlSU0E6OmdlbmVyYXRlUGFpcihDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyIGFsZ29yaXRo
bSwgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBoYXNoLCBib29sIGhhc0hhc2gsIHVuc2lnbmVk
IG1vZHVsdXNMZW5ndGgsIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgcHVibGljRXhwb25lbnQsIGJv
b2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFwIHVzYWdlcywgS2V5UGFpckNhbGxi
YWNrJiYgY2FsbGJhY2ssIFZvaWRDYWxsYmFjayYmIGZhaWx1cmVDYWxsYmFjaywgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCopCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGV4dHJhY3RhYmxlKTsKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBudWxscHRyOworICAgIC8vIE9wZW5TU0wgZG9l
c24ndCByZXBvcnQgYW4gZXJyb3IgaWYgdGhlIGV4cG9uZW50IGlzIHNtYWxsZXIgdGhhbiB0aHJl
ZSBvciBldmVuLgorICAgIGF1dG8gZSA9IGV4cG9uZW50VmVjdG9yVG9VSW50MzIocHVibGljRXhw
b25lbnQpOworICAgIGlmICghZSB8fCAqZSA8IDMgfHwgISgqZSAmIDB4MSkpIHsKKyAgICAgICAg
ZmFpbHVyZUNhbGxiYWNrKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIGV4
cG9uZW50ID0gQklHTlVNUHRyKGNvbnZlcnRUb0JpZ051bWJlcihudWxscHRyLCBwdWJsaWNFeHBv
bmVudCkpOworICAgIGF1dG8gcHJpdmF0ZVJTQSA9IFJTQVB0cihSU0FfbmV3KCkpOworICAgIGlm
ICghZXhwb25lbnQgfHwgUlNBX2dlbmVyYXRlX2tleV9leChwcml2YXRlUlNBLmdldCgpLCBtb2R1
bHVzTGVuZ3RoLCBleHBvbmVudC5nZXQoKSwgbnVsbHB0cikgPD0gMCkgeworICAgICAgICBmYWls
dXJlQ2FsbGJhY2soKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8gcHVibGlj
UlNBID0gUlNBUHRyKFJTQVB1YmxpY0tleV9kdXAocHJpdmF0ZVJTQS5nZXQoKSkpOworICAgIGlm
ICghcHVibGljUlNBKSB7CisgICAgICAgIGZhaWx1cmVDYWxsYmFjaygpOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgYXV0byBwcml2YXRlUEtleSA9IEV2cFBLZXlQdHIoRVZQX1BLRVlf
bmV3KCkpOworICAgIGlmIChFVlBfUEtFWV9zZXQxX1JTQShwcml2YXRlUEtleS5nZXQoKSwgcHJp
dmF0ZVJTQS5nZXQoKSkgPD0gMCkgeworICAgICAgICBmYWlsdXJlQ2FsbGJhY2soKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8gcHVibGljUEtleSA9IEV2cFBLZXlQdHIoRVZQ
X1BLRVlfbmV3KCkpOworICAgIGlmIChFVlBfUEtFWV9zZXQxX1JTQShwdWJsaWNQS2V5LmdldCgp
LCBwdWJsaWNSU0EuZ2V0KCkpIDw9IDApIHsKKyAgICAgICAgZmFpbHVyZUNhbGxiYWNrKCk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIHB1YmxpY0tleSA9IENyeXB0b0tleVJT
QTo6Y3JlYXRlKGFsZ29yaXRobSwgaGFzaCwgaGFzSGFzaCwgQ3J5cHRvS2V5VHlwZTo6UHVibGlj
LCBXVEZNb3ZlKHB1YmxpY1BLZXkpLCB0cnVlLCB1c2FnZXMpOworICAgIGF1dG8gcHJpdmF0ZUtl
eSA9IENyeXB0b0tleVJTQTo6Y3JlYXRlKGFsZ29yaXRobSwgaGFzaCwgaGFzSGFzaCwgQ3J5cHRv
S2V5VHlwZTo6UHJpdmF0ZSwgV1RGTW92ZShwcml2YXRlUEtleSksIGV4dHJhY3RhYmxlLCB1c2Fn
ZXMpOworICAgIGNhbGxiYWNrKENyeXB0b0tleVBhaXIgeyBXVEZNb3ZlKHB1YmxpY0tleSksIFdU
Rk1vdmUocHJpdmF0ZUtleSkgfSk7CiB9CiAKLVJlZlB0cjxDcnlwdG9LZXlSU0E+IENyeXB0b0tl
eVJTQTo6aW1wb3J0UGtjczgoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciwgT3B0aW9uYWw8Q3J5
cHRvQWxnb3JpdGhtSWRlbnRpZmllcj4sIFZlY3Rvcjx1aW50OF90PiYmLCBib29sIGV4dHJhY3Rh
YmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1hcCkKK1JlZlB0cjxDcnlwdG9LZXlSU0E+IENyeXB0b0tl
eVJTQTo6aW1wb3J0U3BraShDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyIGlkZW50aWZpZXIsIE9w
dGlvbmFsPENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXI+IGhhc2gsIFZlY3Rvcjx1aW50OF90PiYm
IGtleURhdGEsIGJvb2wgZXh0cmFjdGFibGUsIENyeXB0b0tleVVzYWdlQml0bWFwIHVzYWdlcykK
IHsKLSAgICBVTlVTRURfUEFSQU0oZXh0cmFjdGFibGUpOwotICAgIG5vdEltcGxlbWVudGVkKCk7
Ci0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgLy8gV2UgbmVlZCBhIGxvY2FsIHBvaW50ZXIgdmFy
aWFibGUgdG8gcGFzcyB0byBkMmkgKERFUiB0byBpbnRlcm5hbCkgZnVuY3Rpb25zKCkuCisgICAg
Y29uc3QgdWludDhfdCogcHRyID0ga2V5RGF0YS5kYXRhKCk7CisKKyAgICAvLyBXZSB1c2UgZDJp
X1BVQktFWSgpIHRvIGltcG9ydCBhIHB1YmxpYyBrZXkuCisgICAgYXV0byBwa2V5ID0gRXZwUEtl
eVB0cihkMmlfUFVCS0VZKG51bGxwdHIsICZwdHIsIGtleURhdGEuc2l6ZSgpKSk7CisgICAgaWYg
KCFwa2V5KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgQ3J5cHRvS2V5UlNBKGlkZW50aWZpZXIsIGhhc2gudmFsdWVPcihDcnlwdG9BbGdvcml0aG1J
ZGVudGlmaWVyOjpTSEFfMSksICEhaGFzaCwgQ3J5cHRvS2V5VHlwZTo6UHVibGljLCBXVEZNb3Zl
KHBrZXkpLCBleHRyYWN0YWJsZSwgdXNhZ2VzKSk7Cit9CisKK1JlZlB0cjxDcnlwdG9LZXlSU0E+
IENyeXB0b0tleVJTQTo6aW1wb3J0UGtjczgoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBPcHRpb25hbDxDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyPiBoYXNoLCBWZWN0b3I8
dWludDhfdD4mJiBrZXlEYXRhLCBib29sIGV4dHJhY3RhYmxlLCBDcnlwdG9LZXlVc2FnZUJpdG1h
cCB1c2FnZXMpCit7CisgICAgLy8gV2UgbmVlZCBhIGxvY2FsIHBvaW50ZXIgdmFyaWFibGUgdG8g
cGFzcyB0byBkMmkgKERFUiB0byBpbnRlcm5hbCkgZnVuY3Rpb25zKCkuCisgICAgY29uc3QgdWlu
dDhfdCogcHRyID0ga2V5RGF0YS5kYXRhKCk7CisKKyAgICAvLyBXZSB1c2UgZDJpX1BLQ1M4X1BS
SVZfS0VZX0lORk8oKSB0byBpbXBvcnQgYSBwcml2YXRlIGtleS4KKyAgICBhdXRvIHA4aW5mID0g
UEtDUzhQcml2S2V5SW5mb1B0cihkMmlfUEtDUzhfUFJJVl9LRVlfSU5GTyhudWxscHRyLCAmcHRy
LCBrZXlEYXRhLnNpemUoKSkpOworICAgIGlmICghcDhpbmYpCisgICAgICAgIHJldHVybiBudWxs
cHRyOworCisgICAgYXV0byBwa2V5ID0gRXZwUEtleVB0cihFVlBfUEtDUzgyUEtFWShwOGluZi5n
ZXQoKSkpOworICAgIGlmICghcGtleSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBy
ZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tleVJTQShpZGVudGlmaWVyLCBoYXNoLnZhbHVlT3Io
Q3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6U0hBXzEpLCAhIWhhc2gsIENyeXB0b0tleVR5cGU6
OlByaXZhdGUsIFdURk1vdmUocGtleSksIGV4dHJhY3RhYmxlLCB1c2FnZXMpKTsKIH0KIAogRXhj
ZXB0aW9uT3I8VmVjdG9yPHVpbnQ4X3Q+PiBDcnlwdG9LZXlSU0E6OmV4cG9ydFNwa2koKSBjb25z
dAogewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1
cHBvcnRlZEVycm9yIH07CisgICAgaWYgKHR5cGUoKSAhPSBDcnlwdG9LZXlUeXBlOjpQdWJsaWMp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKworICAg
IGludCBsZW4gPSBpMmRfUFVCS0VZKG1fcGxhdGZvcm1LZXkuZ2V0KCksIG51bGxwdHIpOworICAg
IGlmIChsZW4gPCAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3Ig
fTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBrZXlEYXRhKGxlbik7CisgICAgYXV0byBwdHIgPSBr
ZXlEYXRhLmRhdGEoKTsKKyAgICBpZiAoaTJkX1BVQktFWShtX3BsYXRmb3JtS2V5LmdldCgpLCAm
cHRyKSA8IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRpb25FcnJvciB9Owor
CisgICAgcmV0dXJuIGtleURhdGE7CiB9CiAKIEV4Y2VwdGlvbk9yPFZlY3Rvcjx1aW50OF90Pj4g
Q3J5cHRvS2V5UlNBOjpleHBvcnRQa2NzOCgpIGNvbnN0CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQo
KTsKLSAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBpZiAo
dHlwZSgpICE9IENyeXB0b0tleVR5cGU6OlByaXZhdGUpCisgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKworICAgIGF1dG8gcDhpbmYgPSBQS0NTOFByaXZL
ZXlJbmZvUHRyKEVWUF9QS0VZMlBLQ1M4KG1fcGxhdGZvcm1LZXkuZ2V0KCkpKTsKKyAgICBpZiAo
IXA4aW5mKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0aW9uRXJyb3IgfTsKKwor
ICAgIGludCBsZW4gPSBpMmRfUEtDUzhfUFJJVl9LRVlfSU5GTyhwOGluZi5nZXQoKSwgbnVsbHB0
cik7CisgICAgaWYgKGxlbiA8IDApCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBPcGVyYXRp
b25FcnJvciB9OworCisgICAgVmVjdG9yPHVpbnQ4X3Q+IGtleURhdGEobGVuKTsKKyAgICBhdXRv
IHB0ciA9IGtleURhdGEuZGF0YSgpOworICAgIGlmIChpMmRfUEtDUzhfUFJJVl9LRVlfSU5GTyhw
OGluZi5nZXQoKSwgJnB0cikgPCAwKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgT3BlcmF0
aW9uRXJyb3IgfTsKKworICAgIHJldHVybiBrZXlEYXRhOworfQorCithdXRvIENyeXB0b0tleVJT
QTo6YWxnb3JpdGhtKCkgY29uc3QgLT4gS2V5QWxnb3JpdGhtCit7CisgICAgUlNBKiByc2EgPSBF
VlBfUEtFWV9nZXQwX1JTQShtX3BsYXRmb3JtS2V5LmdldCgpKTsKKworICAgIGF1dG8gbW9kdWx1
c0xlbmd0aCA9IGdldFJTQU1vZHVsdXNMZW5ndGgocnNhKTsKKyAgICBhdXRvIHB1YmxpY0V4cG9u
ZW50ID0gcnNhID8gY29udmVydFRvQnl0ZXMocnNhLT5lKSA6IFZlY3Rvcjx1aW50OF90PiB7IH07
CisKKyAgICBpZiAobV9yZXN0cmljdGVkVG9TcGVjaWZpY0hhc2gpIHsKKyAgICAgICAgQ3J5cHRv
UnNhSGFzaGVkS2V5QWxnb3JpdGhtIHJlc3VsdDsKKyAgICAgICAgcmVzdWx0Lm5hbWUgPSBDcnlw
dG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkubmFtZShhbGdvcml0aG1JZGVudGlmaWVy
KCkpOworICAgICAgICByZXN1bHQubW9kdWx1c0xlbmd0aCA9IG1vZHVsdXNMZW5ndGg7CisgICAg
ICAgIHJlc3VsdC5wdWJsaWNFeHBvbmVudCA9IFVpbnQ4QXJyYXk6OnRyeUNyZWF0ZShwdWJsaWNF
eHBvbmVudC5kYXRhKCksIHB1YmxpY0V4cG9uZW50LnNpemUoKSk7CisgICAgICAgIHJlc3VsdC5o
YXNoLm5hbWUgPSBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkubmFtZShtX2hh
c2gpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKworICAgIENyeXB0b1JzYUtleUFs
Z29yaXRobSByZXN1bHQ7CisgICAgcmVzdWx0Lm5hbWUgPSBDcnlwdG9BbGdvcml0aG1SZWdpc3Ry
eTo6c2luZ2xldG9uKCkubmFtZShhbGdvcml0aG1JZGVudGlmaWVyKCkpOworICAgIHJlc3VsdC5t
b2R1bHVzTGVuZ3RoID0gbW9kdWx1c0xlbmd0aDsKKyAgICByZXN1bHQucHVibGljRXhwb25lbnQg
PSBVaW50OEFycmF5Ojp0cnlDcmVhdGUocHVibGljRXhwb25lbnQuZGF0YSgpLCBwdWJsaWNFeHBv
bmVudC5zaXplKCkpOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHN0ZDo6dW5pcXVlX3B0cjxD
cnlwdG9LZXlSU0FDb21wb25lbnRzPiBDcnlwdG9LZXlSU0E6OmV4cG9ydERhdGEoKSBjb25zdAog
ewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIG51bGxwdHI7CisgICAgUlNBKiBy
c2EgPSBFVlBfUEtFWV9nZXQwX1JTQShtX3BsYXRmb3JtS2V5LmdldCgpKTsKKyAgICBpZiAoIXJz
YSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBzd2l0Y2ggKHR5cGUoKSkgeworICAg
IGNhc2UgQ3J5cHRvS2V5VHlwZTo6UHVibGljOgorICAgICAgICAvLyBXZSBuZWVkIHRoZSBwdWJs
aWMgbW9kdWx1cyBhbmQgZXhwb25lbnQgZm9yIHRoZSBwdWJsaWMga2V5LgorICAgICAgICBpZiAo
IXJzYS0+biB8fCAhcnNhLT5lKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAg
IHJldHVybiBDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpjcmVhdGVQdWJsaWMoY29udmVydFRvQnl0
ZXMocnNhLT5uKSwgY29udmVydFRvQnl0ZXMocnNhLT5lKSk7CisgICAgY2FzZSBDcnlwdG9LZXlU
eXBlOjpQcml2YXRlOiB7CisgICAgICAgIC8vIFdlIG5lZWQgdGhlIHB1YmxpYyBtb2R1bHVzLCBl
eHBvbmVudCwgYW5kIHByaXZhdGUgZXhwb25lbnQsIGFzIHdlbGwgYXMgcCBhbmQgcSBwcmltZSBp
bmZvcm1hdGlvbi4KKyAgICAgICAgaWYgKCFyc2EtPm4gfHwgIXJzYS0+ZSB8fCAhcnNhLT5kIHx8
ICFyc2EtPnAgfHwgIXJzYS0+cSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAg
ICAgIENyeXB0b0tleVJTQUNvbXBvbmVudHM6OlByaW1lSW5mbyBmaXJzdFByaW1lSW5mbzsKKyAg
ICAgICAgZmlyc3RQcmltZUluZm8ucHJpbWVGYWN0b3IgPSBjb252ZXJ0VG9CeXRlcyhyc2EtPnAp
OworCisgICAgICAgIENyeXB0b0tleVJTQUNvbXBvbmVudHM6OlByaW1lSW5mbyBzZWNvbmRQcmlt
ZUluZm87CisgICAgICAgIHNlY29uZFByaW1lSW5mby5wcmltZUZhY3RvciA9IGNvbnZlcnRUb0J5
dGVzKHJzYS0+cSk7CisKKyAgICAgICAgYXV0byBjb250ZXh0ID0gQk5DdHhQdHIoQk5fQ1RYX25l
dygpKTsKKyAgICAgICAgLy8gZG1wMSAtLSBkIG1vZCAocCAtIDEpCisgICAgICAgIGlmIChyc2Et
PmRtcDEpCisgICAgICAgICAgICBmaXJzdFByaW1lSW5mby5mYWN0b3JDUlRFeHBvbmVudCA9IGNv
bnZlcnRUb0J5dGVzKHJzYS0+ZG1wMSk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXV0
byBkbXAxID0gQklHTlVNUHRyKEJOX25ldygpKTsKKyAgICAgICAgICAgIGF1dG8gcG0xID0gQklH
TlVNUHRyKEJOX2R1cChyc2EtPnApKTsKKyAgICAgICAgICAgIGlmIChCTl9zdWJfd29yZChwbTEu
Z2V0KCksIDEpID09IDEgJiYgQk5fbW9kKGRtcDEuZ2V0KCksIHJzYS0+ZCwgcG0xLmdldCgpLCBj
b250ZXh0LmdldCgpKSA9PSAxKQorICAgICAgICAgICAgICAgIGZpcnN0UHJpbWVJbmZvLmZhY3Rv
ckNSVEV4cG9uZW50ID0gY29udmVydFRvQnl0ZXMoZG1wMS5nZXQoKSk7CisgICAgICAgIH0KKwor
ICAgICAgICAvLyBkbXExIC0tIGQgbW9kIChxIC0gMSkKKyAgICAgICAgaWYgKHJzYS0+ZG1xMSkK
KyAgICAgICAgICAgIHNlY29uZFByaW1lSW5mby5mYWN0b3JDUlRFeHBvbmVudCA9IGNvbnZlcnRU
b0J5dGVzKHJzYS0+ZG1xMSk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXV0byBkbXEx
ID0gQklHTlVNUHRyKEJOX25ldygpKTsKKyAgICAgICAgICAgIGF1dG8gcW0xID0gQklHTlVNUHRy
KEJOX2R1cChyc2EtPnEpKTsKKyAgICAgICAgICAgIGlmIChCTl9zdWJfd29yZChxbTEuZ2V0KCks
IDEpID09IDEgJiYgQk5fbW9kKGRtcTEuZ2V0KCksIHJzYS0+ZCwgcW0xLmdldCgpLCBjb250ZXh0
LmdldCgpKSA9PSAxKQorICAgICAgICAgICAgICAgIHNlY29uZFByaW1lSW5mby5mYWN0b3JDUlRF
eHBvbmVudCA9IGNvbnZlcnRUb0J5dGVzKGRtcTEuZ2V0KCkpOworICAgICAgICB9CisKKyAgICAg
ICAgLy8gaXFtcCAtLSBxXigtMSkgbW9kIHAKKyAgICAgICAgaWYgKHJzYS0+aXFtcCkKKyAgICAg
ICAgICAgIHNlY29uZFByaW1lSW5mby5mYWN0b3JDUlRDb2VmZmljaWVudCA9IGNvbnZlcnRUb0J5
dGVzKHJzYS0+aXFtcCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXV0byBpcW1wID0g
QklHTlVNUHRyKEJOX21vZF9pbnZlcnNlKG51bGxwdHIsIHJzYS0+cSwgcnNhLT5wLCBjb250ZXh0
LmdldCgpKSk7CisgICAgICAgICAgICBpZiAoaXFtcCkKKyAgICAgICAgICAgICAgICBzZWNvbmRQ
cmltZUluZm8uZmFjdG9yQ1JUQ29lZmZpY2llbnQgPSBjb252ZXJ0VG9CeXRlcyhpcW1wLmdldCgp
KTsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiBDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpj
cmVhdGVQcml2YXRlV2l0aEFkZGl0aW9uYWxEYXRhKAorICAgICAgICAgICAgY29udmVydFRvQnl0
ZXMocnNhLT5uKSwgY29udmVydFRvQnl0ZXMocnNhLT5lKSwgY29udmVydFRvQnl0ZXMocnNhLT5k
KSwKKyAgICAgICAgICAgIFdURk1vdmUoZmlyc3RQcmltZUluZm8pLCBXVEZNb3ZlKHNlY29uZFBy
aW1lSW5mbyksIFZlY3RvcjxDcnlwdG9LZXlSU0FDb21wb25lbnRzOjpQcmltZUluZm8+IHsgfSk7
CisgICAgfQorICAgIGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlwdG9V
bmlxdWVQdHIuaCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xDcnlwdG9V
bmlxdWVQdHIuaAppbmRleCBlZTBiOTVkZTgzM2EwZmQxNDgzM2QwZGZhZWMzMjJlNDQ0ZDc1ZDM5
Li5iMGVlNDExNDhmN2ZiZDU3ZGI1YjFlYjY2ODlkODJkMzljZTQzZmZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NMQ3J5cHRvVW5pcXVlUHRyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTENyeXB0b1VuaXF1ZVB0ci5o
CkBAIC0yNyw3ICsyNyw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG1lbW9yeT4KLSNp
bmNsdWRlIDxvcGVuc3NsL2V2cC5oPgorI2luY2x1ZGUgPG9wZW5zc2wvWDUwOS5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKQEAgLTY5LDQgKzY5LDU1IEBAIHN0cnVjdCBPcGVuU1NMQ3J5cHRv
UHRyRGVsZXRlcjxFVlBfUEtFWT4gewogCiB1c2luZyBFdnBQS2V5UHRyID0gT3BlblNTTENyeXB0
b1B0cjxFVlBfUEtFWT47CiAKK3RlbXBsYXRlIDw+CitzdHJ1Y3QgT3BlblNTTENyeXB0b1B0ckRl
bGV0ZXI8RVZQX1BLRVlfQ1RYPiB7CisgICAgdm9pZCBvcGVyYXRvcigpKEVWUF9QS0VZX0NUWCog
cHRyKSBjb25zdAorICAgIHsKKyAgICAgICAgRVZQX1BLRVlfQ1RYX2ZyZWUocHRyKTsKKyAgICB9
Cit9OworCit1c2luZyBFdnBQS2V5Q3R4UHRyID0gT3BlblNTTENyeXB0b1B0cjxFVlBfUEtFWV9D
VFg+OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPFJTQT4g
eworICAgIHZvaWQgb3BlcmF0b3IoKShSU0EqIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIFJT
QV9mcmVlKHB0cik7CisgICAgfQorfTsKKwordXNpbmcgUlNBUHRyID0gT3BlblNTTENyeXB0b1B0
cjxSU0E+OworCit0ZW1wbGF0ZSA8Pgorc3RydWN0IE9wZW5TU0xDcnlwdG9QdHJEZWxldGVyPFBL
Q1M4X1BSSVZfS0VZX0lORk8+IHsKKyAgICB2b2lkIG9wZXJhdG9yKCkoUEtDUzhfUFJJVl9LRVlf
SU5GTyogcHRyKSBjb25zdAorICAgIHsKKyAgICAgICAgUEtDUzhfUFJJVl9LRVlfSU5GT19mcmVl
KHB0cik7CisgICAgfQorfTsKKwordXNpbmcgUEtDUzhQcml2S2V5SW5mb1B0ciA9IE9wZW5TU0xD
cnlwdG9QdHI8UEtDUzhfUFJJVl9LRVlfSU5GTz47CisKK3RlbXBsYXRlIDw+CitzdHJ1Y3QgT3Bl
blNTTENyeXB0b1B0ckRlbGV0ZXI8QklHTlVNPiB7CisgICAgdm9pZCBvcGVyYXRvcigpKEJJR05V
TSogcHRyKSBjb25zdAorICAgIHsKKyAgICAgICAgQk5fY2xlYXJfZnJlZShwdHIpOworICAgIH0K
K307CisKK3VzaW5nIEJJR05VTVB0ciA9IE9wZW5TU0xDcnlwdG9QdHI8QklHTlVNPjsKKwordGVt
cGxhdGUgPD4KK3N0cnVjdCBPcGVuU1NMQ3J5cHRvUHRyRGVsZXRlcjxCTl9DVFg+IHsKKyAgICB2
b2lkIG9wZXJhdG9yKCkoQk5fQ1RYKiBwdHIpIGNvbnN0CisgICAgeworICAgICAgICBCTl9DVFhf
ZnJlZShwdHIpOworICAgIH0KK307CisKK3VzaW5nIEJOQ3R4UHRyID0gT3BlblNTTENyeXB0b1B0
cjxCTl9DVFg+OworCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRpZXMuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGQ5
ZjQ1NDQ2YTBmNGMwZGIxZWQ3NmM1ZmIwYjE0YWRlMjE1ZGNjOAotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRpZXMuY3BwCkBAIC0w
LDAgKzEsNzkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgU29ueSBJbnRlcmFjdGl2ZSBF
bnRlcnRhaW5tZW50IEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIk9wZW5TU0xVdGlsaXRpZXMuaCIKKworI2lmIEVOQUJMRShXRUJfQ1JZUFRPKQorCisjaW5j
bHVkZSAiT3BlblNTTENyeXB0b1VuaXF1ZVB0ci5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K2NvbnN0IEVWUF9NRCogZGlnZXN0QWxnb3JpdGhtKENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIg
aGFzaEZ1bmN0aW9uKQoreworICAgIHN3aXRjaCAoaGFzaEZ1bmN0aW9uKSB7CisgICAgY2FzZSBD
cnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfMToKKyAgICAgICAgcmV0dXJuIEVWUF9zaGEx
KCk7CisgICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfMjI0OgorICAgICAg
ICByZXR1cm4gRVZQX3NoYTIyNCgpOworICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmll
cjo6U0hBXzI1NjoKKyAgICAgICAgcmV0dXJuIEVWUF9zaGEyNTYoKTsKKyAgICBjYXNlIENyeXB0
b0FsZ29yaXRobUlkZW50aWZpZXI6OlNIQV8zODQ6CisgICAgICAgIHJldHVybiBFVlBfc2hhMzg0
KCk7CisgICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpTSEFfNTEyOgorICAgICAg
ICByZXR1cm4gRVZQX3NoYTUxMigpOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgIH0KK30KKworT3B0aW9uYWw8VmVjdG9yPHVpbnQ4X3Q+PiBjYWxjdWxhdGVEaWdl
c3QoY29uc3QgRVZQX01EKiBhbGdvcml0aG0sIGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgbWVzc2Fn
ZSkKK3sKKyAgICBFdnBEaWdlc3RDdHhQdHIgY3R4OworICAgIGlmICghKGN0eCA9IEV2cERpZ2Vz
dEN0eFB0cihFVlBfTURfQ1RYX2NyZWF0ZSgpKSkpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxv
cHQ7CisKKyAgICBpbnQgZGlnZXN0TGVuZ3RoID0gRVZQX01EX3NpemUoYWxnb3JpdGhtKTsKKyAg
ICBpZiAoZGlnZXN0TGVuZ3RoIDw9IDApCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Cisg
ICAgVmVjdG9yPHVpbnQ4X3Q+IGRpZ2VzdChkaWdlc3RMZW5ndGgpOworCisgICAgaWYgKEVWUF9E
aWdlc3RJbml0X2V4KGN0eC5nZXQoKSwgYWxnb3JpdGhtLCBudWxscHRyKSAhPSAxKQorICAgICAg
ICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgaWYgKEVWUF9EaWdlc3RVcGRhdGUoY3R4Lmdl
dCgpLCBtZXNzYWdlLmRhdGEoKSwgbWVzc2FnZS5zaXplKCkpICE9IDEpCisgICAgICAgIHJldHVy
biBXVEY6Om51bGxvcHQ7CisKKyAgICBpZiAoRVZQX0RpZ2VzdEZpbmFsX2V4KGN0eC5nZXQoKSwg
ZGlnZXN0LmRhdGEoKSwgbnVsbHB0cikgIT0gMSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9w
dDsKKworICAgIHJldHVybiBkaWdlc3Q7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
CisjZW5kaWYgLy8gRU5BQkxFKFdFQl9DUllQVE8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jcnlwdG8vb3BlbnNzbC9PcGVuU1NMVXRpbGl0aWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlw
dG8vb3BlbnNzbC9PcGVuU1NMVXRpbGl0aWVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDJjOTFiZmM0N2I4OGYz
YmRmYzQ2ZDVmOTg4NjgwNzZmMzZkYTk2OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2NyeXB0by9vcGVuc3NsL09wZW5TU0xVdGlsaXRpZXMuaApAQCAtMCwwICsxLDQ0IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJ
bmMuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ3J5cHRvQWxnb3JpdGht
SWRlbnRpZmllci5oIgorI2luY2x1ZGUgPG9wZW5zc2wvZXZwLmg+CisjaW5jbHVkZSA8c3RkaW50
Lmg+CisjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgor
CisjaWYgRU5BQkxFKFdFQl9DUllQVE8pCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY29uc3Qg
RVZQX01EKiBkaWdlc3RBbGdvcml0aG0oQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBoYXNoRnVu
Y3Rpb24pOworCitPcHRpb25hbDxWZWN0b3I8dWludDhfdD4+IGNhbGN1bGF0ZURpZ2VzdChjb25z
dCBFVlBfTUQqIGFsZ29yaXRobSwgY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBtZXNzYWdlKTsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9DUllQVE8pCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9PcGVuU1NMLmNtYWtlIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vT3BlblNTTC5jbWFrZQppbmRleCBhNGUyYWE1NTExMDdlYjAwY2I3
ODEzOGU1NzczNTcwY2ExNDlmYTE2Li43ZTY3ZDJlYjEyZTY2NTg4OWY4NjdiNzA1N2JlMzNiYTI2
YTEwMjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9PcGVuU1NMLmNtYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL09wZW5TU0wuY21ha2UKQEAgLTE3LDYgKzE3
LDcgQEAgaWYgKEVOQUJMRV9XRUJfQ1JZUFRPKQogICAgICAgICBjcnlwdG8vb3BlbnNzbC9Dcnlw
dG9BbGdvcml0aG1SZWdpc3RyeU9wZW5TU0wuY3BwCiAgICAgICAgIGNyeXB0by9vcGVuc3NsL0Ny
eXB0b0tleUVDT3BlblNTTC5jcHAKICAgICAgICAgY3J5cHRvL29wZW5zc2wvQ3J5cHRvS2V5UlNB
T3BlblNTTC5jcHAKKyAgICAgICAgY3J5cHRvL29wZW5zc2wvT3BlblNTTFV0aWxpdGllcy5jcHAK
ICAgICAgICAgY3J5cHRvL29wZW5zc2wvU2VyaWFsaXplZENyeXB0b0tleVdyYXBPcGVuU1NMLmNw
cAogICAgICkKIGVuZGlmICgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvT3B0aW9uc1BsYXlT
dGF0aW9uLmNtYWtlIGIvU291cmNlL2NtYWtlL09wdGlvbnNQbGF5U3RhdGlvbi5jbWFrZQppbmRl
eCBkOGYzYTUyODZlMzJkODZkNGY0ZmQ4MTJjYzExNjFmODNlYmJhMGNhLi4xMDY1M2IzMmY5MWEz
M2Y2OTkxODVkODQyOWI0OTM5ZjIyOTdkMDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0
aW9uc1BsYXlTdGF0aW9uLmNtYWtlCisrKyBiL1NvdXJjZS9jbWFrZS9PcHRpb25zUGxheVN0YXRp
b24uY21ha2UKQEAgLTE0NSw5ICsxNDUsNiBAQCBzZXQoQ01BS0VfQ1hYX1NUQU5EQVJEX0xJQlJB
UklFUwogICAgICIke0NNQUtFX0NYWF9TVEFOREFSRF9MSUJSQVJJRVN9ICR7Q19TVERfTElCUkFS
WX0iCiAgICkKIAotIyBUT0RPOiBBZGQgYSBjaGVjayBmb3IgSEFWRV9SU0FfUFNTIGZvciBzdXBw
b3J0IG9mIENyeXB0b0FsZ29yaXRobVJTQV9QU1MKLSMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwNjYzNQotCiBTRVRfQU5EX0VYUE9TRV9UT19CVUlMRChIQVZFX1BU
SFJFQURfU0VUTkFNRV9OUCBPTikKIAogU0VUX0FORF9FWFBPU0VfVE9fQlVJTEQoVVNFX0NBSVJP
IE9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL09wdGlvbnNXaW5DYWlyby5jbWFrZSBiL1Nv
dXJjZS9jbWFrZS9PcHRpb25zV2luQ2Fpcm8uY21ha2UKaW5kZXggN2RlNTAzZWQxZTIyNTljNjAz
YWMyYTE3NGEwNWFlMTkxMjg1MWQyMy4uNTEyMzkyZTY0MjRlYTY0ZmY2NWZmZmMxNGRmMzAzNDRj
ZTZjYmU5OSAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL09wdGlvbnNXaW5DYWlyby5jbWFrZQor
KysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc1dpbkNhaXJvLmNtYWtlCkBAIC00MSw5ICs0MSw2IEBA
IGlmIChXZWJQX0ZPVU5EKQogICAgIFNFVF9BTkRfRVhQT1NFX1RPX0JVSUxEKFVTRV9XRUJQIE9O
KQogZW5kaWYgKCkKIAotIyBUT0RPOiBBZGQgYSBjaGVjayBmb3IgSEFWRV9SU0FfUFNTIGZvciBz
dXBwb3J0IG9mIENyeXB0b0FsZ29yaXRobVJTQV9QU1MKLSMgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNjYzNQotCiBzZXQoVVNFX0FOR0xFX0VHTCBPTikKIHNldChV
U0VfQU5HTEVfV0VCR0wgT04pCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlNmFmYTE2YmVmNmE2NjFiNGE1Njg4ODYwMjFl
NWFmZjdlZTViMTQxLi5lN2M3MDRhOTI5OTM4NWI1ODBiZGFhYmMyOTI2NGMxNmM1ODMwYjBjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjEtMDUtMDUgIFlvc2hpYWtpIEppdHN1a2F3YSAgPHlv
c2hpYWtpLmppdHN1a2F3YUBzb255LmNvbT4KKworICAgICAgICBbT3BlblNTTF0gSW1wbGVtZW50
IENyeXB0b0FsZ29yaXRobVJTQSoKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNTI5NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEltcGxlbWVudCBSU0EgZm9yIE9wZW5TU0wuCisKKyAgICAgICAgSW1wbGVt
ZW50IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLCBDcnlwdG9BbGdvcml0aG1SU0FfUFNTLAorICAg
ICAgICBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LCBDcnlwdG9BbGdvcml0aG1SU0FT
QV9QS0NTMV92MV81LAorICAgICAgICBhbmQgQ3J5cHRvS2V5UlNBIGZvciBPcGVuU1NMLgorCisg
ICAgICAgIEFkZCB3aW5jYWlybyBwbGF0Zm9ybSBleHBlY3RhdGlvbnMgZm9yCisgICAgICAgIHJz
YS1nZW5lcmF0ZS9pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLCBtb2RpZnlpbmcgUlNB
LVBTUworICAgICAgICByZWxhdGVkIHJlc3VsdHMgZnJvbSBOb3RTdXBwb3J0ZWQgdG8gYXBwcm9w
cmlhdGUgZXJyb3JzLgorCisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0
aW9uczogVW5za2lwIHRlc3RzIHRoYXQgYXJlIG5vdyBzdXBwb3J0ZWQuCisgICAgICAgICogcGxh
dGZvcm0vd2luY2Fpcm8vY3J5cHRvL3N1YnRsZS9yc2EtZ2VuZXJhdGUta2V5LW1hbGZvcm1lZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vd2luY2Fp
cm8vY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorCiAyMDIxLTA0LTI4ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8
cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIFVzaW5nIGEgbW9kaWZpZXIg
a2V5IG9uIGFuIGVsZW1lbnQgbWFrZXMgaXQgc3RvcCBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXgg
NmZhYjM0NDAyMmI1MWJkMDZkYjc5NTk0ZjFkMThlMGJmYWE1YzMyYS4uNjkyZjEyMzY1ZDZhODQy
NTA0N2VjNjgwNzA4YjMxYTM3ZmNmZWEwZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCkBAIC03MzQsMjIgKzczNCwxMCBAQCB3ZWJraXQub3Jn
L2IvMjIxNDQ1IGZhc3QvdGV4dC9pbnRlcm5hdGlvbmFsL3N5c3RlbS1sYW5ndWFnZS9qcC1jaXJj
bGVkLmh0bWwgWyBTawogIyBjcnlwdG8KICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8KIAotIyBDcnlwdHMgb3RoZXIgdGhhbiBBRVMgYXJlIG5vdCBzdXBwb3J0ZWQuCi1jcnlwdG8v
c3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS11bndyYXAtandrLXJzYS1rZXktcHJpdmF0ZS5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS11bndyYXAtandrLXJz
YS1rZXktcHVibGljLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvYWVzLWNiYy1pbXBvcnQt
a2V5LXVud3JhcC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9hZXMtY2Jj
LWltcG9ydC1rZXktdW53cmFwLXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
YWVzLWNiYy1pbXBvcnQta2V5LXdyYXAtandrLXJzYS1rZXktcHJpdmF0ZS5odG1sIFsgU2tpcCBd
Ci1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS13cmFwLWp3ay1yc2Eta2V5LXB1Ymxp
Yy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS13cmFwLXBr
Y3M4LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWtleS13
cmFwLXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvYWVzLWV4cG9ydC1rZXkt
bWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQorIyBDcnlwdHMgb3RoZXIgdGhhbiBB
RVMgYW5kIFJTQSBhcmUgbm90IHN1cHBvcnRlZC4KIGNyeXB0by9zdWJ0bGUvYWVzLWdjbS1pbXBv
cnQta2V5LXVud3JhcC1lYy1yYXcta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvYWVz
LWltcG9ydC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1
YnRsZS9kZWNyeXB0LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9z
dWJ0bGUvZGVyaXZlLWJpdHMtbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQogY3J5
cHRvL3N1YnRsZS9kZXJpdmUta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0K
LWNyeXB0by9zdWJ0bGUvZGlnZXN0LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0K
IGNyeXB0by9zdWJ0bGUvZWNkaC1kZXJpdmUtYml0cy1sZW5ndGgtbGltaXRzLmh0bWwgWyBTa2lw
IF0KIGNyeXB0by9zdWJ0bGUvZWNkaC1kZXJpdmUtYml0cy1tYWxmb3JtZWQtcGFyYW1ldHJzLmh0
bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZWNkaC1nZW5lcmF0ZS1leHBvcnQtandrLWtleS1w
MjU2Lmh0bWwgWyBTa2lwIF0KQEAgLTg0MywxNDYgKzgzMSw0NiBAQCBjcnlwdG8vc3VidGxlL2Vj
LWltcG9ydC1zcGtpLWtleS1leHBvcnQtcmF3LWtleS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3Vi
dGxlL2VjLWltcG9ydC1zcGtpLWtleS1leHBvcnQtc3BraS1rZXktcDI1Ni5odG1sIFsgU2tpcCBd
CiBjcnlwdG8vc3VidGxlL2VjLWltcG9ydC1zcGtpLWtleS1leHBvcnQtc3BraS1rZXktcDM4NC5o
dG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2VjLWltcG9ydC1zcGtpLWtleS1leHBvcnQtc3Br
aS1rZXktcDUyMS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2VuY3J5cHQtbWFsZm9ybWVk
LXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9leHBvcnQta2V5LW1hbGZv
cm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZ2MuaHRtbCBbIFNr
aXAgXQogY3J5cHRvL3N1YnRsZS9nYy0yLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvZ2Mt
My5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL2dlbmVyYXRlLWtleS1tYWxmb3JtZWQtcGFy
YW1ldGVycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2hrZGYtZGVyaXZlLWJpdHMtbGVu
Z3RoLWxpbWl0cy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2hrZGYtZGVyaXZlLWJpdHMt
bWFsZm9ybWVkLXBhcmFtZXRycy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2hrZGYtaW1w
b3J0LWtleS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2hrZGYtaW1wb3J0LWtleS1kZXJp
dmUtYml0cy5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL2hrZGYtaW1wb3J0LWtleS1kZXJp
dmUtaG1hYy1rZXkuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9oa2RmLWltcG9ydC1rZXkt
bWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9pbXBvcnQt
a2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUvcGJr
ZGYyLWRlcml2ZS1iaXRzLW1hbGZvcm1lZC1wYXJhbWV0cnMuaHRtbCBbIFNraXAgXQogY3J5cHRv
L3N1YnRsZS9wYmtkZjItaW1wb3J0LWtleS5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3Bi
a2RmMi1pbXBvcnQta2V5LWRlcml2ZS1iaXRzLmh0bWwgWyBTa2lwIF0KIGNyeXB0by9zdWJ0bGUv
cGJrZGYyLWltcG9ydC1rZXktZGVyaXZlLWhtYWMta2V5Lmh0bWwgWyBTa2lwIF0KIGNyeXB0by9z
dWJ0bGUvcGJrZGYyLWltcG9ydC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAg
XQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81LWdlbmVyYXRlLWV4cG9ydC1rZXktandr
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1nZW5lcmF0ZS1l
eHBvcnQta2V5LXBrY3M4Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEt
djFfNS1nZW5lcmF0ZS1leHBvcnQta2V5LXNwa2kuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2Flcy1wa2NzMS12MV81LWdlbmVyYXRlLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3Vi
dGxlL3JzYWVzLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5LWVuY3J5cHQtZGVjcnlwdC5odG1sIFsg
U2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYWVzLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5LWV4dHJh
Y3RhYmxlLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBv
cnQtandrLXByaXZhdGUta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtj
czEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2Flcy1wa2NzMS12MV81LWltcG9ydC1qd2stcHVibGljLWtleS1lbXB0eS11c2FnZXMuaHRt
bCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2NzMS12MV81LWltcG9ydC1qd2stcHVi
bGljLWtleS1sZWFkaW5nLXplcm8uaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1w
a2NzMS12MV81LWltcG9ydC1qd2stcHVibGljLWtleS1taW5pbXVtLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktbm9uLWV4
dHJhY3RhYmxlLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1p
bXBvcnQta2V5LWRlY3J5cHQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Flcy1wa2Nz
MS12MV81LWltcG9ydC1rZXktZW5jcnlwdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3Jz
YWVzLXBrY3MxLXYxXzUtaW1wb3J0LXBrY3M4LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3Vi
dGxlL3JzYWVzLXBrY3MxLXYxXzUtaW1wb3J0LXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhZXMtcGtjczEtdjFfNS1pbXBvcnQtc3BraS1rZXktZW1wdHktdXNhZ2VzLmh0
bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWV4cG9ydC1rZXktbWFsZm9ybWVkLXBhcmFt
ZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtZ2VuZXJhdGUta2V5LW1hbGZv
cm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1q
d2sta2V5LWV4cG9ydC1qd2sta2V5LXByaXZhdGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2EtaW1wb3J0LWp3ay1rZXktZXhwb3J0LWp3ay1rZXktcHVibGljLmh0bWwgWyBTa2lwIF0K
LWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1qd2sta2V5LWV4cG9ydC1wa2NzOC1rZXkuaHRtbCBb
IFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LWp3ay1rZXktZXhwb3J0LXNwa2kta2V5
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLWltcG9ydC1rZXktbWFsZm9ybWVkLXBh
cmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LXBrY3M4LWtl
eS1leHBvcnQtandrLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQt
cGtjczgta2V5LWV4cG9ydC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2EtaW1wb3J0LXNwa2kta2V5LWV4cG9ydC1qd2sta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvcnNhLWltcG9ydC1zcGtpLWtleS1leHBvcnQtc3BraS1rZXkuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LXNwa2ktc21hbGwta2V5Lmh0bWwgWyBTa2lwIF0KIGNy
eXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi5odG1sIFsgU2tpcCBdCiBjcnlwdG8vc3VidGxlL3Jz
YS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuaHRtbCBbIFNraXAgXQogY3J5cHRvL3N1YnRsZS9y
c2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLXByaXZhdGUuaHRtbCBbIFNraXAgXQogY3J5cHRv
L3N1YnRsZS9yc2EtaW5kZXhlZGRiLXByaXZhdGUuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRs
ZS9yc2Etb2FlcC1kZWNyeXB0LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvcnNhLW9hZXAtZW5jcnlwdC1tYWxmb3JtZWQtcGFyYW1ldGVycy5odG1sIFsg
U2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNo
YTEuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQt
a2V5LWp3ay1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5l
cmF0ZS1leHBvcnQta2V5LWp3ay1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGEzODQuaHRtbCBbIFNraXAgXQotY3J5
cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGE1MTIuaHRtbCBb
IFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1nZW5lcmF0ZS1leHBvcnQta2V5LXBrY3M4
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUtZXhwb3J0LWtl
eS1zcGtpLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUta2V5
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtZ2VuZXJhdGUta2V5LWVuY3J5
cHQtZGVjcnlwdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWdlbmVyYXRl
LWtleS1lbmNyeXB0LWRlY3J5cHQtbGFiZWwuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2Etb2FlcC1pbXBvcnQtandrLXByaXZhdGUta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0
bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMta2V5LWVtcHR5LXVzYWdlcy5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1qd2stcHVibGljLWtleS1zaGExLmh0
bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMta2V5
LXNoYTIyNC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1qd2st
cHVibGljLWtleS1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1p
bXBvcnQtandrLXB1YmxpYy1rZXktc2hhMzg0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
cnNhLW9hZXAtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTUxMi5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1rZXktZGVjcnlwdC5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1rZXktZGVjcnlwdC1sYWJlbC5odG1sIFsgU2tpcCBd
Ci1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1rZXktZW5jcnlwdC5odG1sIFsgU2tpcCBd
Ci1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1rZXktZW5jcnlwdC1sYWJlbC5odG1sIFsg
U2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1rZXktdW53cmFwLWp3ay1vY3Qt
a2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0LWtleS13cmFw
LWp3ay1vY3Qta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLW9hZXAtaW1wb3J0
LXBrY3M4LWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1z
cGtpLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1vYWVwLWltcG9ydC1zcGtp
LWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1w
bGFpbnRleHQtbGVuZ3RoLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5l
cmF0ZS1leHBvcnQta2V5LWp3ay1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNh
LXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRv
L3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTI1Ni5odG1sIFsgU2tp
cCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1qd2stc2hhMzg0
Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1leHBvcnQta2V5
LWp3ay1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRl
LWV4cG9ydC1rZXktcGtjczguaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdl
bmVyYXRlLWV4cG9ydC1rZXktc3BraS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1w
c3MtZ2VuZXJhdGUta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBv
cnQtandrLXByaXZhdGUta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1p
bXBvcnQtandrLXB1YmxpYy1rZXktZW1wdHktdXNhZ2VzLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvcnNhLXBzcy1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMS5odG1sIFsgU2tpcCBdCi1j
cnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTIyNC5odG1sIFsg
U2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTI1
Ni5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3ay1wdWJsaWMt
a2V5LXNoYTM4NC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0LWp3
ay1wdWJsaWMta2V5LXNoYTUxMi5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3Mt
aW1wb3J0LWtleS1zaWduLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBv
cnQta2V5LXNpZ24tbGFyZ2Utc2FsdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1w
c3MtaW1wb3J0LWtleS12ZXJpZnkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNz
LWltcG9ydC1wa2NzOC1rZXkuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWlt
cG9ydC1zcGtpLWtleS5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYS1wc3MtaW1wb3J0
LXNwa2kta2V5LWVtcHR5LXVzYWdlcy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNz
YS1wa2NzMS12MV81LWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTEuaHRtbCBbIFNraXAgXQot
Y3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1z
aGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1nZW5l
cmF0ZS1leHBvcnQta2V5LWp3ay1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9y
c2Fzc2EtcGtjczEtdjFfNS1nZW5lcmF0ZS1leHBvcnQta2V5LWp3ay1zaGEzODQuaHRtbCBbIFNr
aXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1nZW5lcmF0ZS1leHBvcnQta2V5
LWp3ay1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFf
NS1nZW5lcmF0ZS1leHBvcnQta2V5LXBrY3M4Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
cnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUtZXhwb3J0LWtleS1zcGtpLmh0bWwgWyBTa2lwIF0K
LWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5Lmh0bWwgWyBTa2lw
IF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5LXNpZ24tdmVy
aWZ5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJh
dGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQuaHRtbCBbIFNraXAgXQotY3J5
cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQtandrLXByaXZhdGUta2V5Lmh0bWwg
WyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wdWJs
aWMta2V5LWVtcHR5LXVzYWdlcy5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1w
a2NzMS12MV81LWltcG9ydC1qd2stcHVibGljLWtleS1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTIyNC5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2st
cHVibGljLWtleS1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtj
czEtdjFfNS1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMzg0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay1wdWJsaWMta2V5LXNoYTUxMi5o
dG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1rZXkt
c2lnbi1zaGExLmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUt
aW1wb3J0LWtleS1zaWduLXNoYTIyNC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNz
YS1wa2NzMS12MV81LWltcG9ydC1rZXktc2lnbi1zaGEyNTYuaHRtbCBbIFNraXAgXQotY3J5cHRv
L3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQta2V5LXNpZ24tc2hhMzg0Lmh0bWwgWyBT
a2lwIF0KLWNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWtleS1zaWduLXNo
YTUxMi5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9y
dC1rZXktdmVyaWZ5LXNoYTEuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtj
czEtdjFfNS1pbXBvcnQta2V5LXZlcmlmeS1zaGEyMjQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1
YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQta2V5LXZlcmlmeS1zaGEyNTYuaHRtbCBbIFNr
aXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQta2V5LXZlcmlmeS1z
aGEzODQuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBv
cnQta2V5LXZlcmlmeS1zaGE1MTIuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9yc2Fzc2Et
cGtjczEtdjFfNS1pbXBvcnQtcGtjczgta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUv
cnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LXNwa2kta2V5Lmh0bWwgWyBTa2lwIF0KLWNyeXB0by9z
dWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LXNwa2kta2V5LWVtcHR5LXVzYWdlcy5odG1s
IFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3NoYTEtZGlnZXN0Lmh0bWwgWyBTa2lwIF0KLWNyeXB0
by9zdWJ0bGUvc2hhMjI0LWRpZ2VzdC5odG1sIFsgU2tpcCBdCi1jcnlwdG8vc3VidGxlL3NoYTI1
Ni1kaWdlc3QuaHRtbCBbIFNraXAgXQotY3J5cHRvL3N1YnRsZS9zaGEzODQtZGlnZXN0Lmh0bWwg
WyBTa2lwIF0KLWNyeXB0by9zdWJ0bGUvc2hhNTEyLWRpZ2VzdC5odG1sIFsgU2tpcCBdCi1jcnlw
dG8vc3VidGxlL3NpZ24tbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQotY3J5cHRv
L3N1YnRsZS91bndyYXAta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvdmVyaWZ5LW1hbGZvcm1lZC1wYXJhbWV0ZXJzLmh0bWwgWyBTa2lwIF0KLWNy
eXB0by9zdWJ0bGUvd3JhcC1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMuaHRtbCBbIFNraXAgXQor
Y3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTEuaHRtbCBb
IFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNo
YTIyNC5odG1sIFsgUGFzcyBdCitjcnlwdG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0
LWtleS1qd2stc2hhMjU2Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5l
cmF0ZS1leHBvcnQta2V5LWp3ay1zaGEzODQuaHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9y
c2EtcHNzLWdlbmVyYXRlLWV4cG9ydC1rZXktandrLXNoYTUxMi5odG1sIFsgUGFzcyBdCitjcnlw
dG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1wa2NzOC5odG1sIFsgUGFzcyBd
CitjcnlwdG8vc3VidGxlL3JzYS1wc3MtZ2VuZXJhdGUtZXhwb3J0LWtleS1zcGtpLmh0bWwgWyBQ
YXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1nZW5lcmF0ZS1rZXkuaHRtbCBbIFBhc3MgXQor
Y3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1qd2stcHJpdmF0ZS1rZXkuaHRtbCBbIFBhc3Mg
XQorY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1qd2stcHVibGljLWtleS1lbXB0eS11c2Fn
ZXMuaHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2EtcHNzLWltcG9ydC1qd2stcHVibGlj
LWtleS1zaGExLmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtandr
LXB1YmxpYy1rZXktc2hhMjI0Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1p
bXBvcnQtandrLXB1YmxpYy1rZXktc2hhMjU2Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUv
cnNhLXBzcy1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhMzg0Lmh0bWwgWyBQYXNzIF0KK2NyeXB0
by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQtandrLXB1YmxpYy1rZXktc2hhNTEyLmh0bWwgWyBQYXNz
IF0KK2NyeXB0by9zdWJ0bGUvcnNhLXBzcy1pbXBvcnQta2V5LXNpZ24uaHRtbCBbIFBhc3MgXQor
IyBMYXJnZSBzYWx0IHNob3VsZCBiZSBzdXBwb3J0ZWQuCitjcnlwdG8vc3VidGxlL3JzYS1wc3Mt
aW1wb3J0LWtleS1zaWduLWxhcmdlLXNhbHQuaHRtbCBbIEZhaWx1cmUgXQorY3J5cHRvL3N1YnRs
ZS9yc2EtcHNzLWltcG9ydC1rZXktdmVyaWZ5Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUv
cnNhLXBzcy1pbXBvcnQtcGtjczgta2V5Lmh0bWwgWyBQYXNzIF0KK2NyeXB0by9zdWJ0bGUvcnNh
LXBzcy1pbXBvcnQtc3BraS1rZXkuaHRtbCBbIFBhc3MgXQorY3J5cHRvL3N1YnRsZS9yc2EtcHNz
LWltcG9ydC1zcGtpLWtleS1lbXB0eS11c2FnZXMuaHRtbCBbIFBhc3MgXQogCiAjIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjE1NjkKIGNyeXB0by9jcnlwdG8tcmFu
ZG9tLXZhbHVlcy1vb20uaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luY2Fpcm8vY3J5cHRvL3N1YnRsZS9yc2EtZ2VuZXJhdGUta2V5LW1hbGZvcm1lZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2Ny
eXB0by9zdWJ0bGUvcnNhLWdlbmVyYXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMDA3MTg1YmI5ZjA5YzBjYjhkMzdhZWFkYTkxMTBjYWI2MzJhZTli
YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2NyeXB0
by9zdWJ0bGUvcnNhLWdlbmVyYXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0NiBAQAorVGVzdCBnZW5lcmF0aW5nIGFuIFJTQSBrZXkgd2l0aCBtYWxm
b3JtZWQtcGFyYW10ZXJzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBj
cnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KCJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUs
IFsiZW5jcnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9y
OiBNZW1iZXIgUnNhS2V5R2VuUGFyYW1zLm1vZHVsdXNMZW5ndGggaXMgcmVxdWlyZWQgYW5kIG11
c3QgYmUgYW4gaW5zdGFuY2Ugb2YgdW5zaWduZWQgbG9uZy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5n
ZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUifSwgZXh0cmFjdGFibGUsIFsiZW5j
cnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9yOiBNZW1i
ZXIgUnNhS2V5R2VuUGFyYW1zLm1vZHVsdXNMZW5ndGggaXMgcmVxdWlyZWQgYW5kIG11c3QgYmUg
YW4gaW5zdGFuY2Ugb2YgdW5zaWduZWQgbG9uZy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0
ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiB1bmRlZmluZWQs
IHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQi
LCAiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFR5cGVFcnJvcjogTWVtYmVyIFJz
YUtleUdlblBhcmFtcy5tb2R1bHVzTGVuZ3RoIGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGFuIGlu
c3RhbmNlIG9mIHVuc2lnbmVkIGxvbmcuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXko
e25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogU3ltYm9sKCksIHB1Ymxp
Y0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVj
cnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFR5cGVFcnJvcjogQ2Fubm90IGNvbnZlcnQg
YSBzeW1ib2wgdG8gYSBudW1iZXIuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25h
bWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25l
bnQ6IDF9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2Vu
ZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwg
cHVibGljRXhwb25lbnQ6IHRydWV9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgImRlY3J5cHQi
XSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1
c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IG51bGx9LCBleHRyYWN0YWJsZSwgWyJlbmNy
eXB0IiwgImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NT
MS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IHVuZGVmaW5lZH0s
IGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIFR5cGVFcnJvcjogTWVtYmVyIFJzYUtleUdlblBhcmFtcy5wdWJsaWNFeHBvbmVudCBpcyBy
ZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBVaW50OEFycmF5LgorUEFTUyBjcnlw
dG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNM
ZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiB7IH19LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0
IiwgImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FFUy1QS0NTMS12
MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IFN5bWJvbCgpfSwgZXh0
cmFjdGFibGUsIFsiZW5jcnlwdCIsICJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtu
YW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9u
ZW50OiAiZm9vIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAiZGVjcnlwdCJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY3J5cHRvLnN1YnRs
ZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAy
MDQ4LCBwdWJsaWNFeHBvbmVudDogWyBdfSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJkZWNy
eXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBt
b2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDogcHVibGljRXhwb25lbnR9LCBleHRy
YWN0YWJsZSwgWyJzaWduIiwgInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFR5cGVF
cnJvcjogTWVtYmVyIFJzYUhhc2hlZEtleUdlblBhcmFtcy5oYXNoIGlzIHJlcXVpcmVkIGFuZCBt
dXN0IGJlIGFuIGluc3RhbmNlIG9mIChvYmplY3Qgb3IgRE9NU3RyaW5nKS4KK1BBU1MgY3J5cHRv
LnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQS1PQUVQIiwgbW9kdWx1c0xlbmd0aDogMjA0
OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsiZGVjcnlw
dCIsICJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggVHlwZUVycm9yOiBNZW1iZXIg
UnNhSGFzaGVkS2V5R2VuUGFyYW1zLmhhc2ggaXMgcmVxdWlyZWQgYW5kIG11c3QgYmUgYW4gaW5z
dGFuY2Ugb2YgKG9iamVjdCBvciBET01TdHJpbmcpLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVy
YXRlS2V5KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1
YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4dHJhY3RhYmxlLCBbInNpZ24iXSkgcmVq
ZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2Fz
IG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5
KHtuYW1lOiAiUlNBRVMtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4
cG9uZW50OiBwdWJsaWNFeHBvbmVudH0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlz
c2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25h
bWU6ICJSU0FFUy1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25l
bnQ6IHB1YmxpY0V4cG9uZW50fSwgZXh0cmFjdGFibGUsIFsiZGVyaXZlS2V5Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNz
aW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFt
ZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVu
dDogcHVibGljRXhwb25lbnR9LCBleHRyYWN0YWJsZSwgWyJkZXJpdmVCaXRzIl0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNz
aW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFt
ZTogIlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVu
dDogcHVibGljRXhwb25lbnR9LCBleHRyYWN0YWJsZSwgWyJ3cmFwS2V5Il0pIHJlamVjdGVkIHBy
b21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5n
IG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTog
IlJTQUVTLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDog
cHVibGljRXhwb25lbnR9LCBleHRyYWN0YWJsZSwgWyJ1bndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcg
b3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAi
UlNBU1NBLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDog
cHVibGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0
ZUtleSh7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVi
bGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUs
IFsiZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVp
cmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5z
dWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIG1vZHVsdXNMZW5n
dGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0s
IGV4dHJhY3RhYmxlLCBbImRlcml2ZUtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRh
eEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2Uu
CitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0FTU0EtUEtDUzEtdjFf
NSIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwg
aGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImRlcml2ZUJpdHMiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcg
b3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAi
UlNBU1NBLVBLQ1MxLXYxXzUiLCBtb2R1bHVzTGVuZ3RoOiAyMDQ4LCBwdWJsaWNFeHBvbmVudDog
cHVibGljRXhwb25lbnQsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ3cmFwS2V5Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0
ZUtleSh7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVi
bGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUs
IFsidW53cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVx
dWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRv
LnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogIlJTQS1PQUVQIiwgbW9kdWx1c0xlbmd0aDogMjA0
OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFj
dGFibGUsIFsic2lnbiJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJl
cXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0
by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0EtT0FFUCIsIG1vZHVsdXNMZW5ndGg6IDIw
NDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0sIGV4dHJh
Y3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0EtT0FFUCIsIG1vZHVsdXNMZW5ndGg6
IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0xIn0sIGV4
dHJhY3RhYmxlLCBbImRlcml2ZUtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVy
cm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJSU0EtT0FFUCIsIG1vZHVsdXNM
ZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDogInNoYS0x
In0sIGV4dHJhY3RhYmxlLCBbImRlcml2ZUJpdHMiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBT
eW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJh
bmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBTUyIsIG1v
ZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFzaDog
InNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9m
LXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBTUyIs
IG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwgaGFz
aDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAg
d2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0
LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiUlNBLVBT
UyIsIG1vZHVsdXNMZW5ndGg6IDIwNDgsIHB1YmxpY0V4cG9uZW50OiBwdWJsaWNFeHBvbmVudCwg
aGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImRlcml2ZUtleSJdKSByZWplY3RlZCBwcm9t
aXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBv
ciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJS
U0EtUFNTIiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IHB1YmxpY0V4cG9u
ZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsiZGVyaXZlQml0cyJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlz
c2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25h
bWU6ICJSU0EtUFNTIiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IHB1Ymxp
Y0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsid3JhcEtleSJdKSByZWpl
Y3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMg
bWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXko
e25hbWU6ICJSU0EtUFNTIiwgbW9kdWx1c0xlbmd0aDogMjA0OCwgcHVibGljRXhwb25lbnQ6IHB1
YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidW53cmFwS2V5Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5nZW5lcmF0
ZUtleSh7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgbW9kdWx1c0xlbmd0aDogMCwgcHVibGlj
RXhwb25lbnQ6IHB1YmxpY0V4cG9uZW50LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsi
c2lnbiIsICJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBPcGVyYXRpb25FcnJvcjog
VGhlIG9wZXJhdGlvbiBmYWlsZWQgZm9yIGFuIG9wZXJhdGlvbi1zcGVjaWZpYyByZWFzb24uCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vY3J5cHRvL3N1YnRsZS9yc2EtaW1w
b3J0LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW5jYWlyby9jcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1hbGZvcm1lZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNDE2M2VlZDM5MjE5MDAxODFjZmEy
NmFiZTM2MzRlNjdhZDgyOTNiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luY2Fpcm8vY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0LWtleS1tYWxmb3JtZWQtcGFyYW1l
dGVycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5NCBAQAorVGVzdCBpbXBvcnRpbmcgYSBSU0Eg
a2V5IHdpdGggbWFsZm9ybWVkIHBhcmFtZXRlcnMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBu
OiBuLCBlOiBlfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkfSwgIlJTQUVTLVBLQ1MxLXYx
XzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3lu
dGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5n
ZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBu
LCBlOiBlLCBkOiAiIn0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlw
dCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFt
ZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZX0sIHtuYW1lOiAiUlNBU1NBLVBL
Q1MxLXYxXzUiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsic2lnbiJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlz
c2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogZH0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYx
XzUiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHBy
b21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5n
IG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtr
dHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiAiIn0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUi
LCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21p
c2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9y
IG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6
ICJSU0EiLCBuOiBuLCBlOiBlfSwge25hbWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtMSJ9LCBl
eHRyYWN0YWJsZSwgWyJkZWNyeXB0IiwgInVud3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQt
b2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNB
IiwgbjogbiwgZTogZSwgZDogZH0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEifSwg
ZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1v
Zi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0Ei
LCBuOiBuLCBlOiBlLCBkOiAiIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEifSwg
ZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1v
Zi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0Ei
LCBuOiBuLCBlOiBlfSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3Rh
YmxlLCBbInNpZ24iXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1
aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGQ6IGR9LCB7
bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVy
IHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiAiIn0sIHtuYW1lOiAiUlNBLVBT
UyIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcg
b3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0
eTogIlJTQSIsIG46IG4sIGU6IGUsIHVzZTogInNpZyJ9LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4
dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6
IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRz
LgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4s
IGU6IGUsIHVzZTogIiJ9LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5
cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8g
YW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIHVzZTogImVuYyJ9
LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxl
LCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92
aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNy
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgdXNl
OiAiIn0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFj
dGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRh
IHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BB
U1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBl
LCB1c2U6ICJzaWcifSwge25hbWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0
YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIHVzZTogIiJ9LCB7bmFtZTogIlJTQS1PQUVQIiwgaGFzaDogInNoYS0xIn0s
IGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVl
dCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5
OiAiUlNBIiwgbjogbiwgZTogZSwgdXNlOiAiZW5jIn0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6
ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQg
cmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTog
IlJTQSIsIG46IG4sIGU6IGUsIHVzZTogIiJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hh
LTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0
YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVp
cmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0Ei
LCBuOiBuLCBlOiBlLCBhbGc6ICJmb28ifSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJs
ZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHBy
b3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBh
bGc6ICIifSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJl
amVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJh
dGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBv
cnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6ICJSUzIyNCJ9LCB7bmFt
ZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZl
cmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0
byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5z
dWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiUlMy
NTYifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJzaGEtMjI0In0sIGV4dHJh
Y3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0
YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTog
ZSwgYWxnOiAiUlMzODQifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJzaGEt
MjU2In0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERh
dGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1
aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNB
IiwgbjogbiwgZTogZSwgYWxnOiAiUlM1MTIifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIs
IGhhc2g6ICJzaGEtMzg0In0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9t
aXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBu
b3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiUlMxIn0sIHtuYW1lOiAiUlNBU1NBLVBL
Q1MxLXYxXzUiLCBoYXNoOiAic2hhLTUxMiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVq
ZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0
aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9y
dEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJT
QVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbInZlcmlmeSJd
KSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBv
cGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiIn0sIHtuYW1l
OiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTIyNCJ9LCBleHRyYWN0YWJsZSwgWyJ2
ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQg
dG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9
LCB7bmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwgaGFzaDogInNoYS0yNTYifSwgZXh0cmFjdGFi
bGUsIFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHBy
b3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBh
bGc6ICIifSwge25hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJzaGEtMzg0In0sIGV4
dHJhY3RhYmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjog
RGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMu
CitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwg
ZTogZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTUx
MiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIGFsZzogIlJTQS1PQUVQLTIyNCJ9LCB7bmFtZTogIlJTQS1PQUVQIiwgaGFz
aDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSByZWplY3Rl
ZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24g
ZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiUlNBLU9BRVAtMjU2In0sIHtu
YW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTIyNCJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0
IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJv
dmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBj
cnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFs
ZzogIlJTQS1PQUVQLTM4NCJ9LCB7bmFtZTogIlJTQS1PQUVQIiwgaGFzaDogInNoYS0yNTYifSwg
ZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdp
dGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0
IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6
ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6ICJSU0EtT0FFUC01MTIifSwge25hbWU6ICJSU0EtT0FF
UCIsIGhhc2g6ICJzaGEtMzg0In0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJd
KSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBv
cGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiUlNBLU9BRVAi
fSwge25hbWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtNTEyIn0sIGV4dHJhY3RhYmxlLCBbImVu
Y3J5cHQiLCAid3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0
YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTog
ZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFi
bGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVy
cm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVt
ZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBu
OiBuLCBlOiBlLCBhbGc6ICIifSwge25hbWU6ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtMjI0In0s
IGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAid3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3
aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVl
dCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5
OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAiIn0sIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAi
c2hhLTI1NiJ9LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0IiwgIndyYXBLZXkiXSkgcmVqZWN0ZWQg
cHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRv
ZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgi
andrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFtZTogIlJTQS1PQUVQ
IiwgaGFzaDogInNoYS0zODQifSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0p
IHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9w
ZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5p
bXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6ICIifSwge25hbWU6
ICJSU0EtT0FFUCIsIGhhc2g6ICJzaGEtNTEyIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiLCAi
d3JhcEtleSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRl
ZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAi
UFMyMjQifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBb
InZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRl
ZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgYWxnOiAi
UFMyNTYifSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0yMjQifSwgZXh0cmFjdGFibGUs
IFsidmVyaWZ5Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3Zp
ZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBhbGc6
ICJQUzM4NCJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTI1NiJ9LCBleHRyYWN0YWJs
ZSwgWyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJv
dmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBj
cnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFs
ZzogIlBTNTEyIn0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEtMzg0In0sIGV4dHJhY3Rh
YmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBw
cm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNT
IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwg
YWxnOiAiUFMxIn0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEtNTEyIn0sIGV4dHJhY3Rh
YmxlLCBbInZlcmlmeSJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBw
cm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNT
IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwg
YWxnOiAiIn0sIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwg
WyJ2ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlk
ZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlw
dG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzog
IiJ9LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTIyNCJ9LCBleHRyYWN0YWJsZSwgWyJ2
ZXJpZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQg
dG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9
LCB7bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTI1NiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJp
ZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8g
YW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7
bmFtZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTM4NCJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnki
XSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4g
b3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxl
LmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGFsZzogIiJ9LCB7bmFt
ZTogIlJTQS1QU1MiLCBoYXNoOiAic2hhLTUxMiJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJpZnkiXSkg
cmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3Bl
cmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwge2t0eTogIm9jdCIsIG46IG4sIGU6IGV9LCAiUlNBRVMtUEtDUzEtdjFf
NSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRh
RXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWly
ZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIs
IG46IG4sIGU6IGUsIGtleV9vcHM6IFsic2lnbiIsICJ2ZXJpZnkiXX0sICJSU0FFUy1QS0NTMS12
MV81IiwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERh
dGFFcnJvcjogRGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1
aXJlbWVudHMuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNB
IiwgbjogbiwgZTogZSwga2V5X29wczogWyBdfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0
YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRh
IHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BB
U1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBl
LCBleHQ6IGZhbHNlfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0
Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFu
IG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRs
ZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EifSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRy
YWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBE
YXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4K
K1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBufSwg
IlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHBy
b21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2Vz
IG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3
ayIsIHtrdHk6ICJSU0EiLCBlOiBlfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwg
WyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3Zp
ZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBk
fSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBk
b2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkLCBwOiBwLCBxOiBxLCBkcDogZHAs
IGRxOiBkcSwgcWk6IHFpLCBvdGg6IFt7cjogcSwgZDogZHEsIHQ6IHFpfV19LCAiUlNBRVMtUEtD
UzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0
aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQg
cmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTog
IlJTQSIsIG46IG4sIGU6IGUsIGQ6IGQsIHE6IHEsIGRwOiBkcCwgZHE6IGRxLCBxaTogcWl9LCAi
UlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJv
bWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMg
bm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandr
Iiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGQ6IGQsIHA6IHAsIGRwOiBkcCwgZHE6IGRxLCBx
aTogcWl9LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVq
ZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4gb3BlcmF0
aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9y
dEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUsIGQ6IGQsIHA6IHAsIHE6IHEsIGRx
OiBkcSwgcWk6IHFpfSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0
Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFu
IG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRs
ZS5pbXBvcnRLZXkoImp3ayIsIHtrdHk6ICJSU0EiLCBuOiBuLCBlOiBlLCBkOiBkLCBwOiBwLCBx
OiBxLCBkcDogZHAsIHFpOiBxaX0sICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFjdGFibGUsIFsi
ZGVjcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0YSBwcm92aWRl
ZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQQVNTIGNyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCB7a3R5OiAiUlNBIiwgbjogbiwgZTogZSwgZDogZCwg
cDogcCwgcTogcSwgZHA6IGRwLCBkcTogZHF9LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3Rh
YmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEg
cHJvdmlkZWQgdG8gYW4gb3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFT
UyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwge2t0eTogIlJTQSIsIG46IG4sIGU6IGUs
IGQ6IGQsIHA6ICIiLCBxOiBxLCBkcDogZHAsIGRxOiBkcSwgcWk6IHFpfSwgIlJTQUVTLVBLQ1Mx
LXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
RGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJl
cXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInNwa2kiLCBzcGtpS2V5
LCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImRlY3J5cHQiXSkgcmVqZWN0ZWQg
cHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Np
bmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgic3BraSIs
IHNwa2lLZXksIHtuYW1lOiAiUlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTEifSwgZXh0
cmFjdGFibGUsIFsic2lnbiJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBB
IHJlcXVpcmVkIHBhcmFtZXRlciB3YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNy
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJzcGtpIiwgc3BraUtleSwge25hbWU6ICJSU0EtT0FFUCIs
IGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0IiwgInVud3JhcEtleSJdKSBy
ZWplY3RlZCBwcm9taXNlICB3aXRoIFN5bnRheEVycm9yOiBBIHJlcXVpcmVkIHBhcmFtZXRlciB3
YXMgbWlzc2luZyBvciBvdXQtb2YtcmFuZ2UuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJzcGtpIiwgc3BraUtleSwge25hbWU6ICJSU0EtUFNTIiwgaGFzaDogInNoYS0xIn0sIGV4dHJh
Y3RhYmxlLCBbInNpZ24iXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSBy
ZXF1aXJlZCBwYXJhbWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlw
dG8uc3VidGxlLmltcG9ydEtleSgicGtjczgiLCBwa2NzOEtleSwgIlJTQUVTLVBLQ1MxLXYxXzUi
LCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4
RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4K
K1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgcGtjczhLZXksIHtuYW1lOiAi
UlNBU1NBLVBLQ1MxLXYxXzUiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsidmVyaWZ5
Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1l
dGVyIHdhcyBtaXNzaW5nIG9yIG91dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBv
cnRLZXkoInBrY3M4IiwgcGtjczhLZXksIHtuYW1lOiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEi
fSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCIsICJ3cmFwS2V5Il0pIHJlamVjdGVkIHByb21pc2Ug
IHdpdGggU3ludGF4RXJyb3I6IEEgcmVxdWlyZWQgcGFyYW1ldGVyIHdhcyBtaXNzaW5nIG9yIG91
dC1vZi1yYW5nZS4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgcGtjczhL
ZXksIHtuYW1lOiAiUlNBLVBTUyIsIGhhc2g6ICJzaGEtMSJ9LCBleHRyYWN0YWJsZSwgWyJ2ZXJp
ZnkiXSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBTeW50YXhFcnJvcjogQSByZXF1aXJlZCBwYXJh
bWV0ZXIgd2FzIG1pc3Npbmcgb3Igb3V0LW9mLXJhbmdlLgorUEFTUyBjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgic3BraSIsIG1hbGZvcm1lZEtleTAsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0cmFj
dGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjogRGF0
YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMuCitQ
QVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJzcGtpIiwgbWFsZm9ybWVkS2V5MSwgIlJTQUVT
LVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21pc2Ug
IHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBt
ZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInNwa2kiLCBt
YWxmb3JtZWRLZXkyLCAiUlNBRVMtUEtDUzEtdjFfNSIsIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQi
XSkgcmVqZWN0ZWQgcHJvbWlzZSAgd2l0aCBEYXRhRXJyb3I6IERhdGEgcHJvdmlkZWQgdG8gYW4g
b3BlcmF0aW9uIGRvZXMgbm90IG1lZXQgcmVxdWlyZW1lbnRzLgorUEFTUyBjcnlwdG8uc3VidGxl
LmltcG9ydEtleSgic3BraSIsIG1hbGZvcm1lZEtleTQsICJSU0FFUy1QS0NTMS12MV81IiwgZXh0
cmFjdGFibGUsIFsiZW5jcnlwdCJdKSByZWplY3RlZCBwcm9taXNlICB3aXRoIERhdGFFcnJvcjog
RGF0YSBwcm92aWRlZCB0byBhbiBvcGVyYXRpb24gZG9lcyBub3QgbWVldCByZXF1aXJlbWVudHMu
CitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJzcGtpIiwgbWFsZm9ybWVkS2V5NiwgIlJT
QUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0Il0pIHJlamVjdGVkIHByb21p
c2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5v
dCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4
IiwgbWFsZm9ybWVkS2V5MCwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNy
eXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRv
IGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1
YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgbWFsZm9ybWVkS2V5MSwgIlJTQUVTLVBLQ1MxLXYxXzUi
LCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVy
cm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVt
ZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgbWFsZm9ybWVkS2V5
MywgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVk
IHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBk
b2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
InBrY3M4IiwgbWFsZm9ybWVkS2V5NSwgIlJTQUVTLVBLQ1MxLXYxXzUiLCBleHRyYWN0YWJsZSwg
WyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGggRGF0YUVycm9yOiBEYXRhIHByb3Zp
ZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJlcXVpcmVtZW50cy4KK1BBU1MgY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoInBrY3M4IiwgbWFsZm9ybWVkS2V5NywgIlJTQUVTLVBLQ1Mx
LXYxXzUiLCBleHRyYWN0YWJsZSwgWyJkZWNyeXB0Il0pIHJlamVjdGVkIHByb21pc2UgIHdpdGgg
RGF0YUVycm9yOiBEYXRhIHByb3ZpZGVkIHRvIGFuIG9wZXJhdGlvbiBkb2VzIG5vdCBtZWV0IHJl
cXVpcmVtZW50cy4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggODE4Mzk4YjMw
ZGRhNjlkNTVmYzJmNzkyNzM0MzNhMWM1MzdiY2M0Ni4uOGViMjI1OGIzMzUwOThiYWNmMGI3ZWJj
MGNkODQwOGIzMzI1ZGQ0YiAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDIzIEBACisyMDIxLTA1LTA1ICBZb3NoaWFraSBKaXRzdWthd2EgIDx5b3NoaWFr
aS5qaXRzdWthd2FAc29ueS5jb20+CisKKyAgICAgICAgW09wZW5TU0xdIEltcGxlbWVudCBDcnlw
dG9BbGdvcml0aG1SU0EqCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjUyOTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJbXBsZW1lbnQgUlNBIGZvciBPcGVuU1NMLgorCisgICAgICAgIEltcGxlbWVudCBD
cnlwdG9BbGdvcml0aG1SU0FfT0FFUCwgQ3J5cHRvQWxnb3JpdGhtUlNBX1BTUywKKyAgICAgICAg
Q3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNSwgQ3J5cHRvQWxnb3JpdGhtUlNBU0FfUEtD
UzFfdjFfNSwKKyAgICAgICAgYW5kIENyeXB0b0tleVJTQSBmb3IgT3BlblNTTC4KKworICAgICAg
ICBOb3RlIHRoYXQgaWYgc3VjaCBPcGVuU1NMIHZlcnNpb24gdGhhdCBkb2VzIG5vdCBzdXBwb3J0
IFJTQV9PQUVQIG9yCisgICAgICAgIFJTQV9QU1MsIHRoZSBXZWJDcnlwdG8gQVBJIGZvciB0aG9z
ZSBhbGdvcml0aG0gd2lsbCByZXR1cm4gYQorICAgICAgICBOb3RTdXBwb3J0ZWRFcnJvci4KKwor
ICAgICAgICAqIFNvdXJjZS9jbWFrZS9PcHRpb25zUGxheVN0YXRpb24uY21ha2U6CisgICAgICAg
ICogU291cmNlL2NtYWtlL09wdGlvbnNXaW5DYWlyby5jbWFrZToKKwogMjAyMS0wNC0yNyAgRG9u
IE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIFtDTWFrZV0gRG9u
J3QgdXNlIEZPUldBUkRJTkdfSEVBREVSU19ESVIgZm9yIEdUSyBXZWJLaXQgaGVhZGVycwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>