<?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>222779</bug_id>
          
          <creation_ts>2021-03-04 22:05:48 -0800</creation_ts>
          <short_desc>[WASM-Function-References] Update ref.func to produce (ref $t)</short_desc>
          <delta_ts>2022-11-02 17:08:56 -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>WebAssembly</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>247393</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dmitry">dbezhetskov</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1736178</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-04 22:05:48 -0800</bug_when>
    <thetext>[WASM-Function-References] Update ref.func to produce (ref $t)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736181</commentid>
    <comment_count>1</comment_count>
      <attachid>422337</attachid>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-04 22:11:28 -0800</bug_when>
    <thetext>Created attachment 422337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736182</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-03-04 22:12:29 -0800</bug_when>
    <thetext>This patch modifies one of the wasm.json files. Please ensure that any changes in one have been mirrored to the other. You can find the wasm.json files at &quot;Source/JavaScriptCore/wasm/wasm.json&quot; and &quot;JSTests/wasm/wasm.json&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736213</commentid>
    <comment_count>3</comment_count>
      <attachid>422337</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-03-05 00:52:19 -0800</bug_when>
    <thetext>Comment on attachment 422337
Patch

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

r=me with comments.

&gt; Source/JavaScriptCore/wasm/generateWasmOpsHeader.py:217
&gt; +    uint64_t index;

Use SignatureIndex instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736225</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-05 01:12:11 -0800</bug_when>
    <thetext>Using SignatureIndex will create a cycle dependency:
WasmSignature.h includes WasmOps.h that includes WasmSignature.h

But I did the &quot;forward declaration&quot; of SignatureIndex in WasmOps.h so this should work well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736229</commentid>
    <comment_count>5</comment_count>
      <attachid>422348</attachid>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-05 01:14:30 -0800</bug_when>
    <thetext>Created attachment 422348
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736256</commentid>
    <comment_count>6</comment_count>
      <attachid>422354</attachid>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-05 01:58:27 -0800</bug_when>
    <thetext>Created attachment 422354
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736271</commentid>
    <comment_count>7</comment_count>
      <attachid>422358</attachid>
    <who name="Dmitry">dbezhetskov</who>
    <bug_when>2021-03-05 02:31:42 -0800</bug_when>
    <thetext>Created attachment 422358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736283</commentid>
    <comment_count>8</comment_count>
      <attachid>422358</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-03-05 03:45:00 -0800</bug_when>
    <thetext>Comment on attachment 422358
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736295</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-05 04:16:54 -0800</bug_when>
    <thetext>Committed r273962: &lt;https://commits.webkit.org/r273962&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422358.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736296</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-05 04:17:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/75089479&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422337</attachid>
            <date>2021-03-04 22:11:28 -0800</date>
            <delta_ts>2021-03-05 01:14:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222779-20210305131126.patch</filename>
            <type>text/plain</type>
            <size>26253</size>
            <attacher name="Dmitry">dbezhetskov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
ZTgxNDM5M2Q0NmYyMTczNTY2YTlmNTE2YzY2MTg4MjExZGQxY2I3Li4wOGVkMmZkYzZjYjZkOWFh
YjA2YTQ4YjdjMjE5ZmY3M2M2YjRkYzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBp
Z2FsaWEuY29tPgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSBy
ZWYuZnVuYyB0byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxl
IHJlZmVyZW5jZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5k
ZXguIFNpbmNlIGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBl
IG9mIHRoZSBmdW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0
eXBlX2lkeAorICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJl
bmNlcy4KKworCisgICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorICAgICAgICAqIHdh
c20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6QWlySVJHZW5l
cmF0b3I6OmFkZFRhYmxlR3Jvdyk6CisgICAgICAgIChKU0M6Oldhc206OkFpcklSR2VuZXJhdG9y
OjphZGRUYWJsZUZpbGwpOgorICAgICAgICAoSlNDOjpXYXNtOjpBaXJJUkdlbmVyYXRvcjo6dW5p
ZnkpOgorICAgICAgICAqIHdhc20vV2FzbUZvcm1hdC5oOgorICAgICAgICAoSlNDOjpXYXNtOjpp
c1ZhbHVlVHlwZSk6CisgICAgICAgIChKU0M6Oldhc206OmlzU3VidHlwZSk6CisgICAgICAgIChK
U0M6Oldhc206OmlzUmVmVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRnVuY3Rpb25QYXJzZXIu
aDoKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OmNoZWNrQnJh
bmNoVGFyZ2V0KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46
OnVuaWZ5KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OnBh
cnNlRXhwcmVzc2lvbik6CisgICAgICAgICogd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpXYXNtOjpMTEludEdlbmVyYXRvcjo6Y2FsbEluZm9ybWF0aW9uRm9yQ2Fs
bGVyKToKKyAgICAgICAgKEpTQzo6V2FzbTo6TExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlv
bkZvckNhbGxlZSk6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50R2VuZXJhdG9yOjphZGRBcmd1
bWVudHMpOgorICAgICAgICAqIHdhc20vV2FzbVNlY3Rpb25QYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpXYXNtOjpTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCk6CisgICAgICAgICogd2FzbS9n
ZW5lcmF0ZVdhc21PcHNIZWFkZXIucHk6CisgICAgICAgICogd2FzbS9qcy9XYXNtVG9KUy5jcHA6
CisgICAgICAgIChKU0M6Oldhc206Ondhc21Ub0pTKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04pOgorICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0NvY29hXSBSRUdS
RVNTSU9OKHIyNzI3NTIpOiBmaXggc29tZSBpbnRlcm5hbCBidWlsZHMgdGhhdCB1c2UgV1RGU3Ry
aW5nOjpXVEZTdHJpbmcoTlNTdHJpbmcgKikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9PcHRpb25zTGlzdC5oCmluZGV4IGJjMWNlZGI5MDNjODZmZjc2ZmEyYjQxNGZlOTgzYTI4MTdl
M2ZhNDcuLmZhMjFlNGE4ZGQ0Nzg4MGM1OWQxMWMxZjZhMzkxOWYzMmVhN2M4ZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTIwLDYgKzUyMCw3
IEBAIEpTX0VYUE9SVF9QUklWQVRFIGJvb2wgY2FuVXNlSklUQ2FnZSgpOwogICAgIHYoQm9vbCwg
dXNlUHJpdmF0ZU1ldGhvZHMsIHRydWUsIE5vcm1hbCwgIklmIHRydWUsIHRoZSBwYXJzZXIgd2ls
bCB1bmRlcnN0YW5kIHByaXZhdGUgbWV0aG9kcyBpbnNpZGUgY2xhc3Nlcy4iKSBcCiAgICAgdihC
b29sLCB1c2VXZWJBc3NlbWJseVN0cmVhbWluZywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdG8gcnVu
IFdlYkFzc2VtYmx5J3MgU3RyZWFtaW5nIEFQSSIpIFwKICAgICB2KEJvb2wsIHVzZVdlYkFzc2Vt
Ymx5UmVmZXJlbmNlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlwZXMgZnJvbSB0aGUgd2FzbSBy
ZWZlcmVuY2VzIHNwZWMuIikgXAorICAgIHYoQm9vbCwgdXNlV2ViQXNzZW1ibHlUeXBlZEZ1bmN0
aW9uUmVmZXJlbmNlcywgZmFsc2UsIE5vcm1hbCwgIkFsbG93IGZ1bmN0aW9uIHR5cGVzIGZyb20g
dGhlIHdhc20gdHlwZWQgZnVuY3Rpb24gcmVmZXJlbmNlcyBzcGVjLiIpIFwKICAgICB2KEJvb2ws
IHVzZVdlYkFzc2VtYmx5TXVsdGlWYWx1ZXMsIHRydWUsIE5vcm1hbCwgIkFsbG93IHR5cGVzIGZy
b20gdGhlIHdhc20gbXVsaXQtdmFsdWVzIHNwZWMuIikgXAogICAgIHYoQm9vbCwgdXNlV2ViQXNz
ZW1ibHlUaHJlYWRpbmcsIHRydWUsIE5vcm1hbCwgIkFsbG93IGluc3RydWN0aW9ucyBmcm9tIHRo
ZSB3YXNtIHRocmVhZGluZyBzcGVjLiIpIFwKICAgICB2KEJvb2wsIHVzZVdlYWtSZWZzLCB0cnVl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFdlYWtSZWYgY29uc3RydWN0b3IuIikgXApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHAKaW5kZXggNDFk
MjJjMmVlZWM0N2Y0NDdmYTMwYzQzMmE3ZDNiNTA2NzBhMjg5ZC4uNDQzOGE1Njg1MjIwMDA2OGYy
YTg2NzgwYjY2MGJlNWY0M2YyZjc5NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwCkBAIC0xMTc2LDcgKzExNzYsNyBAQCBhdXRvIEFp
cklSR2VuZXJhdG9yOjphZGRUYWJsZVNpemUodW5zaWduZWQgdGFibGVJbmRleCwgRXhwcmVzc2lv
blR5cGUmIHJlc3VsdCkgLQogYXV0byBBaXJJUkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2ln
bmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25UeXBlIGZpbGwsIEV4cHJlc3Npb25UeXBlIGRlbHRh
LCBFeHByZXNzaW9uVHlwZSYgcmVzdWx0KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJU
KGZpbGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3Rh
YmxlSW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCks
IG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChkZWx0
YS50bXAoKSk7CiAgICAgQVNTRVJUKGRlbHRhLnR5cGUoKS5pc0kzMigpKTsKICAgICByZXN1bHQg
PSB0bXBGb3JUeXBlKFR5cGVzOjpJMzIpOwpAQCAtMTE4OSw3ICsxMTg5LDcgQEAgYXV0byBBaXJJ
UkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2lnbmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25U
eXBlIGZpbGwsIEV4cHIKIGF1dG8gQWlySVJHZW5lcmF0b3I6OmFkZFRhYmxlRmlsbCh1bnNpZ25l
ZCB0YWJsZUluZGV4LCBFeHByZXNzaW9uVHlwZSBvZmZzZXQsIEV4cHJlc3Npb25UeXBlIGZpbGws
IEV4cHJlc3Npb25UeXBlIGNvdW50KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJUKGZp
bGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3RhYmxl
SW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCksIG1f
aW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChvZmZzZXQu
dG1wKCkpOwogICAgIEFTU0VSVChvZmZzZXQudHlwZSgpLmlzSTMyKCkpOwogICAgIEFTU0VSVChj
b3VudC50bXAoKSk7CkBAIC0zNDE5LDcgKzM0MTksNyBAQCBhdXRvIEFpcklSR2VuZXJhdG9yOjph
ZGRDYWxsSW5kaXJlY3QodW5zaWduZWQgdGFibGVJbmRleCwgY29uc3QgU2lnbmF0dXJlJiBzaWdu
YQogCiB2b2lkIEFpcklSR2VuZXJhdG9yOjp1bmlmeShjb25zdCBFeHByZXNzaW9uVHlwZSBkc3Qs
IGNvbnN0IEV4cHJlc3Npb25UeXBlIHNvdXJjZSkKIHsKLSAgICBBU1NFUlQoc291cmNlLnR5cGUo
KSA9PSBkc3QudHlwZSgpKTsKKyAgICBBU1NFUlQoaXNTdWJ0eXBlKHNvdXJjZS50eXBlKCksIGRz
dC50eXBlKCkpKTsKICAgICBhcHBlbmQobW92ZU9wRm9yVmFsdWVUeXBlKGRzdC50eXBlKCkpLCBz
b3VyY2UsIGRzdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21Gb3JtYXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApp
bmRleCAzOThlOTQwYmQyMzYzNGQ5Y2E2OTBhZTJkNGU0ZDg4MzY5NjEyN2M3Li44MDdhZGI4ZTcw
NWQ4Zjc1MjlhNTRjOGYyNDMxMzBjZGVhY2ZmNDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbUZvcm1hdC5oCkBAIC03MCwxNyArNzAsMjcgQEAgaW5saW5lIGJvb2wgaXNWYWx1ZVR5
cGUoVHlwZSB0eXBlKQogICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICBjYXNlIFR5
cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICByZXR1cm4gT3B0aW9uczo6dXNlV2ViQXNzZW1ibHlS
ZWZlcmVuY2VzKCk7CisgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKKyAgICAgICAgcmV0dXJu
IE9wdGlvbnM6OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKTsKICAgICBk
ZWZhdWx0OgogICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitp
bmxpbmUgYm9vbCBpc1N1YnR5cGUoVHlwZSBzdWIsIFR5cGUgcGFyZW50KQoreworICAgIGlmIChz
dWIuaXNUeXBlSWR4KCkgJiYgcGFyZW50LmlzRnVuY3JlZigpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBzdWIgPT0gcGFyZW50OworfQorCiBpbmxpbmUgYm9vbCBpc1JlZlR5
cGUoVHlwZSB0eXBlKQogewotICAgIHJldHVybiB0eXBlLmlzRnVuY3JlZigpIHx8IHR5cGUuaXNF
eHRlcm5yZWYoKTsKKyAgICByZXR1cm4gdHlwZS5pc0Z1bmNyZWYoKSB8fCB0eXBlLmlzRXh0ZXJu
cmVmKCkgfHwgdHlwZS5pc1R5cGVJZHgoKTsKIH0KLSAgICAKKwogZW51bSBjbGFzcyBFeHRlcm5h
bEtpbmQgOiB1aW50OF90IHsKICAgICAvLyBGSVhNRSBhdXRvLWdlbmVyYXRlIHRoaXMuIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUyMzEKICAgICBGdW5jdGlvbiA9
IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRnVuY3Rpb25Q
YXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5o
CmluZGV4IGEwNmFkODAxNmFlYWY2Y2E4MmNlNmU0YTFlOTI0ZWUzNzc2NTU4ZmIuLmRmMGUxY2Fm
MzA1NjI0Njc3NmUwMzM5N2QyYWFiMWM5ZDI4ZTE1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCkBAIC02OTksNyArNjk5LDcgQEAgYXV0
byBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6Y2hlY2tCcmFuY2hUYXJnZXQoY29uc3QgQ29udHJv
bFR5cGUmIHRhcmdldCkgLT4gUGEKIAogICAgIHVuc2lnbmVkIG9mZnNldCA9IG1fZXhwcmVzc2lv
blN0YWNrLnNpemUoKSAtIHRhcmdldC5icmFuY2hUYXJnZXRBcml0eSgpOwogICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCB0YXJnZXQuYnJhbmNoVGFyZ2V0QXJpdHkoKTsgKytpKQotICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpICE9IG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKSwgImJyYW5jaCdzIHN0YWNrIHR5cGUg
aXMgbm90IGEgYmxvY2sncyB0eXBlIGJyYW5jaCB0YXJnZXQgdHlwZS4gU3RhY2sgdmFsdWUgaGFz
IHR5cGUiLCBtX2V4cHJlc3Npb25TdGFja1tvZmZzZXQgKyBpXS50eXBlKCkua2luZCwgIiBidXQg
YnJhbmNoIHRhcmdldCBleHBlY3RzIGEgdmFsdWUgb2YgIiwgdGFyZ2V0LmJyYW5jaFRhcmdldFR5
cGUoaSkua2luZCwgIiBhdCBpbmRleCAiLCBpKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRighaXNTdWJ0eXBlKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpLCBtX2V4cHJlc3Npb25T
dGFja1tvZmZzZXQgKyBpXS50eXBlKCkpLCAiYnJhbmNoJ3Mgc3RhY2sgdHlwZSBpcyBub3QgYSBi
bG9jaydzIHR5cGUgYnJhbmNoIHRhcmdldCB0eXBlLiBTdGFjayB2YWx1ZSBoYXMgdHlwZSIsIG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKS5raW5kLCAiIGJ1dCBicmFuY2ggdGFy
Z2V0IGV4cGVjdHMgYSB2YWx1ZSBvZiAiLCB0YXJnZXQuYnJhbmNoVGFyZ2V0VHlwZShpKS5raW5k
LCAiIGF0IGluZGV4ICIsIGkpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTcwOSw3ICs3MDks
NyBAQCBhdXRvIEZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+Ojp1bmlmeShjb25zdCBDb250cm9sVHlw
ZSYgY29udHJvbERhdGEpIC0+IFBhcnRpYWxSZQogewogICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVybkNvdW50KCkgIT0gbV9leHByZXNzaW9u
U3RhY2suc2l6ZSgpLCAiIGJsb2NrIHdpdGggdHlwZTogIiwgY29udHJvbERhdGEuc2lnbmF0dXJl
KCktPnRvU3RyaW5nKCksICIgcmV0dXJuczogIiwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJl
dHVybkNvdW50KCksICIgYnV0IHN0YWNrIGhhczogIiwgbV9leHByZXNzaW9uU3RhY2suc2l6ZSgp
LCAiIHZhbHVlcyIpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb250cm9sRGF0YS5z
aWduYXR1cmUoKS0+cmV0dXJuQ291bnQoKTsgKytpKQotICAgICAgICBXQVNNX1ZBTElEQVRPUl9G
QUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5cGUoKSAhPSBjb250cm9sRGF0YS5zaWduYXR1
cmUoKS0+cmV0dXJuVHlwZShpKSwgImNvbnRyb2wgZmxvdyByZXR1cm5zIHdpdGggdW5leHBlY3Rl
ZCB0eXBlLiAiLCBtX2V4cHJlc3Npb25TdGFja1tpXS50eXBlKCkua2luZCwgIiBpcyBub3QgYSAi
LCBjb250cm9sRGF0YS5zaWduYXR1cmUoKS0+cmV0dXJuVHlwZShpKS5raW5kKTsKKyAgICAgICAg
V0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5
cGUoKSwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVyblR5cGUoaSkpLCAiY29udHJvbCBm
bG93IHJldHVybnMgd2l0aCB1bmV4cGVjdGVkIHR5cGUuICIsIG1fZXhwcmVzc2lvblN0YWNrW2ld
LnR5cGUoKS5raW5kLCAiIGlzIG5vdCBhICIsIGNvbnRyb2xEYXRhLnNpZ25hdHVyZSgpLT5yZXR1
cm5UeXBlKGkpLmtpbmQpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTgzNiw3ICs4MzYsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgV0FT
TV9UUllfUE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhpbmRleCwgInRhYmxlLnNldCIpOwogICAg
ICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gaW5kZXgudHlwZSgp
LmtpbmQsICJ0YWJsZS5zZXQgaW5kZXggdG8gdHlwZSAiLCBpbmRleC50eXBlKCkua2luZCwgIiBl
eHBlY3RlZCAiLCBUeXBlS2luZDo6STMyKTsKICAgICAgICAgVHlwZSB0eXBlID0gbV9pbmZvLnRh
Ymxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOwotICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlM
X0lGKHZhbHVlLnR5cGUoKSAhPSB0eXBlLCAidGFibGUuc2V0IHZhbHVlIHRvIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQsICIgZXhwZWN0ZWQgIiwgdHlwZS5raW5kKTsKKyAgICAgICAgV0FTTV9W
QUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKHZhbHVlLnR5cGUoKSwgdHlwZSksICJ0YWJsZS5z
ZXQgdmFsdWUgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCB0eXBl
LmtpbmQpOwogICAgICAgICBSRUxFQVNFX0FTU0VSVChtX2luZm8udGFibGVzW3RhYmxlSW5kZXhd
LnR5cGUoKSA9PSBUYWJsZUVsZW1lbnRUeXBlOjpFeHRlcm5yZWYgfHwgbV9pbmZvLnRhYmxlc1t0
YWJsZUluZGV4XS50eXBlKCkgPT0gVGFibGVFbGVtZW50VHlwZTo6RnVuY3JlZik7CiAgICAgICAg
IFdBU01fVFJZX0FERF9UT19DT05URVhUKGFkZFRhYmxlU2V0KHRhYmxlSW5kZXgsIGluZGV4LCB2
YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtODk5LDcgKzg5OSw4IEBAIEZPUl9FQUNI
X1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICAgICAgV0FTTV9UUllf
UE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhkZWx0YSwgInRhYmxlLmdyb3ciKTsKICAgICAgICAg
ICAgIFdBU01fVFJZX1BPUF9FWFBSRVNTSU9OX1NUQUNLX0lOVE8oZmlsbCwgInRhYmxlLmdyb3ci
KTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxsLnR5cGUoKSAhPSBt
X2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5ncm93IGV4cGVjdHMg
ZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUo
KS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAgICAgIFR5cGUgdGFi
bGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOworICAgICAgICAg
ICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlwZSgpLCB0YWJsZVR5
cGUpLCAidGFibGUuZ3JvdyBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAiLCB0YWJsZVR5cGUu
a2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAgICBXQVNNX1ZBTElE
QVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gZGVsdGEudHlwZSgpLmtpbmQsICJ0YWJsZS5n
cm93IGV4cGVjdHMgYW4gaTMyIGRlbHRhIHZhbHVlLCBnb3QgIiwgZGVsdGEudHlwZSgpLmtpbmQp
OwogCiAgICAgICAgICAgICBFeHByZXNzaW9uVHlwZSByZXN1bHQ7CkBAIC05MTgsNyArOTE5LDgg
QEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgICAg
ICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKGZpbGwsICJ0YWJsZS5maWxsIik7
CiAgICAgICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKG9mZnNldCwg
InRhYmxlLmZpbGwiKTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxs
LnR5cGUoKSAhPSBtX2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5m
aWxsIGV4cGVjdHMgZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRl
eF0ud2FzbVR5cGUoKS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAg
ICAgIFR5cGUgdGFibGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgp
OworICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlw
ZSgpLCB0YWJsZVR5cGUpLCAidGFibGUuZmlsbCBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAi
LCB0YWJsZVR5cGUua2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gb2Zmc2V0LnR5cGUoKS5r
aW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkzMiBvZmZzZXQgdmFsdWUsIGdvdCAiLCBvZmZz
ZXQudHlwZSgpLmtpbmQpOwogICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihUeXBl
S2luZDo6STMyICE9IGNvdW50LnR5cGUoKS5raW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkz
MiBjb3VudCB2YWx1ZSwgZ290ICIsIGNvdW50LnR5cGUoKS5raW5kKTsKIApAQCAtMTEwNCw2ICsx
MTA2LDEzIEBAIEZPUl9FQUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogCiAg
ICAgICAgIEV4cHJlc3Npb25UeXBlIHJlc3VsdDsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NP
TlRFWFQoYWRkUmVmRnVuYyhpbmRleCwgcmVzdWx0KSk7CisKKyAgICAgICAgaWYgKE9wdGlvbnM6
OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKSkgeworICAgICAgICAgICAg
U2lnbmF0dXJlSW5kZXggc2lnbmF0dXJlSW5kZXggPSBtX2luZm8uc2lnbmF0dXJlSW5kZXhGcm9t
RnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKKyAgICAgICAgICAgIG1fZXhwcmVzc2lvblN0YWNr
LmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlIHtUeXBlS2luZDo6VHlwZUlkeCwgc2lnbmF0dXJlSW5k
ZXh9LCByZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorCiAgICAg
ICAgIG1fZXhwcmVzc2lvblN0YWNrLmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlczo6RnVuY3JlZiwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9CkBAIC0xMTI1LDcgKzExMzQsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgVHlw
ZWRFeHByZXNzaW9uIHZhbHVlOwogICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFD
S19JTlRPKHZhbHVlLCAic2V0X2xvY2FsIik7CiAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoaW5kZXggPj0gbV9sb2NhbHMuc2l6ZSgpLCAiYXR0ZW1wdCB0byBzZXQgdW5rbm93biBsb2Nh
bCAiLCBpbmRleCwgIiBsYXN0IG9uZSBpcyAiLCBtX2xvY2Fscy5zaXplKCkpOwotICAgICAgICBX
QVNNX1ZBTElEQVRPUl9GQUlMX0lGKHZhbHVlLnR5cGUoKSAhPSBtX2xvY2Fsc1tpbmRleF0sICJz
ZXRfbG9jYWwgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xv
Y2Fsc1tpbmRleF0ua2luZCk7CisgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoIWlzU3Vi
dHlwZSh2YWx1ZS50eXBlKCksIG1fbG9jYWxzW2luZGV4XSksICJzZXRfbG9jYWwgdG8gdHlwZSAi
LCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xvY2Fsc1tpbmRleF0ua2luZCk7
CiAgICAgICAgIFdBU01fVFJZX0FERF9UT19DT05URVhUKHNldExvY2FsKGluZGV4LCB2YWx1ZSkp
OwogICAgICAgICByZXR1cm4geyB9OwogICAgIH0KQEAgLTExMzcsNyArMTE0Niw3IEBAIEZPUl9F
QUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICBXQVNNX1BBUlNF
Ul9GQUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrLmlzRW1wdHkoKSwgImNhbid0IHRlZV9sb2NhbCBv
biBlbXB0eSBleHByZXNzaW9uIHN0YWNrIik7CiAgICAgICAgIFR5cGVkRXhwcmVzc2lvbiB2YWx1
ZSA9IG1fZXhwcmVzc2lvblN0YWNrLmxhc3QoKTsKICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRihpbmRleCA+PSBtX2xvY2Fscy5zaXplKCksICJhdHRlbXB0IHRvIHRlZSB1bmtub3duIGxv
Y2FsICIsIGluZGV4LCAiIGxhc3Qgb25lIGlzICIsIG1fbG9jYWxzLnNpemUoKSk7Ci0gICAgICAg
IFdBU01fVkFMSURBVE9SX0ZBSUxfSUYodmFsdWUudHlwZSgpICE9IG1fbG9jYWxzW2luZGV4XSwg
InNldF9sb2NhbCB0byB0eXBlICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1f
bG9jYWxzW2luZGV4XS5raW5kKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNT
dWJ0eXBlKHZhbHVlLnR5cGUoKSwgbV9sb2NhbHNbaW5kZXhdKSwgInNldF9sb2NhbCB0byB0eXBl
ICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1fbG9jYWxzW2luZGV4XS5raW5k
KTsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0TG9jYWwoaW5kZXgsIHZhbHVl
KSk7CiAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQpAQCAtMTE2NSw3ICsxMTc0LDcgQEAgRk9S
X0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAKICAgICAgICAgVHlwZSBn
bG9iYWxUeXBlID0gbV9pbmZvLmdsb2JhbHNbaW5kZXhdLnR5cGU7CiAgICAgICAgIEFTU0VSVChp
c1ZhbHVlVHlwZShnbG9iYWxUeXBlKSk7Ci0gICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYo
Z2xvYmFsVHlwZSAhPSB2YWx1ZS50eXBlKCksICJzZXRfZ2xvYmFsICIsIGluZGV4LCAiIHdpdGgg
dHlwZSAiLCBnbG9iYWxUeXBlLmtpbmQsICIgd2l0aCBhIHZhcmlhYmxlIG9mIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQpOworICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1YnR5
cGUodmFsdWUudHlwZSgpLCBnbG9iYWxUeXBlKSwgInNldF9nbG9iYWwgIiwgaW5kZXgsICIgd2l0
aCB0eXBlICIsIGdsb2JhbFR5cGUua2luZCwgIiB3aXRoIGEgdmFyaWFibGUgb2YgdHlwZSAiLCB2
YWx1ZS50eXBlKCkua2luZCk7CiAKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0
R2xvYmFsKGluZGV4LCB2YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtMTE4NCw3ICsx
MTkzLDcgQEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAg
ICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYoIWFyZ3MudHJ5UmVzZXJ2ZUNhcGFjaXR5KGNhbGxlZVNp
Z25hdHVyZS5hcmd1bWVudENvdW50KCkpLCAiY2FuJ3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9yeSBm
b3IgY2FsbCdzICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICIgYXJndW1lbnRz
Iik7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4
cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9u
IGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0KGkpOwotICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRihhcmcudHlwZSgpICE9IGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmly
c3RBcmd1bWVudEluZGV4KSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbCwgZ290ICIs
IGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50
KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOworICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRighaXNTdWJ0eXBlKGFyZy50eXBlKCksIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVu
dChpIC0gZmlyc3RBcmd1bWVudEluZGV4KSksICJhcmd1bWVudCB0eXBlIG1pc21hdGNoIGluIGNh
bGwsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIsIGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVy
ZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudEluZGV4KS5raW5kKTsKICAgICAgICAgICAgIGFy
Z3MudW5jaGVja2VkQXBwZW5kKGFyZyk7CiAgICAgICAgICAgICBtX2NvbnRleHQuZGlkUG9wVmFs
dWVGcm9tU3RhY2soKTsKICAgICAgICAgfQpAQCAtMTIyNSw3ICsxMjM0LDcgQEAgRk9SX0VBQ0hf
V0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgIGZvciAoc2l6ZV90IGkg
PSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkg
ewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9uIGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0
KGkpOwogICAgICAgICAgICAgaWYgKGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxKQot
ICAgICAgICAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoYXJnLnR5cGUoKSAhPSBjYWxs
ZWVTaWduYXR1cmUuYXJndW1lbnQoaSAtIGZpcnN0QXJndW1lbnRJbmRleCksICJhcmd1bWVudCB0
eXBlIG1pc21hdGNoIGluIGNhbGxfaW5kaXJlY3QsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIs
IGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudElu
ZGV4KS5raW5kKTsKKyAgICAgICAgICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1
YnR5cGUoYXJnLnR5cGUoKSwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50KGkgLSBmaXJzdEFyZ3Vt
ZW50SW5kZXgpKSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbF9pbmRpcmVjdCwgZ290
ICIsIGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3Vt
ZW50KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOwogICAgICAgICAgICAgYXJncy51bmNo
ZWNrZWRBcHBlbmQoYXJnKTsKICAgICAgICAgICAgIG1fY29udGV4dC5kaWRQb3BWYWx1ZUZyb21T
dGFjaygpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUxMSW50R2VuZXJhdG9yLmNwcAppbmRleCBhNGM2ODY1M2NlNmUwYTY5MzUzMWVmNDk0NzE5NTBj
NmY1MmQ2MjNhLi41MzdlZTU2NTIwZWQ1ODQzMDFmNDgyMDQ5NjJjZjI3ODZiZGIzNGZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21MTEludEdlbmVyYXRvci5jcHAK
QEAgLTUzOSw2ICs1MzksNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3JtYXRpb25G
b3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAgICBjYXNl
IFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlk
eDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA8IGdwckNvdW50KQogICAgICAgICAgICAgICAg
ICsrZ3BySW5kZXg7CiAgICAgICAgICAgICBlbHNlIGlmIChzdGFja0luZGV4KysgPj0gc3RhY2tD
b3VudCkKQEAgLTU5NCw2ICs1OTUsNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3Jt
YXRpb25Gb3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAg
ICBjYXNlIFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6
VHlwZUlkeDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA+IGdwckxpbWl0KQogICAgICAgICAg
ICAgICAgIGFyZ3VtZW50c1tpXSA9IHZpcnR1YWxSZWdpc3RlckZvckxvY2FsKC0tZ3BySW5kZXgp
OwogICAgICAgICAgICAgZWxzZQpAQCAtNjIxLDYgKzYyMyw3IEBAIGF1dG8gTExJbnRHZW5lcmF0
b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlcihjb25zdCBTaWduYXR1cmUmIHNpZ25hdHVyZSkg
LT4gTExJCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgorICAgICAgICBj
YXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgaWYgKGdwckluZGV4ID4gZ3ByTGlt
aXQpCiAgICAgICAgICAgICAgICAgdGVtcG9yYXJ5UmVzdWx0c1tpXSA9IHZpcnR1YWxSZWdpc3Rl
ckZvckxvY2FsKC0tZ3BySW5kZXgpOwogICAgICAgICAgICAgZWxzZQpAQCAtNjc2LDYgKzY3OSw3
IEBAIGF1dG8gTExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlZShjb25zdCBT
aWduYXR1cmUmIHNpZ25hdHVyZSkgLT4gVmVjCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5k
OjpGdW5jcmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAg
aWYgKGdwckluZGV4IDwgbWF4R1BSSW5kZXgpCiAgICAgICAgICAgICAgICAgbV9yZXN1bHRzLmFw
cGVuZCh2aXJ0dWFsUmVnaXN0ZXJGb3JMb2NhbChudW1iZXJPZkxMSW50Q2FsbGVlU2F2ZVJlZ2lz
dGVycyArIGdwckluZGV4KyspKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTczMCw2ICs3MzQsNyBA
QCBhdXRvIExMSW50R2VuZXJhdG9yOjphZGRBcmd1bWVudHMoY29uc3QgU2lnbmF0dXJlJiBzaWdu
YXR1cmUpIC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgY2FzZSBUeXBlS2luZDo6STY0OgogICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpFeHRlcm5yZWY6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1
bmNyZWY6CisgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgICAgICBhZGRB
cmd1bWVudChpLCBncHJJbmRleCwgbWF4R1BSSW5kZXgpOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgVHlwZUtpbmQ6OkYzMjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcAppbmRleCAyOGM5ODIwMjIyM2RlYjc2NTE1MGYwNTEz
ZDFkMDhmMzBkZjEzYTY5Li5lZmY4YmMxYzk5N2YwMjI5YTJlYmM4Mzc2YmUyMTc0OWM3MmZiMzE2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtU2VjdGlvblBhcnNl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbVNlY3Rpb25QYXJzZXIu
Y3BwCkBAIC0zMDQsNyArMzA0LDcgQEAgYXV0byBTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCgp
IC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUg
PSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbVJlZkZ1bmM7CiAgICAgICAgIGVsc2UKICAgICAgICAg
ICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUgPSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbUV4
cHJlc3Npb247Ci0gICAgICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYodHlwZUZvckluaXRPcGNvZGUg
IT0gZ2xvYmFsLnR5cGUsICJHbG9iYWwgaW5pdF9leHByIG9wY29kZSBvZiB0eXBlICIsIHR5cGVG
b3JJbml0T3Bjb2RlLmtpbmQsICIgZG9lc24ndCBtYXRjaCBnbG9iYWwncyB0eXBlICIsIGdsb2Jh
bC50eXBlLmtpbmQpOworICAgICAgICBXQVNNX1BBUlNFUl9GQUlMX0lGKCFpc1N1YnR5cGUodHlw
ZUZvckluaXRPcGNvZGUsIGdsb2JhbC50eXBlKSwgIkdsb2JhbCBpbml0X2V4cHIgb3Bjb2RlIG9m
IHR5cGUgIiwgdHlwZUZvckluaXRPcGNvZGUua2luZCwgIiBkb2Vzbid0IG1hdGNoIGdsb2JhbCdz
IHR5cGUgIiwgZ2xvYmFsLnR5cGUua2luZCk7CiAKICAgICAgICAgaWYgKGluaXRPcGNvZGUgPT0g
UmVmRnVuYykKICAgICAgICAgICAgIG1faW5mby0+YWRkRGVjbGFyZWRGdW5jdGlvbihnbG9iYWwu
aW5pdGlhbEJpdHNPckltcG9ydE51bWJlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkKaW5kZXggYTFiMDcyNjlhZmU3ODMyMmEx
ZDU3OTNjYzk1ZTRhYzk1YTVlNTJjMi4uMTc1ZWNkZmE4MDM3ODIzMmI1MDc0MjMxODg3MTEwOWE5
MGExNDM3ZiAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vZ2VuZXJhdGVX
YXNtT3BzSGVhZGVyLnB5CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2dlbmVyYXRl
V2FzbU9wc0hlYWRlci5weQpAQCAtMjE0LDcgKzIxNCw3IEBAIGVudW0gY2xhc3MgVHlwZUtpbmQg
OiBpbnQ4X3QgewogCiBzdHJ1Y3QgVHlwZSB7CiAgICAgVHlwZUtpbmQga2luZDsKLSAgICB1bnNp
Z25lZCBpbmRleDsKKyAgICB1aW50NjRfdCBpbmRleDsKIAogICAgIGJvb2wgb3BlcmF0b3I9PShj
b25zdCBUeXBlJiBvdGhlcikgY29uc3QKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XYXNtVG9KUy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XYXNtVG9KUy5jcHAKaW5kZXggNzFlM2Q3ZmM3ZTgwMTMyNmRhYzQ1MGE3M2JjNzM5YzE4
NzQ1NWE3MC4uNzViNTFkYWI1NWRhMWMwMzhiMGM3OGUyMTBmN2Q2YjVhYTMyOGUzOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2FzbVRvSlMuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcApAQCAtMTA1LDYgKzEwNSw3
IEBAIEV4cGVjdGVkPE1hY3JvQXNzZW1ibGVyQ29kZVJlZjxXYXNtRW50cnlQdHJUYWc+LCBCaW5k
aW5nRmFpbHVyZT4gd2FzbVRvSlMoVk0mIHZtCiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpW
b2lkOgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuYzoKICAgICAgICAgICAgICAgICBS
RUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOyAvLyBIYW5kbGVkIGFib3ZlLgorICAgICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4
dGVybnJlZjoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1bmNyZWY6CiAgICAgICAgICAg
ICBjYXNlIFR5cGVLaW5kOjpJMzI6CkBAIC0xNzcsNiArMTc4LDcgQEAgRXhwZWN0ZWQ8TWFjcm9B
c3NlbWJsZXJDb2RlUmVmPFdhc21FbnRyeVB0clRhZz4sIEJpbmRpbmdGYWlsdXJlPiB3YXNtVG9K
UyhWTSYgdm0KICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlZvaWQ6CiAgICAgICAgICAgICBj
YXNlIFR5cGVLaW5kOjpGdW5jOgogICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9S
RUFDSEVEKCk7IC8vIEhhbmRsZWQgYWJvdmUuCisgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpU
eXBlSWR4OgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okkz
MjoKQEAgLTMxOSw2ICszMjEsNyBAQCBFeHBlY3RlZDxNYWNyb0Fzc2VtYmxlckNvZGVSZWY8V2Fz
bUVudHJ5UHRyVGFnPiwgQmluZGluZ0ZhaWx1cmU+IHdhc21Ub0pTKFZNJiB2bQogICAgICAgICB9
CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1bmNyZWY6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6
OkV4dGVybnJlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKICAgICAgICAgICAg
IGppdC5tb3ZlKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCB3YXNtQ2FsbEluZm8ucmVzdWx0c1sw
XS5ncHIoKSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBUeXBlS2luZDo6RjMy
OiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
RnVuY3Rpb24uY3BwCmluZGV4IDY3ZTRlNzE4ZDIxYTI0N2JiMDJiZDNiODdmOGNjYTRhNDI3MDI0
NjguLjQzNWU1ZTRiY2JmODc4NWZmNzNiYzJhYTY0N2I1MDRhZDVmZjk5ZjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3Bw
CkBAIC04Myw2ICs4Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjYWxsV2ViQXNzZW1i
bHlGdW5jdGlvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgICAgIGNhc2Ug
V2FzbTo6VHlwZUtpbmQ6OkkzMjoKICAgICAgICAgICAgIGFyZyA9IEpTVmFsdWU6OmRlY29kZShh
cmcudG9JbnQzMihnbG9iYWxPYmplY3QpKTsKICAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIFdhc206OlR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICBjYXNlIFdhc206OlR5cGVLaW5k
OjpGdW5jcmVmOiB7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVuY3Rpb24o
dm0sIGFyZykgJiYgIWFyZy5pc051bGwoKSkKICAgICAgICAgICAgICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2Vi
QXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1bmNyZWYgbXVzdCBiZSBh
biBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL3dhc20uanNvbiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL3dhc20u
anNvbgppbmRleCAwMWJlY2ZmMjk2ZWRjOTc4OTljYjdkOTI5NzA0YTNkZGE4MmU0OWNmLi4yYTcy
ODdkOTYwOTAwMDE5ZmRhMTFjZDY3NGYyYTAxYjJkYmYxNTg4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS93YXNtLmpzb24KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vd2FzbS5qc29uCkBAIC03LDE4ICs3LDE5IEBACiAgICAgICAgIHsgIm5hbWUiOiAidmVy
c2lvbiIsICAgICAgInR5cGUiOiAidWludDMyIiwgInZhbHVlIjogICAgICAgICAgMSwgImRlc2Ny
aXB0aW9uIjogIlZlcnNpb24gbnVtYmVyIiB9CiAgICAgXSwKICAgICAidHlwZSIgOiB7Ci0gICAg
ICAgICJpMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTEsICJiM3R5
cGUiOiAiQjM6OkludDMyIiB9LAotICAgICAgICAiaTY0IjogICAgICAgeyAidHlwZSI6ICJ2YXJp
bnQ3IiwgInZhbHVlIjogIC0yLCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKLSAgICAgICAgImYz
MiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMywgImIzdHlwZSI6ICJC
Mzo6RmxvYXQiIH0sCi0gICAgICAgICJmNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAi
dmFsdWUiOiAgLTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKLSAgICAgICAgImZ1bmNyZWYi
OiAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0xNiwgImIzdHlwZSI6ICJCMzo6SW50
NjQiIH0sCi0gICAgICAgICJleHRlcm5yZWYiOiB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUi
OiAtMTcsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAotICAgICAgICAiZnVuYyI6ICAgICAgeyAi
dHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTMyLCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9LAot
ICAgICAgICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTY0LCAi
YjN0eXBlIjogIkIzOjpWb2lkIiB9CisgICAgICAgICJpMzIiOiAgICAgICB7ICJ0eXBlIjogInZh
cmludDciLCAidmFsdWUiOiAgIC0xLCAiYjN0eXBlIjogIkIzOjpJbnQzMiIgfSwKKyAgICAgICAg
Imk2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTIsICJiM3R5cGUi
OiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZjMyIjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3
IiwgInZhbHVlIjogICAtMywgImIzdHlwZSI6ICJCMzo6RmxvYXQiIH0sCisgICAgICAgICJmNjQi
OiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC00LCAiYjN0eXBlIjogIkIz
OjpEb3VibGUiIH0sCisgICAgICAgICJmdW5jcmVmIjogICB7ICJ0eXBlIjogInZhcmludDciLCAi
dmFsdWUiOiAgLTE2LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKKyAgICAgICAgImV4dGVybnJl
ZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTcsICJiM3R5cGUiOiAiQjM6Oklu
dDY0IiB9LAorICAgICAgICAiZnVuYyI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVl
IjogIC0zMiwgImIzdHlwZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAgInZvaWQiOiAgICAgIHsg
InR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNjQsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0s
CisgICAgICAgICJ0eXBlX2lkeCI6ICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtMTI4
LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfQogICAgIH0sCiAgICAgInZhbHVlX3R5cGUiOiBbImkz
MiIsICJpNjQiLCAiZjMyIiwgImY2NCIsICJleHRlcm5yZWYiLCAiZnVuY3JlZiJdLAogICAgICJi
bG9ja190eXBlIjogWyJpMzIiLCAiaTY0IiwgImYzMiIsICJmNjQiLCAidm9pZCIsICJleHRlcm5y
ZWYiLCAiZnVuY3JlZiJdLAotICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsImV4dGVybnJlZiJd
LAorICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsICJleHRlcm5yZWYiLCAidHlwZV9pZHgiXSwK
ICAgICAiZXh0ZXJuYWxfa2luZCI6IHsKICAgICAgICAgIkZ1bmN0aW9uIjogeyAidHlwZSI6ICJ1
aW50OCIsICJ2YWx1ZSI6IDAgfSwKICAgICAgICAgIlRhYmxlIjogICAgeyAidHlwZSI6ICJ1aW50
OCIsICJ2YWx1ZSI6IDEgfSwKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYmRhZjFhMjk4MjIyNzcwMjljZDQ1ODA4NzAwNjZhNDM4NDVlMjg3
Yi4uMGZmYTA4MzA4NDIwZDZiZjc2ZGEzYTkzZDBkMzcxN2JlODQzNzIzNiAxMDA2NDQKLS0tIGEv
SlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBA
QAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSByZWYuZnVuYyB0
byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxlIHJlZmVyZW5j
ZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5kZXguIFNpbmNl
IGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBlIG9mIHRoZSBm
dW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0eXBlX2lkeAor
ICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJlbmNlcy4KKwor
ICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBTYWFtIEJhcmF0aSAgPHNi
YXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IHRydXN0IHBhcnNpbmcgaW5mb3JtYXRp
b24gdG8gdGVsbCB1cyBpZiB3ZSd2ZSBlbWl0dGVkIG9wX2NhbGxfZXZhbApkaWZmIC0tZ2l0IGEv
SlNUZXN0cy93YXNtL3dhc20uanNvbiBiL0pTVGVzdHMvd2FzbS93YXNtLmpzb24KaW5kZXggMDFi
ZWNmZjI5NmVkYzk3ODk5Y2I3ZDkyOTcwNGEzZGRhODJlNDljZi4uMmE3Mjg3ZDk2MDkwMDAxOWZk
YTExY2Q2NzRmMmEwMWIyZGJmMTU4OCAxMDA2NDQKLS0tIGEvSlNUZXN0cy93YXNtL3dhc20uanNv
bgorKysgYi9KU1Rlc3RzL3dhc20vd2FzbS5qc29uCkBAIC03LDE4ICs3LDE5IEBACiAgICAgICAg
IHsgIm5hbWUiOiAidmVyc2lvbiIsICAgICAgInR5cGUiOiAidWludDMyIiwgInZhbHVlIjogICAg
ICAgICAgMSwgImRlc2NyaXB0aW9uIjogIlZlcnNpb24gbnVtYmVyIiB9CiAgICAgXSwKICAgICAi
dHlwZSIgOiB7Ci0gICAgICAgICJpMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFs
dWUiOiAgLTEsICJiM3R5cGUiOiAiQjM6OkludDMyIiB9LAotICAgICAgICAiaTY0IjogICAgICAg
eyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0yLCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIg
fSwKLSAgICAgICAgImYzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAt
MywgImIzdHlwZSI6ICJCMzo6RmxvYXQiIH0sCi0gICAgICAgICJmNjQiOiAgICAgICB7ICJ0eXBl
IjogInZhcmludDciLCAidmFsdWUiOiAgLTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKLSAg
ICAgICAgImZ1bmNyZWYiOiAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0xNiwgImIz
dHlwZSI6ICJCMzo6SW50NjQiIH0sCi0gICAgICAgICJleHRlcm5yZWYiOiB7ICJ0eXBlIjogInZh
cmludDciLCAidmFsdWUiOiAtMTcsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAotICAgICAgICAi
ZnVuYyI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTMyLCAiYjN0eXBlIjog
IkIzOjpWb2lkIiB9LAotICAgICAgICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3Iiwg
InZhbHVlIjogLTY0LCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9CisgICAgICAgICJpMzIiOiAgICAg
ICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC0xLCAiYjN0eXBlIjogIkIzOjpJbnQz
MiIgfSwKKyAgICAgICAgImk2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6
ICAgLTIsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZjMyIjogICAgICAgeyAi
dHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogICAtMywgImIzdHlwZSI6ICJCMzo6RmxvYXQiIH0s
CisgICAgICAgICJmNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC00
LCAiYjN0eXBlIjogIkIzOjpEb3VibGUiIH0sCisgICAgICAgICJmdW5jcmVmIjogICB7ICJ0eXBl
IjogInZhcmludDciLCAidmFsdWUiOiAgLTE2LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKKyAg
ICAgICAgImV4dGVybnJlZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTcsICJi
M3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZnVuYyI6ICAgICAgeyAidHlwZSI6ICJ2
YXJpbnQ3IiwgInZhbHVlIjogIC0zMiwgImIzdHlwZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAg
InZvaWQiOiAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNjQsICJiM3R5cGUi
OiAiQjM6OlZvaWQiIH0sCisgICAgICAgICJ0eXBlX2lkeCI6ICB7ICJ0eXBlIjogInZhcmludDci
LCAidmFsdWUiOiAtMTI4LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfQogICAgIH0sCiAgICAgInZh
bHVlX3R5cGUiOiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIsICJleHRlcm5yZWYiLCAiZnVu
Y3JlZiJdLAogICAgICJibG9ja190eXBlIjogWyJpMzIiLCAiaTY0IiwgImYzMiIsICJmNjQiLCAi
dm9pZCIsICJleHRlcm5yZWYiLCAiZnVuY3JlZiJdLAotICAgICJyZWZfdHlwZSI6IFsiZnVuY3Jl
ZiIsImV4dGVybnJlZiJdLAorICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsICJleHRlcm5yZWYi
LCAidHlwZV9pZHgiXSwKICAgICAiZXh0ZXJuYWxfa2luZCI6IHsKICAgICAgICAgIkZ1bmN0aW9u
IjogeyAidHlwZSI6ICJ1aW50OCIsICJ2YWx1ZSI6IDAgfSwKICAgICAgICAgIlRhYmxlIjogICAg
eyAidHlwZSI6ICJ1aW50OCIsICJ2YWx1ZSI6IDEgfSwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422348</attachid>
            <date>2021-03-05 01:14:30 -0800</date>
            <delta_ts>2021-03-05 02:17:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222779-20210305161428.patch</filename>
            <type>text/plain</type>
            <size>26259</size>
            <attacher name="Dmitry">dbezhetskov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
ZTgxNDM5M2Q0NmYyMTczNTY2YTlmNTE2YzY2MTg4MjExZGQxY2I3Li4wOGVkMmZkYzZjYjZkOWFh
YjA2YTQ4YjdjMjE5ZmY3M2M2YjRkYzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBp
Z2FsaWEuY29tPgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSBy
ZWYuZnVuYyB0byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxl
IHJlZmVyZW5jZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5k
ZXguIFNpbmNlIGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBl
IG9mIHRoZSBmdW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0
eXBlX2lkeAorICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJl
bmNlcy4KKworCisgICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorICAgICAgICAqIHdh
c20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6QWlySVJHZW5l
cmF0b3I6OmFkZFRhYmxlR3Jvdyk6CisgICAgICAgIChKU0M6Oldhc206OkFpcklSR2VuZXJhdG9y
OjphZGRUYWJsZUZpbGwpOgorICAgICAgICAoSlNDOjpXYXNtOjpBaXJJUkdlbmVyYXRvcjo6dW5p
ZnkpOgorICAgICAgICAqIHdhc20vV2FzbUZvcm1hdC5oOgorICAgICAgICAoSlNDOjpXYXNtOjpp
c1ZhbHVlVHlwZSk6CisgICAgICAgIChKU0M6Oldhc206OmlzU3VidHlwZSk6CisgICAgICAgIChK
U0M6Oldhc206OmlzUmVmVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRnVuY3Rpb25QYXJzZXIu
aDoKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OmNoZWNrQnJh
bmNoVGFyZ2V0KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46
OnVuaWZ5KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OnBh
cnNlRXhwcmVzc2lvbik6CisgICAgICAgICogd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpXYXNtOjpMTEludEdlbmVyYXRvcjo6Y2FsbEluZm9ybWF0aW9uRm9yQ2Fs
bGVyKToKKyAgICAgICAgKEpTQzo6V2FzbTo6TExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlv
bkZvckNhbGxlZSk6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50R2VuZXJhdG9yOjphZGRBcmd1
bWVudHMpOgorICAgICAgICAqIHdhc20vV2FzbVNlY3Rpb25QYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpXYXNtOjpTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCk6CisgICAgICAgICogd2FzbS9n
ZW5lcmF0ZVdhc21PcHNIZWFkZXIucHk6CisgICAgICAgICogd2FzbS9qcy9XYXNtVG9KUy5jcHA6
CisgICAgICAgIChKU0M6Oldhc206Ondhc21Ub0pTKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04pOgorICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0NvY29hXSBSRUdS
RVNTSU9OKHIyNzI3NTIpOiBmaXggc29tZSBpbnRlcm5hbCBidWlsZHMgdGhhdCB1c2UgV1RGU3Ry
aW5nOjpXVEZTdHJpbmcoTlNTdHJpbmcgKikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9PcHRpb25zTGlzdC5oCmluZGV4IGJjMWNlZGI5MDNjODZmZjc2ZmEyYjQxNGZlOTgzYTI4MTdl
M2ZhNDcuLmZhMjFlNGE4ZGQ0Nzg4MGM1OWQxMWMxZjZhMzkxOWYzMmVhN2M4ZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTIwLDYgKzUyMCw3
IEBAIEpTX0VYUE9SVF9QUklWQVRFIGJvb2wgY2FuVXNlSklUQ2FnZSgpOwogICAgIHYoQm9vbCwg
dXNlUHJpdmF0ZU1ldGhvZHMsIHRydWUsIE5vcm1hbCwgIklmIHRydWUsIHRoZSBwYXJzZXIgd2ls
bCB1bmRlcnN0YW5kIHByaXZhdGUgbWV0aG9kcyBpbnNpZGUgY2xhc3Nlcy4iKSBcCiAgICAgdihC
b29sLCB1c2VXZWJBc3NlbWJseVN0cmVhbWluZywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdG8gcnVu
IFdlYkFzc2VtYmx5J3MgU3RyZWFtaW5nIEFQSSIpIFwKICAgICB2KEJvb2wsIHVzZVdlYkFzc2Vt
Ymx5UmVmZXJlbmNlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlwZXMgZnJvbSB0aGUgd2FzbSBy
ZWZlcmVuY2VzIHNwZWMuIikgXAorICAgIHYoQm9vbCwgdXNlV2ViQXNzZW1ibHlUeXBlZEZ1bmN0
aW9uUmVmZXJlbmNlcywgZmFsc2UsIE5vcm1hbCwgIkFsbG93IGZ1bmN0aW9uIHR5cGVzIGZyb20g
dGhlIHdhc20gdHlwZWQgZnVuY3Rpb24gcmVmZXJlbmNlcyBzcGVjLiIpIFwKICAgICB2KEJvb2ws
IHVzZVdlYkFzc2VtYmx5TXVsdGlWYWx1ZXMsIHRydWUsIE5vcm1hbCwgIkFsbG93IHR5cGVzIGZy
b20gdGhlIHdhc20gbXVsaXQtdmFsdWVzIHNwZWMuIikgXAogICAgIHYoQm9vbCwgdXNlV2ViQXNz
ZW1ibHlUaHJlYWRpbmcsIHRydWUsIE5vcm1hbCwgIkFsbG93IGluc3RydWN0aW9ucyBmcm9tIHRo
ZSB3YXNtIHRocmVhZGluZyBzcGVjLiIpIFwKICAgICB2KEJvb2wsIHVzZVdlYWtSZWZzLCB0cnVl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFdlYWtSZWYgY29uc3RydWN0b3IuIikgXApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHAKaW5kZXggNDFk
MjJjMmVlZWM0N2Y0NDdmYTMwYzQzMmE3ZDNiNTA2NzBhMjg5ZC4uNDQzOGE1Njg1MjIwMDA2OGYy
YTg2NzgwYjY2MGJlNWY0M2YyZjc5NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwCkBAIC0xMTc2LDcgKzExNzYsNyBAQCBhdXRvIEFp
cklSR2VuZXJhdG9yOjphZGRUYWJsZVNpemUodW5zaWduZWQgdGFibGVJbmRleCwgRXhwcmVzc2lv
blR5cGUmIHJlc3VsdCkgLQogYXV0byBBaXJJUkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2ln
bmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25UeXBlIGZpbGwsIEV4cHJlc3Npb25UeXBlIGRlbHRh
LCBFeHByZXNzaW9uVHlwZSYgcmVzdWx0KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJU
KGZpbGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3Rh
YmxlSW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCks
IG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChkZWx0
YS50bXAoKSk7CiAgICAgQVNTRVJUKGRlbHRhLnR5cGUoKS5pc0kzMigpKTsKICAgICByZXN1bHQg
PSB0bXBGb3JUeXBlKFR5cGVzOjpJMzIpOwpAQCAtMTE4OSw3ICsxMTg5LDcgQEAgYXV0byBBaXJJ
UkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2lnbmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25U
eXBlIGZpbGwsIEV4cHIKIGF1dG8gQWlySVJHZW5lcmF0b3I6OmFkZFRhYmxlRmlsbCh1bnNpZ25l
ZCB0YWJsZUluZGV4LCBFeHByZXNzaW9uVHlwZSBvZmZzZXQsIEV4cHJlc3Npb25UeXBlIGZpbGws
IEV4cHJlc3Npb25UeXBlIGNvdW50KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJUKGZp
bGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3RhYmxl
SW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCksIG1f
aW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChvZmZzZXQu
dG1wKCkpOwogICAgIEFTU0VSVChvZmZzZXQudHlwZSgpLmlzSTMyKCkpOwogICAgIEFTU0VSVChj
b3VudC50bXAoKSk7CkBAIC0zNDE5LDcgKzM0MTksNyBAQCBhdXRvIEFpcklSR2VuZXJhdG9yOjph
ZGRDYWxsSW5kaXJlY3QodW5zaWduZWQgdGFibGVJbmRleCwgY29uc3QgU2lnbmF0dXJlJiBzaWdu
YQogCiB2b2lkIEFpcklSR2VuZXJhdG9yOjp1bmlmeShjb25zdCBFeHByZXNzaW9uVHlwZSBkc3Qs
IGNvbnN0IEV4cHJlc3Npb25UeXBlIHNvdXJjZSkKIHsKLSAgICBBU1NFUlQoc291cmNlLnR5cGUo
KSA9PSBkc3QudHlwZSgpKTsKKyAgICBBU1NFUlQoaXNTdWJ0eXBlKHNvdXJjZS50eXBlKCksIGRz
dC50eXBlKCkpKTsKICAgICBhcHBlbmQobW92ZU9wRm9yVmFsdWVUeXBlKGRzdC50eXBlKCkpLCBz
b3VyY2UsIGRzdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21Gb3JtYXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApp
bmRleCAzOThlOTQwYmQyMzYzNGQ5Y2E2OTBhZTJkNGU0ZDg4MzY5NjEyN2M3Li44MDdhZGI4ZTcw
NWQ4Zjc1MjlhNTRjOGYyNDMxMzBjZGVhY2ZmNDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbUZvcm1hdC5oCkBAIC03MCwxNyArNzAsMjcgQEAgaW5saW5lIGJvb2wgaXNWYWx1ZVR5
cGUoVHlwZSB0eXBlKQogICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICBjYXNlIFR5
cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICByZXR1cm4gT3B0aW9uczo6dXNlV2ViQXNzZW1ibHlS
ZWZlcmVuY2VzKCk7CisgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKKyAgICAgICAgcmV0dXJu
IE9wdGlvbnM6OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKTsKICAgICBk
ZWZhdWx0OgogICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitp
bmxpbmUgYm9vbCBpc1N1YnR5cGUoVHlwZSBzdWIsIFR5cGUgcGFyZW50KQoreworICAgIGlmIChz
dWIuaXNUeXBlSWR4KCkgJiYgcGFyZW50LmlzRnVuY3JlZigpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBzdWIgPT0gcGFyZW50OworfQorCiBpbmxpbmUgYm9vbCBpc1JlZlR5
cGUoVHlwZSB0eXBlKQogewotICAgIHJldHVybiB0eXBlLmlzRnVuY3JlZigpIHx8IHR5cGUuaXNF
eHRlcm5yZWYoKTsKKyAgICByZXR1cm4gdHlwZS5pc0Z1bmNyZWYoKSB8fCB0eXBlLmlzRXh0ZXJu
cmVmKCkgfHwgdHlwZS5pc1R5cGVJZHgoKTsKIH0KLSAgICAKKwogZW51bSBjbGFzcyBFeHRlcm5h
bEtpbmQgOiB1aW50OF90IHsKICAgICAvLyBGSVhNRSBhdXRvLWdlbmVyYXRlIHRoaXMuIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUyMzEKICAgICBGdW5jdGlvbiA9
IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRnVuY3Rpb25Q
YXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5o
CmluZGV4IGEwNmFkODAxNmFlYWY2Y2E4MmNlNmU0YTFlOTI0ZWUzNzc2NTU4ZmIuLmRmMGUxY2Fm
MzA1NjI0Njc3NmUwMzM5N2QyYWFiMWM5ZDI4ZTE1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCkBAIC02OTksNyArNjk5LDcgQEAgYXV0
byBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6Y2hlY2tCcmFuY2hUYXJnZXQoY29uc3QgQ29udHJv
bFR5cGUmIHRhcmdldCkgLT4gUGEKIAogICAgIHVuc2lnbmVkIG9mZnNldCA9IG1fZXhwcmVzc2lv
blN0YWNrLnNpemUoKSAtIHRhcmdldC5icmFuY2hUYXJnZXRBcml0eSgpOwogICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCB0YXJnZXQuYnJhbmNoVGFyZ2V0QXJpdHkoKTsgKytpKQotICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpICE9IG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKSwgImJyYW5jaCdzIHN0YWNrIHR5cGUg
aXMgbm90IGEgYmxvY2sncyB0eXBlIGJyYW5jaCB0YXJnZXQgdHlwZS4gU3RhY2sgdmFsdWUgaGFz
IHR5cGUiLCBtX2V4cHJlc3Npb25TdGFja1tvZmZzZXQgKyBpXS50eXBlKCkua2luZCwgIiBidXQg
YnJhbmNoIHRhcmdldCBleHBlY3RzIGEgdmFsdWUgb2YgIiwgdGFyZ2V0LmJyYW5jaFRhcmdldFR5
cGUoaSkua2luZCwgIiBhdCBpbmRleCAiLCBpKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRighaXNTdWJ0eXBlKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpLCBtX2V4cHJlc3Npb25T
dGFja1tvZmZzZXQgKyBpXS50eXBlKCkpLCAiYnJhbmNoJ3Mgc3RhY2sgdHlwZSBpcyBub3QgYSBi
bG9jaydzIHR5cGUgYnJhbmNoIHRhcmdldCB0eXBlLiBTdGFjayB2YWx1ZSBoYXMgdHlwZSIsIG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKS5raW5kLCAiIGJ1dCBicmFuY2ggdGFy
Z2V0IGV4cGVjdHMgYSB2YWx1ZSBvZiAiLCB0YXJnZXQuYnJhbmNoVGFyZ2V0VHlwZShpKS5raW5k
LCAiIGF0IGluZGV4ICIsIGkpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTcwOSw3ICs3MDks
NyBAQCBhdXRvIEZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+Ojp1bmlmeShjb25zdCBDb250cm9sVHlw
ZSYgY29udHJvbERhdGEpIC0+IFBhcnRpYWxSZQogewogICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVybkNvdW50KCkgIT0gbV9leHByZXNzaW9u
U3RhY2suc2l6ZSgpLCAiIGJsb2NrIHdpdGggdHlwZTogIiwgY29udHJvbERhdGEuc2lnbmF0dXJl
KCktPnRvU3RyaW5nKCksICIgcmV0dXJuczogIiwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJl
dHVybkNvdW50KCksICIgYnV0IHN0YWNrIGhhczogIiwgbV9leHByZXNzaW9uU3RhY2suc2l6ZSgp
LCAiIHZhbHVlcyIpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb250cm9sRGF0YS5z
aWduYXR1cmUoKS0+cmV0dXJuQ291bnQoKTsgKytpKQotICAgICAgICBXQVNNX1ZBTElEQVRPUl9G
QUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5cGUoKSAhPSBjb250cm9sRGF0YS5zaWduYXR1
cmUoKS0+cmV0dXJuVHlwZShpKSwgImNvbnRyb2wgZmxvdyByZXR1cm5zIHdpdGggdW5leHBlY3Rl
ZCB0eXBlLiAiLCBtX2V4cHJlc3Npb25TdGFja1tpXS50eXBlKCkua2luZCwgIiBpcyBub3QgYSAi
LCBjb250cm9sRGF0YS5zaWduYXR1cmUoKS0+cmV0dXJuVHlwZShpKS5raW5kKTsKKyAgICAgICAg
V0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5
cGUoKSwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVyblR5cGUoaSkpLCAiY29udHJvbCBm
bG93IHJldHVybnMgd2l0aCB1bmV4cGVjdGVkIHR5cGUuICIsIG1fZXhwcmVzc2lvblN0YWNrW2ld
LnR5cGUoKS5raW5kLCAiIGlzIG5vdCBhICIsIGNvbnRyb2xEYXRhLnNpZ25hdHVyZSgpLT5yZXR1
cm5UeXBlKGkpLmtpbmQpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTgzNiw3ICs4MzYsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgV0FT
TV9UUllfUE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhpbmRleCwgInRhYmxlLnNldCIpOwogICAg
ICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gaW5kZXgudHlwZSgp
LmtpbmQsICJ0YWJsZS5zZXQgaW5kZXggdG8gdHlwZSAiLCBpbmRleC50eXBlKCkua2luZCwgIiBl
eHBlY3RlZCAiLCBUeXBlS2luZDo6STMyKTsKICAgICAgICAgVHlwZSB0eXBlID0gbV9pbmZvLnRh
Ymxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOwotICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlM
X0lGKHZhbHVlLnR5cGUoKSAhPSB0eXBlLCAidGFibGUuc2V0IHZhbHVlIHRvIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQsICIgZXhwZWN0ZWQgIiwgdHlwZS5raW5kKTsKKyAgICAgICAgV0FTTV9W
QUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKHZhbHVlLnR5cGUoKSwgdHlwZSksICJ0YWJsZS5z
ZXQgdmFsdWUgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCB0eXBl
LmtpbmQpOwogICAgICAgICBSRUxFQVNFX0FTU0VSVChtX2luZm8udGFibGVzW3RhYmxlSW5kZXhd
LnR5cGUoKSA9PSBUYWJsZUVsZW1lbnRUeXBlOjpFeHRlcm5yZWYgfHwgbV9pbmZvLnRhYmxlc1t0
YWJsZUluZGV4XS50eXBlKCkgPT0gVGFibGVFbGVtZW50VHlwZTo6RnVuY3JlZik7CiAgICAgICAg
IFdBU01fVFJZX0FERF9UT19DT05URVhUKGFkZFRhYmxlU2V0KHRhYmxlSW5kZXgsIGluZGV4LCB2
YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtODk5LDcgKzg5OSw4IEBAIEZPUl9FQUNI
X1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICAgICAgV0FTTV9UUllf
UE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhkZWx0YSwgInRhYmxlLmdyb3ciKTsKICAgICAgICAg
ICAgIFdBU01fVFJZX1BPUF9FWFBSRVNTSU9OX1NUQUNLX0lOVE8oZmlsbCwgInRhYmxlLmdyb3ci
KTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxsLnR5cGUoKSAhPSBt
X2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5ncm93IGV4cGVjdHMg
ZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUo
KS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAgICAgIFR5cGUgdGFi
bGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOworICAgICAgICAg
ICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlwZSgpLCB0YWJsZVR5
cGUpLCAidGFibGUuZ3JvdyBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAiLCB0YWJsZVR5cGUu
a2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAgICBXQVNNX1ZBTElE
QVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gZGVsdGEudHlwZSgpLmtpbmQsICJ0YWJsZS5n
cm93IGV4cGVjdHMgYW4gaTMyIGRlbHRhIHZhbHVlLCBnb3QgIiwgZGVsdGEudHlwZSgpLmtpbmQp
OwogCiAgICAgICAgICAgICBFeHByZXNzaW9uVHlwZSByZXN1bHQ7CkBAIC05MTgsNyArOTE5LDgg
QEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgICAg
ICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKGZpbGwsICJ0YWJsZS5maWxsIik7
CiAgICAgICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKG9mZnNldCwg
InRhYmxlLmZpbGwiKTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxs
LnR5cGUoKSAhPSBtX2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5m
aWxsIGV4cGVjdHMgZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRl
eF0ud2FzbVR5cGUoKS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAg
ICAgIFR5cGUgdGFibGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgp
OworICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlw
ZSgpLCB0YWJsZVR5cGUpLCAidGFibGUuZmlsbCBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAi
LCB0YWJsZVR5cGUua2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gb2Zmc2V0LnR5cGUoKS5r
aW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkzMiBvZmZzZXQgdmFsdWUsIGdvdCAiLCBvZmZz
ZXQudHlwZSgpLmtpbmQpOwogICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihUeXBl
S2luZDo6STMyICE9IGNvdW50LnR5cGUoKS5raW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkz
MiBjb3VudCB2YWx1ZSwgZ290ICIsIGNvdW50LnR5cGUoKS5raW5kKTsKIApAQCAtMTEwNCw2ICsx
MTA2LDEzIEBAIEZPUl9FQUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogCiAg
ICAgICAgIEV4cHJlc3Npb25UeXBlIHJlc3VsdDsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NP
TlRFWFQoYWRkUmVmRnVuYyhpbmRleCwgcmVzdWx0KSk7CisKKyAgICAgICAgaWYgKE9wdGlvbnM6
OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKSkgeworICAgICAgICAgICAg
U2lnbmF0dXJlSW5kZXggc2lnbmF0dXJlSW5kZXggPSBtX2luZm8uc2lnbmF0dXJlSW5kZXhGcm9t
RnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKKyAgICAgICAgICAgIG1fZXhwcmVzc2lvblN0YWNr
LmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlIHtUeXBlS2luZDo6VHlwZUlkeCwgc2lnbmF0dXJlSW5k
ZXh9LCByZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorCiAgICAg
ICAgIG1fZXhwcmVzc2lvblN0YWNrLmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlczo6RnVuY3JlZiwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9CkBAIC0xMTI1LDcgKzExMzQsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgVHlw
ZWRFeHByZXNzaW9uIHZhbHVlOwogICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFD
S19JTlRPKHZhbHVlLCAic2V0X2xvY2FsIik7CiAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoaW5kZXggPj0gbV9sb2NhbHMuc2l6ZSgpLCAiYXR0ZW1wdCB0byBzZXQgdW5rbm93biBsb2Nh
bCAiLCBpbmRleCwgIiBsYXN0IG9uZSBpcyAiLCBtX2xvY2Fscy5zaXplKCkpOwotICAgICAgICBX
QVNNX1ZBTElEQVRPUl9GQUlMX0lGKHZhbHVlLnR5cGUoKSAhPSBtX2xvY2Fsc1tpbmRleF0sICJz
ZXRfbG9jYWwgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xv
Y2Fsc1tpbmRleF0ua2luZCk7CisgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoIWlzU3Vi
dHlwZSh2YWx1ZS50eXBlKCksIG1fbG9jYWxzW2luZGV4XSksICJzZXRfbG9jYWwgdG8gdHlwZSAi
LCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xvY2Fsc1tpbmRleF0ua2luZCk7
CiAgICAgICAgIFdBU01fVFJZX0FERF9UT19DT05URVhUKHNldExvY2FsKGluZGV4LCB2YWx1ZSkp
OwogICAgICAgICByZXR1cm4geyB9OwogICAgIH0KQEAgLTExMzcsNyArMTE0Niw3IEBAIEZPUl9F
QUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICBXQVNNX1BBUlNF
Ul9GQUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrLmlzRW1wdHkoKSwgImNhbid0IHRlZV9sb2NhbCBv
biBlbXB0eSBleHByZXNzaW9uIHN0YWNrIik7CiAgICAgICAgIFR5cGVkRXhwcmVzc2lvbiB2YWx1
ZSA9IG1fZXhwcmVzc2lvblN0YWNrLmxhc3QoKTsKICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRihpbmRleCA+PSBtX2xvY2Fscy5zaXplKCksICJhdHRlbXB0IHRvIHRlZSB1bmtub3duIGxv
Y2FsICIsIGluZGV4LCAiIGxhc3Qgb25lIGlzICIsIG1fbG9jYWxzLnNpemUoKSk7Ci0gICAgICAg
IFdBU01fVkFMSURBVE9SX0ZBSUxfSUYodmFsdWUudHlwZSgpICE9IG1fbG9jYWxzW2luZGV4XSwg
InNldF9sb2NhbCB0byB0eXBlICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1f
bG9jYWxzW2luZGV4XS5raW5kKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNT
dWJ0eXBlKHZhbHVlLnR5cGUoKSwgbV9sb2NhbHNbaW5kZXhdKSwgInNldF9sb2NhbCB0byB0eXBl
ICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1fbG9jYWxzW2luZGV4XS5raW5k
KTsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0TG9jYWwoaW5kZXgsIHZhbHVl
KSk7CiAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQpAQCAtMTE2NSw3ICsxMTc0LDcgQEAgRk9S
X0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAKICAgICAgICAgVHlwZSBn
bG9iYWxUeXBlID0gbV9pbmZvLmdsb2JhbHNbaW5kZXhdLnR5cGU7CiAgICAgICAgIEFTU0VSVChp
c1ZhbHVlVHlwZShnbG9iYWxUeXBlKSk7Ci0gICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYo
Z2xvYmFsVHlwZSAhPSB2YWx1ZS50eXBlKCksICJzZXRfZ2xvYmFsICIsIGluZGV4LCAiIHdpdGgg
dHlwZSAiLCBnbG9iYWxUeXBlLmtpbmQsICIgd2l0aCBhIHZhcmlhYmxlIG9mIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQpOworICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1YnR5
cGUodmFsdWUudHlwZSgpLCBnbG9iYWxUeXBlKSwgInNldF9nbG9iYWwgIiwgaW5kZXgsICIgd2l0
aCB0eXBlICIsIGdsb2JhbFR5cGUua2luZCwgIiB3aXRoIGEgdmFyaWFibGUgb2YgdHlwZSAiLCB2
YWx1ZS50eXBlKCkua2luZCk7CiAKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0
R2xvYmFsKGluZGV4LCB2YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtMTE4NCw3ICsx
MTkzLDcgQEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAg
ICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYoIWFyZ3MudHJ5UmVzZXJ2ZUNhcGFjaXR5KGNhbGxlZVNp
Z25hdHVyZS5hcmd1bWVudENvdW50KCkpLCAiY2FuJ3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9yeSBm
b3IgY2FsbCdzICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICIgYXJndW1lbnRz
Iik7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4
cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9u
IGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0KGkpOwotICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRihhcmcudHlwZSgpICE9IGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmly
c3RBcmd1bWVudEluZGV4KSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbCwgZ290ICIs
IGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50
KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOworICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRighaXNTdWJ0eXBlKGFyZy50eXBlKCksIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVu
dChpIC0gZmlyc3RBcmd1bWVudEluZGV4KSksICJhcmd1bWVudCB0eXBlIG1pc21hdGNoIGluIGNh
bGwsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIsIGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVy
ZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudEluZGV4KS5raW5kKTsKICAgICAgICAgICAgIGFy
Z3MudW5jaGVja2VkQXBwZW5kKGFyZyk7CiAgICAgICAgICAgICBtX2NvbnRleHQuZGlkUG9wVmFs
dWVGcm9tU3RhY2soKTsKICAgICAgICAgfQpAQCAtMTIyNSw3ICsxMjM0LDcgQEAgRk9SX0VBQ0hf
V0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgIGZvciAoc2l6ZV90IGkg
PSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkg
ewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9uIGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0
KGkpOwogICAgICAgICAgICAgaWYgKGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxKQot
ICAgICAgICAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoYXJnLnR5cGUoKSAhPSBjYWxs
ZWVTaWduYXR1cmUuYXJndW1lbnQoaSAtIGZpcnN0QXJndW1lbnRJbmRleCksICJhcmd1bWVudCB0
eXBlIG1pc21hdGNoIGluIGNhbGxfaW5kaXJlY3QsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIs
IGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudElu
ZGV4KS5raW5kKTsKKyAgICAgICAgICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1
YnR5cGUoYXJnLnR5cGUoKSwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50KGkgLSBmaXJzdEFyZ3Vt
ZW50SW5kZXgpKSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbF9pbmRpcmVjdCwgZ290
ICIsIGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3Vt
ZW50KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOwogICAgICAgICAgICAgYXJncy51bmNo
ZWNrZWRBcHBlbmQoYXJnKTsKICAgICAgICAgICAgIG1fY29udGV4dC5kaWRQb3BWYWx1ZUZyb21T
dGFjaygpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUxMSW50R2VuZXJhdG9yLmNwcAppbmRleCBhNGM2ODY1M2NlNmUwYTY5MzUzMWVmNDk0NzE5NTBj
NmY1MmQ2MjNhLi41MzdlZTU2NTIwZWQ1ODQzMDFmNDgyMDQ5NjJjZjI3ODZiZGIzNGZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21MTEludEdlbmVyYXRvci5jcHAK
QEAgLTUzOSw2ICs1MzksNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3JtYXRpb25G
b3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAgICBjYXNl
IFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlk
eDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA8IGdwckNvdW50KQogICAgICAgICAgICAgICAg
ICsrZ3BySW5kZXg7CiAgICAgICAgICAgICBlbHNlIGlmIChzdGFja0luZGV4KysgPj0gc3RhY2tD
b3VudCkKQEAgLTU5NCw2ICs1OTUsNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3Jt
YXRpb25Gb3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAg
ICBjYXNlIFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6
VHlwZUlkeDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA+IGdwckxpbWl0KQogICAgICAgICAg
ICAgICAgIGFyZ3VtZW50c1tpXSA9IHZpcnR1YWxSZWdpc3RlckZvckxvY2FsKC0tZ3BySW5kZXgp
OwogICAgICAgICAgICAgZWxzZQpAQCAtNjIxLDYgKzYyMyw3IEBAIGF1dG8gTExJbnRHZW5lcmF0
b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlcihjb25zdCBTaWduYXR1cmUmIHNpZ25hdHVyZSkg
LT4gTExJCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgorICAgICAgICBj
YXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgaWYgKGdwckluZGV4ID4gZ3ByTGlt
aXQpCiAgICAgICAgICAgICAgICAgdGVtcG9yYXJ5UmVzdWx0c1tpXSA9IHZpcnR1YWxSZWdpc3Rl
ckZvckxvY2FsKC0tZ3BySW5kZXgpOwogICAgICAgICAgICAgZWxzZQpAQCAtNjc2LDYgKzY3OSw3
IEBAIGF1dG8gTExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlZShjb25zdCBT
aWduYXR1cmUmIHNpZ25hdHVyZSkgLT4gVmVjCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5k
OjpGdW5jcmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAg
aWYgKGdwckluZGV4IDwgbWF4R1BSSW5kZXgpCiAgICAgICAgICAgICAgICAgbV9yZXN1bHRzLmFw
cGVuZCh2aXJ0dWFsUmVnaXN0ZXJGb3JMb2NhbChudW1iZXJPZkxMSW50Q2FsbGVlU2F2ZVJlZ2lz
dGVycyArIGdwckluZGV4KyspKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTczMCw2ICs3MzQsNyBA
QCBhdXRvIExMSW50R2VuZXJhdG9yOjphZGRBcmd1bWVudHMoY29uc3QgU2lnbmF0dXJlJiBzaWdu
YXR1cmUpIC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgY2FzZSBUeXBlS2luZDo6STY0OgogICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpFeHRlcm5yZWY6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1
bmNyZWY6CisgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgICAgICBhZGRB
cmd1bWVudChpLCBncHJJbmRleCwgbWF4R1BSSW5kZXgpOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgVHlwZUtpbmQ6OkYzMjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcAppbmRleCAyOGM5ODIwMjIyM2RlYjc2NTE1MGYwNTEz
ZDFkMDhmMzBkZjEzYTY5Li5lZmY4YmMxYzk5N2YwMjI5YTJlYmM4Mzc2YmUyMTc0OWM3MmZiMzE2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtU2VjdGlvblBhcnNl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbVNlY3Rpb25QYXJzZXIu
Y3BwCkBAIC0zMDQsNyArMzA0LDcgQEAgYXV0byBTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCgp
IC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUg
PSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbVJlZkZ1bmM7CiAgICAgICAgIGVsc2UKICAgICAgICAg
ICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUgPSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbUV4
cHJlc3Npb247Ci0gICAgICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYodHlwZUZvckluaXRPcGNvZGUg
IT0gZ2xvYmFsLnR5cGUsICJHbG9iYWwgaW5pdF9leHByIG9wY29kZSBvZiB0eXBlICIsIHR5cGVG
b3JJbml0T3Bjb2RlLmtpbmQsICIgZG9lc24ndCBtYXRjaCBnbG9iYWwncyB0eXBlICIsIGdsb2Jh
bC50eXBlLmtpbmQpOworICAgICAgICBXQVNNX1BBUlNFUl9GQUlMX0lGKCFpc1N1YnR5cGUodHlw
ZUZvckluaXRPcGNvZGUsIGdsb2JhbC50eXBlKSwgIkdsb2JhbCBpbml0X2V4cHIgb3Bjb2RlIG9m
IHR5cGUgIiwgdHlwZUZvckluaXRPcGNvZGUua2luZCwgIiBkb2Vzbid0IG1hdGNoIGdsb2JhbCdz
IHR5cGUgIiwgZ2xvYmFsLnR5cGUua2luZCk7CiAKICAgICAgICAgaWYgKGluaXRPcGNvZGUgPT0g
UmVmRnVuYykKICAgICAgICAgICAgIG1faW5mby0+YWRkRGVjbGFyZWRGdW5jdGlvbihnbG9iYWwu
aW5pdGlhbEJpdHNPckltcG9ydE51bWJlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkKaW5kZXggYTFiMDcyNjlhZmU3ODMyMmEx
ZDU3OTNjYzk1ZTRhYzk1YTVlNTJjMi4uNDkwNTRhNTZjNmU2NGNkYTlmN2JmYzA5ZjQ2NjE5MTMz
YTAwYzY3NiAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vZ2VuZXJhdGVX
YXNtT3BzSGVhZGVyLnB5CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2dlbmVyYXRl
V2FzbU9wc0hlYWRlci5weQpAQCAtMjE0LDcgKzIxNCw3IEBAIGVudW0gY2xhc3MgVHlwZUtpbmQg
OiBpbnQ4X3QgewogCiBzdHJ1Y3QgVHlwZSB7CiAgICAgVHlwZUtpbmQga2luZDsKLSAgICB1bnNp
Z25lZCBpbmRleDsKKyAgICBTaWduYXR1cmVJbmRleCBpbmRleDsKIAogICAgIGJvb2wgb3BlcmF0
b3I9PShjb25zdCBUeXBlJiBvdGhlcikgY29uc3QKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XYXNtVG9KUy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XYXNtVG9KUy5jcHAKaW5kZXggNzFlM2Q3ZmM3ZTgwMTMyNmRhYzQ1MGE3M2Jj
NzM5YzE4NzQ1NWE3MC4uNzViNTFkYWI1NWRhMWMwMzhiMGM3OGUyMTBmN2Q2YjVhYTMyOGUzOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2FzbVRvSlMuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcApAQCAtMTA1LDYg
KzEwNSw3IEBAIEV4cGVjdGVkPE1hY3JvQXNzZW1ibGVyQ29kZVJlZjxXYXNtRW50cnlQdHJUYWc+
LCBCaW5kaW5nRmFpbHVyZT4gd2FzbVRvSlMoVk0mIHZtCiAgICAgICAgICAgICBjYXNlIFR5cGVL
aW5kOjpWb2lkOgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuYzoKICAgICAgICAgICAg
ICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOyAvLyBIYW5kbGVkIGFib3ZlLgorICAg
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKICAgICAgICAgICAgIGNhc2UgVHlwZUtp
bmQ6OkV4dGVybnJlZjoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1bmNyZWY6CiAgICAg
ICAgICAgICBjYXNlIFR5cGVLaW5kOjpJMzI6CkBAIC0xNzcsNiArMTc4LDcgQEAgRXhwZWN0ZWQ8
TWFjcm9Bc3NlbWJsZXJDb2RlUmVmPFdhc21FbnRyeVB0clRhZz4sIEJpbmRpbmdGYWlsdXJlPiB3
YXNtVG9KUyhWTSYgdm0KICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlZvaWQ6CiAgICAgICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jOgogICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJU
X05PVF9SRUFDSEVEKCk7IC8vIEhhbmRsZWQgYWJvdmUuCisgICAgICAgICAgICBjYXNlIFR5cGVL
aW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAg
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKICAgICAgICAgICAgIGNhc2UgVHlwZUtp
bmQ6OkkzMjoKQEAgLTMxOSw2ICszMjEsNyBAQCBFeHBlY3RlZDxNYWNyb0Fzc2VtYmxlckNvZGVS
ZWY8V2FzbUVudHJ5UHRyVGFnPiwgQmluZGluZ0ZhaWx1cmU+IHdhc21Ub0pTKFZNJiB2bQogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1bmNyZWY6CiAgICAgICAgIGNhc2UgVHlw
ZUtpbmQ6OkV4dGVybnJlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKICAgICAg
ICAgICAgIGppdC5tb3ZlKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCB3YXNtQ2FsbEluZm8ucmVz
dWx0c1swXS5ncHIoKSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RjMyOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwCmluZGV4IDY3ZTRlNzE4ZDIxYTI0N2JiMDJiZDNiODdmOGNjYTRh
NDI3MDI0NjguLjQzNWU1ZTRiY2JmODc4NWZmNzNiYzJhYTY0N2I1MDRhZDVmZjk5ZjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rp
b24uY3BwCkBAIC04Myw2ICs4Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjYWxsV2Vi
QXNzZW1ibHlGdW5jdGlvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgICAg
IGNhc2UgV2FzbTo6VHlwZUtpbmQ6OkkzMjoKICAgICAgICAgICAgIGFyZyA9IEpTVmFsdWU6OmRl
Y29kZShhcmcudG9JbnQzMihnbG9iYWxPYmplY3QpKTsKICAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIFdhc206OlR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICBjYXNlIFdhc206OlR5
cGVLaW5kOjpGdW5jcmVmOiB7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVu
Y3Rpb24odm0sIGFyZykgJiYgIWFyZy5pc051bGwoKSkKICAgICAgICAgICAgICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0
ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1bmNyZWYgbXVz
dCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL3dhc20uanNvbiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L3dhc20uanNvbgppbmRleCAwMWJlY2ZmMjk2ZWRjOTc4OTljYjdkOTI5NzA0YTNkZGE4MmU0OWNm
Li4yYTcyODdkOTYwOTAwMDE5ZmRhMTFjZDY3NGYyYTAxYjJkYmYxNTg4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS93YXNtLmpzb24KKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vd2FzbS5qc29uCkBAIC03LDE4ICs3LDE5IEBACiAgICAgICAgIHsgIm5hbWUi
OiAidmVyc2lvbiIsICAgICAgInR5cGUiOiAidWludDMyIiwgInZhbHVlIjogICAgICAgICAgMSwg
ImRlc2NyaXB0aW9uIjogIlZlcnNpb24gbnVtYmVyIiB9CiAgICAgXSwKICAgICAidHlwZSIgOiB7
Ci0gICAgICAgICJpMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTEs
ICJiM3R5cGUiOiAiQjM6OkludDMyIiB9LAotICAgICAgICAiaTY0IjogICAgICAgeyAidHlwZSI6
ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0yLCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKLSAgICAg
ICAgImYzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMywgImIzdHlw
ZSI6ICJCMzo6RmxvYXQiIH0sCi0gICAgICAgICJmNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmlu
dDciLCAidmFsdWUiOiAgLTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKLSAgICAgICAgImZ1
bmNyZWYiOiAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0xNiwgImIzdHlwZSI6ICJC
Mzo6SW50NjQiIH0sCi0gICAgICAgICJleHRlcm5yZWYiOiB7ICJ0eXBlIjogInZhcmludDciLCAi
dmFsdWUiOiAtMTcsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAotICAgICAgICAiZnVuYyI6ICAg
ICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTMyLCAiYjN0eXBlIjogIkIzOjpWb2lk
IiB9LAotICAgICAgICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjog
LTY0LCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9CisgICAgICAgICJpMzIiOiAgICAgICB7ICJ0eXBl
IjogInZhcmludDciLCAidmFsdWUiOiAgIC0xLCAiYjN0eXBlIjogIkIzOjpJbnQzMiIgfSwKKyAg
ICAgICAgImk2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTIsICJi
M3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZjMyIjogICAgICAgeyAidHlwZSI6ICJ2
YXJpbnQ3IiwgInZhbHVlIjogICAtMywgImIzdHlwZSI6ICJCMzo6RmxvYXQiIH0sCisgICAgICAg
ICJmNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC00LCAiYjN0eXBl
IjogIkIzOjpEb3VibGUiIH0sCisgICAgICAgICJmdW5jcmVmIjogICB7ICJ0eXBlIjogInZhcmlu
dDciLCAidmFsdWUiOiAgLTE2LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKKyAgICAgICAgImV4
dGVybnJlZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTcsICJiM3R5cGUiOiAi
QjM6OkludDY0IiB9LAorICAgICAgICAiZnVuYyI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3Iiwg
InZhbHVlIjogIC0zMiwgImIzdHlwZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAgInZvaWQiOiAg
ICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNjQsICJiM3R5cGUiOiAiQjM6OlZv
aWQiIH0sCisgICAgICAgICJ0eXBlX2lkeCI6ICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUi
OiAtMTI4LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfQogICAgIH0sCiAgICAgInZhbHVlX3R5cGUi
OiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIsICJleHRlcm5yZWYiLCAiZnVuY3JlZiJdLAog
ICAgICJibG9ja190eXBlIjogWyJpMzIiLCAiaTY0IiwgImYzMiIsICJmNjQiLCAidm9pZCIsICJl
eHRlcm5yZWYiLCAiZnVuY3JlZiJdLAotICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsImV4dGVy
bnJlZiJdLAorICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsICJleHRlcm5yZWYiLCAidHlwZV9p
ZHgiXSwKICAgICAiZXh0ZXJuYWxfa2luZCI6IHsKICAgICAgICAgIkZ1bmN0aW9uIjogeyAidHlw
ZSI6ICJ1aW50OCIsICJ2YWx1ZSI6IDAgfSwKICAgICAgICAgIlRhYmxlIjogICAgeyAidHlwZSI6
ICJ1aW50OCIsICJ2YWx1ZSI6IDEgfSwKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIv
SlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYmRhZjFhMjk4MjIyNzcwMjljZDQ1ODA4NzAwNjZhNDM4
NDVlMjg3Yi4uMGZmYTA4MzA4NDIwZDZiZjc2ZGEzYTkzZDBkMzcxN2JlODQzNzIzNiAxMDA2NDQK
LS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNyBAQAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSByZWYu
ZnVuYyB0byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxlIHJl
ZmVyZW5jZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5kZXgu
IFNpbmNlIGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBlIG9m
IHRoZSBmdW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0eXBl
X2lkeAorICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJlbmNl
cy4KKworICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBTYWFtIEJhcmF0
aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IHRydXN0IHBhcnNpbmcgaW5m
b3JtYXRpb24gdG8gdGVsbCB1cyBpZiB3ZSd2ZSBlbWl0dGVkIG9wX2NhbGxfZXZhbApkaWZmIC0t
Z2l0IGEvSlNUZXN0cy93YXNtL3dhc20uanNvbiBiL0pTVGVzdHMvd2FzbS93YXNtLmpzb24KaW5k
ZXggMDFiZWNmZjI5NmVkYzk3ODk5Y2I3ZDkyOTcwNGEzZGRhODJlNDljZi4uMmE3Mjg3ZDk2MDkw
MDAxOWZkYTExY2Q2NzRmMmEwMWIyZGJmMTU4OCAxMDA2NDQKLS0tIGEvSlNUZXN0cy93YXNtL3dh
c20uanNvbgorKysgYi9KU1Rlc3RzL3dhc20vd2FzbS5qc29uCkBAIC03LDE4ICs3LDE5IEBACiAg
ICAgICAgIHsgIm5hbWUiOiAidmVyc2lvbiIsICAgICAgInR5cGUiOiAidWludDMyIiwgInZhbHVl
IjogICAgICAgICAgMSwgImRlc2NyaXB0aW9uIjogIlZlcnNpb24gbnVtYmVyIiB9CiAgICAgXSwK
ICAgICAidHlwZSIgOiB7Ci0gICAgICAgICJpMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDci
LCAidmFsdWUiOiAgLTEsICJiM3R5cGUiOiAiQjM6OkludDMyIiB9LAotICAgICAgICAiaTY0Ijog
ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0yLCAiYjN0eXBlIjogIkIzOjpJ
bnQ2NCIgfSwKLSAgICAgICAgImYzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1
ZSI6ICAtMywgImIzdHlwZSI6ICJCMzo6RmxvYXQiIH0sCi0gICAgICAgICJmNjQiOiAgICAgICB7
ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIg
fSwKLSAgICAgICAgImZ1bmNyZWYiOiAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0x
NiwgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCi0gICAgICAgICJleHRlcm5yZWYiOiB7ICJ0eXBl
IjogInZhcmludDciLCAidmFsdWUiOiAtMTcsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAotICAg
ICAgICAiZnVuYyI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTMyLCAiYjN0
eXBlIjogIkIzOjpWb2lkIiB9LAotICAgICAgICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJp
bnQ3IiwgInZhbHVlIjogLTY0LCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9CisgICAgICAgICJpMzIi
OiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC0xLCAiYjN0eXBlIjogIkIz
OjpJbnQzMiIgfSwKKyAgICAgICAgImk2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2
YWx1ZSI6ICAgLTIsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZjMyIjogICAg
ICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogICAtMywgImIzdHlwZSI6ICJCMzo6Rmxv
YXQiIH0sCisgICAgICAgICJmNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUi
OiAgIC00LCAiYjN0eXBlIjogIkIzOjpEb3VibGUiIH0sCisgICAgICAgICJmdW5jcmVmIjogICB7
ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTE2LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIg
fSwKKyAgICAgICAgImV4dGVybnJlZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAt
MTcsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZnVuYyI6ICAgICAgeyAidHlw
ZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0zMiwgImIzdHlwZSI6ICJCMzo6Vm9pZCIgfSwKKyAg
ICAgICAgInZvaWQiOiAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNjQsICJi
M3R5cGUiOiAiQjM6OlZvaWQiIH0sCisgICAgICAgICJ0eXBlX2lkeCI6ICB7ICJ0eXBlIjogInZh
cmludDciLCAidmFsdWUiOiAtMTI4LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfQogICAgIH0sCiAg
ICAgInZhbHVlX3R5cGUiOiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIsICJleHRlcm5yZWYi
LCAiZnVuY3JlZiJdLAogICAgICJibG9ja190eXBlIjogWyJpMzIiLCAiaTY0IiwgImYzMiIsICJm
NjQiLCAidm9pZCIsICJleHRlcm5yZWYiLCAiZnVuY3JlZiJdLAotICAgICJyZWZfdHlwZSI6IFsi
ZnVuY3JlZiIsImV4dGVybnJlZiJdLAorICAgICJyZWZfdHlwZSI6IFsiZnVuY3JlZiIsICJleHRl
cm5yZWYiLCAidHlwZV9pZHgiXSwKICAgICAiZXh0ZXJuYWxfa2luZCI6IHsKICAgICAgICAgIkZ1
bmN0aW9uIjogeyAidHlwZSI6ICJ1aW50OCIsICJ2YWx1ZSI6IDAgfSwKICAgICAgICAgIlRhYmxl
IjogICAgeyAidHlwZSI6ICJ1aW50OCIsICJ2YWx1ZSI6IDEgfSwK
</data>
<flag name="commit-queue"
          id="441429"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422354</attachid>
            <date>2021-03-05 01:58:27 -0800</date>
            <delta_ts>2021-03-05 02:31:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222779-20210305165825.patch</filename>
            <type>text/plain</type>
            <size>26327</size>
            <attacher name="Dmitry">dbezhetskov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
ZTgxNDM5M2Q0NmYyMTczNTY2YTlmNTE2YzY2MTg4MjExZGQxY2I3Li4wOGVkMmZkYzZjYjZkOWFh
YjA2YTQ4YjdjMjE5ZmY3M2M2YjRkYzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBp
Z2FsaWEuY29tPgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSBy
ZWYuZnVuYyB0byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxl
IHJlZmVyZW5jZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5k
ZXguIFNpbmNlIGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBl
IG9mIHRoZSBmdW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0
eXBlX2lkeAorICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJl
bmNlcy4KKworCisgICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorICAgICAgICAqIHdh
c20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6QWlySVJHZW5l
cmF0b3I6OmFkZFRhYmxlR3Jvdyk6CisgICAgICAgIChKU0M6Oldhc206OkFpcklSR2VuZXJhdG9y
OjphZGRUYWJsZUZpbGwpOgorICAgICAgICAoSlNDOjpXYXNtOjpBaXJJUkdlbmVyYXRvcjo6dW5p
ZnkpOgorICAgICAgICAqIHdhc20vV2FzbUZvcm1hdC5oOgorICAgICAgICAoSlNDOjpXYXNtOjpp
c1ZhbHVlVHlwZSk6CisgICAgICAgIChKU0M6Oldhc206OmlzU3VidHlwZSk6CisgICAgICAgIChK
U0M6Oldhc206OmlzUmVmVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRnVuY3Rpb25QYXJzZXIu
aDoKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OmNoZWNrQnJh
bmNoVGFyZ2V0KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46
OnVuaWZ5KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OnBh
cnNlRXhwcmVzc2lvbik6CisgICAgICAgICogd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpXYXNtOjpMTEludEdlbmVyYXRvcjo6Y2FsbEluZm9ybWF0aW9uRm9yQ2Fs
bGVyKToKKyAgICAgICAgKEpTQzo6V2FzbTo6TExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlv
bkZvckNhbGxlZSk6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50R2VuZXJhdG9yOjphZGRBcmd1
bWVudHMpOgorICAgICAgICAqIHdhc20vV2FzbVNlY3Rpb25QYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpXYXNtOjpTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCk6CisgICAgICAgICogd2FzbS9n
ZW5lcmF0ZVdhc21PcHNIZWFkZXIucHk6CisgICAgICAgICogd2FzbS9qcy9XYXNtVG9KUy5jcHA6
CisgICAgICAgIChKU0M6Oldhc206Ondhc21Ub0pTKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04pOgorICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0NvY29hXSBSRUdS
RVNTSU9OKHIyNzI3NTIpOiBmaXggc29tZSBpbnRlcm5hbCBidWlsZHMgdGhhdCB1c2UgV1RGU3Ry
aW5nOjpXVEZTdHJpbmcoTlNTdHJpbmcgKikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9PcHRpb25zTGlzdC5oCmluZGV4IGJjMWNlZGI5MDNjODZmZjc2ZmEyYjQxNGZlOTgzYTI4MTdl
M2ZhNDcuLmZhMjFlNGE4ZGQ0Nzg4MGM1OWQxMWMxZjZhMzkxOWYzMmVhN2M4ZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTIwLDYgKzUyMCw3
IEBAIEpTX0VYUE9SVF9QUklWQVRFIGJvb2wgY2FuVXNlSklUQ2FnZSgpOwogICAgIHYoQm9vbCwg
dXNlUHJpdmF0ZU1ldGhvZHMsIHRydWUsIE5vcm1hbCwgIklmIHRydWUsIHRoZSBwYXJzZXIgd2ls
bCB1bmRlcnN0YW5kIHByaXZhdGUgbWV0aG9kcyBpbnNpZGUgY2xhc3Nlcy4iKSBcCiAgICAgdihC
b29sLCB1c2VXZWJBc3NlbWJseVN0cmVhbWluZywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdG8gcnVu
IFdlYkFzc2VtYmx5J3MgU3RyZWFtaW5nIEFQSSIpIFwKICAgICB2KEJvb2wsIHVzZVdlYkFzc2Vt
Ymx5UmVmZXJlbmNlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlwZXMgZnJvbSB0aGUgd2FzbSBy
ZWZlcmVuY2VzIHNwZWMuIikgXAorICAgIHYoQm9vbCwgdXNlV2ViQXNzZW1ibHlUeXBlZEZ1bmN0
aW9uUmVmZXJlbmNlcywgZmFsc2UsIE5vcm1hbCwgIkFsbG93IGZ1bmN0aW9uIHR5cGVzIGZyb20g
dGhlIHdhc20gdHlwZWQgZnVuY3Rpb24gcmVmZXJlbmNlcyBzcGVjLiIpIFwKICAgICB2KEJvb2ws
IHVzZVdlYkFzc2VtYmx5TXVsdGlWYWx1ZXMsIHRydWUsIE5vcm1hbCwgIkFsbG93IHR5cGVzIGZy
b20gdGhlIHdhc20gbXVsaXQtdmFsdWVzIHNwZWMuIikgXAogICAgIHYoQm9vbCwgdXNlV2ViQXNz
ZW1ibHlUaHJlYWRpbmcsIHRydWUsIE5vcm1hbCwgIkFsbG93IGluc3RydWN0aW9ucyBmcm9tIHRo
ZSB3YXNtIHRocmVhZGluZyBzcGVjLiIpIFwKICAgICB2KEJvb2wsIHVzZVdlYWtSZWZzLCB0cnVl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFdlYWtSZWYgY29uc3RydWN0b3IuIikgXApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHAKaW5kZXggNDFk
MjJjMmVlZWM0N2Y0NDdmYTMwYzQzMmE3ZDNiNTA2NzBhMjg5ZC4uNDQzOGE1Njg1MjIwMDA2OGYy
YTg2NzgwYjY2MGJlNWY0M2YyZjc5NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwCkBAIC0xMTc2LDcgKzExNzYsNyBAQCBhdXRvIEFp
cklSR2VuZXJhdG9yOjphZGRUYWJsZVNpemUodW5zaWduZWQgdGFibGVJbmRleCwgRXhwcmVzc2lv
blR5cGUmIHJlc3VsdCkgLQogYXV0byBBaXJJUkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2ln
bmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25UeXBlIGZpbGwsIEV4cHJlc3Npb25UeXBlIGRlbHRh
LCBFeHByZXNzaW9uVHlwZSYgcmVzdWx0KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJU
KGZpbGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3Rh
YmxlSW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCks
IG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChkZWx0
YS50bXAoKSk7CiAgICAgQVNTRVJUKGRlbHRhLnR5cGUoKS5pc0kzMigpKTsKICAgICByZXN1bHQg
PSB0bXBGb3JUeXBlKFR5cGVzOjpJMzIpOwpAQCAtMTE4OSw3ICsxMTg5LDcgQEAgYXV0byBBaXJJ
UkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2lnbmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25U
eXBlIGZpbGwsIEV4cHIKIGF1dG8gQWlySVJHZW5lcmF0b3I6OmFkZFRhYmxlRmlsbCh1bnNpZ25l
ZCB0YWJsZUluZGV4LCBFeHByZXNzaW9uVHlwZSBvZmZzZXQsIEV4cHJlc3Npb25UeXBlIGZpbGws
IEV4cHJlc3Npb25UeXBlIGNvdW50KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJUKGZp
bGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3RhYmxl
SW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCksIG1f
aW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChvZmZzZXQu
dG1wKCkpOwogICAgIEFTU0VSVChvZmZzZXQudHlwZSgpLmlzSTMyKCkpOwogICAgIEFTU0VSVChj
b3VudC50bXAoKSk7CkBAIC0zNDE5LDcgKzM0MTksNyBAQCBhdXRvIEFpcklSR2VuZXJhdG9yOjph
ZGRDYWxsSW5kaXJlY3QodW5zaWduZWQgdGFibGVJbmRleCwgY29uc3QgU2lnbmF0dXJlJiBzaWdu
YQogCiB2b2lkIEFpcklSR2VuZXJhdG9yOjp1bmlmeShjb25zdCBFeHByZXNzaW9uVHlwZSBkc3Qs
IGNvbnN0IEV4cHJlc3Npb25UeXBlIHNvdXJjZSkKIHsKLSAgICBBU1NFUlQoc291cmNlLnR5cGUo
KSA9PSBkc3QudHlwZSgpKTsKKyAgICBBU1NFUlQoaXNTdWJ0eXBlKHNvdXJjZS50eXBlKCksIGRz
dC50eXBlKCkpKTsKICAgICBhcHBlbmQobW92ZU9wRm9yVmFsdWVUeXBlKGRzdC50eXBlKCkpLCBz
b3VyY2UsIGRzdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21Gb3JtYXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApp
bmRleCAzOThlOTQwYmQyMzYzNGQ5Y2E2OTBhZTJkNGU0ZDg4MzY5NjEyN2M3Li44MDdhZGI4ZTcw
NWQ4Zjc1MjlhNTRjOGYyNDMxMzBjZGVhY2ZmNDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbUZvcm1hdC5oCkBAIC03MCwxNyArNzAsMjcgQEAgaW5saW5lIGJvb2wgaXNWYWx1ZVR5
cGUoVHlwZSB0eXBlKQogICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICBjYXNlIFR5
cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICByZXR1cm4gT3B0aW9uczo6dXNlV2ViQXNzZW1ibHlS
ZWZlcmVuY2VzKCk7CisgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKKyAgICAgICAgcmV0dXJu
IE9wdGlvbnM6OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKTsKICAgICBk
ZWZhdWx0OgogICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitp
bmxpbmUgYm9vbCBpc1N1YnR5cGUoVHlwZSBzdWIsIFR5cGUgcGFyZW50KQoreworICAgIGlmIChz
dWIuaXNUeXBlSWR4KCkgJiYgcGFyZW50LmlzRnVuY3JlZigpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBzdWIgPT0gcGFyZW50OworfQorCiBpbmxpbmUgYm9vbCBpc1JlZlR5
cGUoVHlwZSB0eXBlKQogewotICAgIHJldHVybiB0eXBlLmlzRnVuY3JlZigpIHx8IHR5cGUuaXNF
eHRlcm5yZWYoKTsKKyAgICByZXR1cm4gdHlwZS5pc0Z1bmNyZWYoKSB8fCB0eXBlLmlzRXh0ZXJu
cmVmKCkgfHwgdHlwZS5pc1R5cGVJZHgoKTsKIH0KLSAgICAKKwogZW51bSBjbGFzcyBFeHRlcm5h
bEtpbmQgOiB1aW50OF90IHsKICAgICAvLyBGSVhNRSBhdXRvLWdlbmVyYXRlIHRoaXMuIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUyMzEKICAgICBGdW5jdGlvbiA9
IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRnVuY3Rpb25Q
YXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5o
CmluZGV4IGEwNmFkODAxNmFlYWY2Y2E4MmNlNmU0YTFlOTI0ZWUzNzc2NTU4ZmIuLmRmMGUxY2Fm
MzA1NjI0Njc3NmUwMzM5N2QyYWFiMWM5ZDI4ZTE1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCkBAIC02OTksNyArNjk5LDcgQEAgYXV0
byBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6Y2hlY2tCcmFuY2hUYXJnZXQoY29uc3QgQ29udHJv
bFR5cGUmIHRhcmdldCkgLT4gUGEKIAogICAgIHVuc2lnbmVkIG9mZnNldCA9IG1fZXhwcmVzc2lv
blN0YWNrLnNpemUoKSAtIHRhcmdldC5icmFuY2hUYXJnZXRBcml0eSgpOwogICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCB0YXJnZXQuYnJhbmNoVGFyZ2V0QXJpdHkoKTsgKytpKQotICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpICE9IG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKSwgImJyYW5jaCdzIHN0YWNrIHR5cGUg
aXMgbm90IGEgYmxvY2sncyB0eXBlIGJyYW5jaCB0YXJnZXQgdHlwZS4gU3RhY2sgdmFsdWUgaGFz
IHR5cGUiLCBtX2V4cHJlc3Npb25TdGFja1tvZmZzZXQgKyBpXS50eXBlKCkua2luZCwgIiBidXQg
YnJhbmNoIHRhcmdldCBleHBlY3RzIGEgdmFsdWUgb2YgIiwgdGFyZ2V0LmJyYW5jaFRhcmdldFR5
cGUoaSkua2luZCwgIiBhdCBpbmRleCAiLCBpKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRighaXNTdWJ0eXBlKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpLCBtX2V4cHJlc3Npb25T
dGFja1tvZmZzZXQgKyBpXS50eXBlKCkpLCAiYnJhbmNoJ3Mgc3RhY2sgdHlwZSBpcyBub3QgYSBi
bG9jaydzIHR5cGUgYnJhbmNoIHRhcmdldCB0eXBlLiBTdGFjayB2YWx1ZSBoYXMgdHlwZSIsIG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKS5raW5kLCAiIGJ1dCBicmFuY2ggdGFy
Z2V0IGV4cGVjdHMgYSB2YWx1ZSBvZiAiLCB0YXJnZXQuYnJhbmNoVGFyZ2V0VHlwZShpKS5raW5k
LCAiIGF0IGluZGV4ICIsIGkpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTcwOSw3ICs3MDks
NyBAQCBhdXRvIEZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+Ojp1bmlmeShjb25zdCBDb250cm9sVHlw
ZSYgY29udHJvbERhdGEpIC0+IFBhcnRpYWxSZQogewogICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVybkNvdW50KCkgIT0gbV9leHByZXNzaW9u
U3RhY2suc2l6ZSgpLCAiIGJsb2NrIHdpdGggdHlwZTogIiwgY29udHJvbERhdGEuc2lnbmF0dXJl
KCktPnRvU3RyaW5nKCksICIgcmV0dXJuczogIiwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJl
dHVybkNvdW50KCksICIgYnV0IHN0YWNrIGhhczogIiwgbV9leHByZXNzaW9uU3RhY2suc2l6ZSgp
LCAiIHZhbHVlcyIpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb250cm9sRGF0YS5z
aWduYXR1cmUoKS0+cmV0dXJuQ291bnQoKTsgKytpKQotICAgICAgICBXQVNNX1ZBTElEQVRPUl9G
QUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5cGUoKSAhPSBjb250cm9sRGF0YS5zaWduYXR1
cmUoKS0+cmV0dXJuVHlwZShpKSwgImNvbnRyb2wgZmxvdyByZXR1cm5zIHdpdGggdW5leHBlY3Rl
ZCB0eXBlLiAiLCBtX2V4cHJlc3Npb25TdGFja1tpXS50eXBlKCkua2luZCwgIiBpcyBub3QgYSAi
LCBjb250cm9sRGF0YS5zaWduYXR1cmUoKS0+cmV0dXJuVHlwZShpKS5raW5kKTsKKyAgICAgICAg
V0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5
cGUoKSwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVyblR5cGUoaSkpLCAiY29udHJvbCBm
bG93IHJldHVybnMgd2l0aCB1bmV4cGVjdGVkIHR5cGUuICIsIG1fZXhwcmVzc2lvblN0YWNrW2ld
LnR5cGUoKS5raW5kLCAiIGlzIG5vdCBhICIsIGNvbnRyb2xEYXRhLnNpZ25hdHVyZSgpLT5yZXR1
cm5UeXBlKGkpLmtpbmQpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTgzNiw3ICs4MzYsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgV0FT
TV9UUllfUE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhpbmRleCwgInRhYmxlLnNldCIpOwogICAg
ICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gaW5kZXgudHlwZSgp
LmtpbmQsICJ0YWJsZS5zZXQgaW5kZXggdG8gdHlwZSAiLCBpbmRleC50eXBlKCkua2luZCwgIiBl
eHBlY3RlZCAiLCBUeXBlS2luZDo6STMyKTsKICAgICAgICAgVHlwZSB0eXBlID0gbV9pbmZvLnRh
Ymxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOwotICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlM
X0lGKHZhbHVlLnR5cGUoKSAhPSB0eXBlLCAidGFibGUuc2V0IHZhbHVlIHRvIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQsICIgZXhwZWN0ZWQgIiwgdHlwZS5raW5kKTsKKyAgICAgICAgV0FTTV9W
QUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKHZhbHVlLnR5cGUoKSwgdHlwZSksICJ0YWJsZS5z
ZXQgdmFsdWUgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCB0eXBl
LmtpbmQpOwogICAgICAgICBSRUxFQVNFX0FTU0VSVChtX2luZm8udGFibGVzW3RhYmxlSW5kZXhd
LnR5cGUoKSA9PSBUYWJsZUVsZW1lbnRUeXBlOjpFeHRlcm5yZWYgfHwgbV9pbmZvLnRhYmxlc1t0
YWJsZUluZGV4XS50eXBlKCkgPT0gVGFibGVFbGVtZW50VHlwZTo6RnVuY3JlZik7CiAgICAgICAg
IFdBU01fVFJZX0FERF9UT19DT05URVhUKGFkZFRhYmxlU2V0KHRhYmxlSW5kZXgsIGluZGV4LCB2
YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtODk5LDcgKzg5OSw4IEBAIEZPUl9FQUNI
X1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICAgICAgV0FTTV9UUllf
UE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhkZWx0YSwgInRhYmxlLmdyb3ciKTsKICAgICAgICAg
ICAgIFdBU01fVFJZX1BPUF9FWFBSRVNTSU9OX1NUQUNLX0lOVE8oZmlsbCwgInRhYmxlLmdyb3ci
KTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxsLnR5cGUoKSAhPSBt
X2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5ncm93IGV4cGVjdHMg
ZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUo
KS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAgICAgIFR5cGUgdGFi
bGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOworICAgICAgICAg
ICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlwZSgpLCB0YWJsZVR5
cGUpLCAidGFibGUuZ3JvdyBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAiLCB0YWJsZVR5cGUu
a2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAgICBXQVNNX1ZBTElE
QVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gZGVsdGEudHlwZSgpLmtpbmQsICJ0YWJsZS5n
cm93IGV4cGVjdHMgYW4gaTMyIGRlbHRhIHZhbHVlLCBnb3QgIiwgZGVsdGEudHlwZSgpLmtpbmQp
OwogCiAgICAgICAgICAgICBFeHByZXNzaW9uVHlwZSByZXN1bHQ7CkBAIC05MTgsNyArOTE5LDgg
QEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgICAg
ICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKGZpbGwsICJ0YWJsZS5maWxsIik7
CiAgICAgICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKG9mZnNldCwg
InRhYmxlLmZpbGwiKTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxs
LnR5cGUoKSAhPSBtX2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5m
aWxsIGV4cGVjdHMgZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRl
eF0ud2FzbVR5cGUoKS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAg
ICAgIFR5cGUgdGFibGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgp
OworICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlw
ZSgpLCB0YWJsZVR5cGUpLCAidGFibGUuZmlsbCBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAi
LCB0YWJsZVR5cGUua2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gb2Zmc2V0LnR5cGUoKS5r
aW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkzMiBvZmZzZXQgdmFsdWUsIGdvdCAiLCBvZmZz
ZXQudHlwZSgpLmtpbmQpOwogICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihUeXBl
S2luZDo6STMyICE9IGNvdW50LnR5cGUoKS5raW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkz
MiBjb3VudCB2YWx1ZSwgZ290ICIsIGNvdW50LnR5cGUoKS5raW5kKTsKIApAQCAtMTEwNCw2ICsx
MTA2LDEzIEBAIEZPUl9FQUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogCiAg
ICAgICAgIEV4cHJlc3Npb25UeXBlIHJlc3VsdDsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NP
TlRFWFQoYWRkUmVmRnVuYyhpbmRleCwgcmVzdWx0KSk7CisKKyAgICAgICAgaWYgKE9wdGlvbnM6
OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKSkgeworICAgICAgICAgICAg
U2lnbmF0dXJlSW5kZXggc2lnbmF0dXJlSW5kZXggPSBtX2luZm8uc2lnbmF0dXJlSW5kZXhGcm9t
RnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKKyAgICAgICAgICAgIG1fZXhwcmVzc2lvblN0YWNr
LmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlIHtUeXBlS2luZDo6VHlwZUlkeCwgc2lnbmF0dXJlSW5k
ZXh9LCByZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorCiAgICAg
ICAgIG1fZXhwcmVzc2lvblN0YWNrLmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlczo6RnVuY3JlZiwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9CkBAIC0xMTI1LDcgKzExMzQsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgVHlw
ZWRFeHByZXNzaW9uIHZhbHVlOwogICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFD
S19JTlRPKHZhbHVlLCAic2V0X2xvY2FsIik7CiAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoaW5kZXggPj0gbV9sb2NhbHMuc2l6ZSgpLCAiYXR0ZW1wdCB0byBzZXQgdW5rbm93biBsb2Nh
bCAiLCBpbmRleCwgIiBsYXN0IG9uZSBpcyAiLCBtX2xvY2Fscy5zaXplKCkpOwotICAgICAgICBX
QVNNX1ZBTElEQVRPUl9GQUlMX0lGKHZhbHVlLnR5cGUoKSAhPSBtX2xvY2Fsc1tpbmRleF0sICJz
ZXRfbG9jYWwgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xv
Y2Fsc1tpbmRleF0ua2luZCk7CisgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoIWlzU3Vi
dHlwZSh2YWx1ZS50eXBlKCksIG1fbG9jYWxzW2luZGV4XSksICJzZXRfbG9jYWwgdG8gdHlwZSAi
LCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xvY2Fsc1tpbmRleF0ua2luZCk7
CiAgICAgICAgIFdBU01fVFJZX0FERF9UT19DT05URVhUKHNldExvY2FsKGluZGV4LCB2YWx1ZSkp
OwogICAgICAgICByZXR1cm4geyB9OwogICAgIH0KQEAgLTExMzcsNyArMTE0Niw3IEBAIEZPUl9F
QUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICBXQVNNX1BBUlNF
Ul9GQUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrLmlzRW1wdHkoKSwgImNhbid0IHRlZV9sb2NhbCBv
biBlbXB0eSBleHByZXNzaW9uIHN0YWNrIik7CiAgICAgICAgIFR5cGVkRXhwcmVzc2lvbiB2YWx1
ZSA9IG1fZXhwcmVzc2lvblN0YWNrLmxhc3QoKTsKICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRihpbmRleCA+PSBtX2xvY2Fscy5zaXplKCksICJhdHRlbXB0IHRvIHRlZSB1bmtub3duIGxv
Y2FsICIsIGluZGV4LCAiIGxhc3Qgb25lIGlzICIsIG1fbG9jYWxzLnNpemUoKSk7Ci0gICAgICAg
IFdBU01fVkFMSURBVE9SX0ZBSUxfSUYodmFsdWUudHlwZSgpICE9IG1fbG9jYWxzW2luZGV4XSwg
InNldF9sb2NhbCB0byB0eXBlICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1f
bG9jYWxzW2luZGV4XS5raW5kKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNT
dWJ0eXBlKHZhbHVlLnR5cGUoKSwgbV9sb2NhbHNbaW5kZXhdKSwgInNldF9sb2NhbCB0byB0eXBl
ICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1fbG9jYWxzW2luZGV4XS5raW5k
KTsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0TG9jYWwoaW5kZXgsIHZhbHVl
KSk7CiAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQpAQCAtMTE2NSw3ICsxMTc0LDcgQEAgRk9S
X0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAKICAgICAgICAgVHlwZSBn
bG9iYWxUeXBlID0gbV9pbmZvLmdsb2JhbHNbaW5kZXhdLnR5cGU7CiAgICAgICAgIEFTU0VSVChp
c1ZhbHVlVHlwZShnbG9iYWxUeXBlKSk7Ci0gICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYo
Z2xvYmFsVHlwZSAhPSB2YWx1ZS50eXBlKCksICJzZXRfZ2xvYmFsICIsIGluZGV4LCAiIHdpdGgg
dHlwZSAiLCBnbG9iYWxUeXBlLmtpbmQsICIgd2l0aCBhIHZhcmlhYmxlIG9mIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQpOworICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1YnR5
cGUodmFsdWUudHlwZSgpLCBnbG9iYWxUeXBlKSwgInNldF9nbG9iYWwgIiwgaW5kZXgsICIgd2l0
aCB0eXBlICIsIGdsb2JhbFR5cGUua2luZCwgIiB3aXRoIGEgdmFyaWFibGUgb2YgdHlwZSAiLCB2
YWx1ZS50eXBlKCkua2luZCk7CiAKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0
R2xvYmFsKGluZGV4LCB2YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtMTE4NCw3ICsx
MTkzLDcgQEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAg
ICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYoIWFyZ3MudHJ5UmVzZXJ2ZUNhcGFjaXR5KGNhbGxlZVNp
Z25hdHVyZS5hcmd1bWVudENvdW50KCkpLCAiY2FuJ3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9yeSBm
b3IgY2FsbCdzICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICIgYXJndW1lbnRz
Iik7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4
cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9u
IGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0KGkpOwotICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRihhcmcudHlwZSgpICE9IGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmly
c3RBcmd1bWVudEluZGV4KSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbCwgZ290ICIs
IGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50
KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOworICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRighaXNTdWJ0eXBlKGFyZy50eXBlKCksIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVu
dChpIC0gZmlyc3RBcmd1bWVudEluZGV4KSksICJhcmd1bWVudCB0eXBlIG1pc21hdGNoIGluIGNh
bGwsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIsIGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVy
ZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudEluZGV4KS5raW5kKTsKICAgICAgICAgICAgIGFy
Z3MudW5jaGVja2VkQXBwZW5kKGFyZyk7CiAgICAgICAgICAgICBtX2NvbnRleHQuZGlkUG9wVmFs
dWVGcm9tU3RhY2soKTsKICAgICAgICAgfQpAQCAtMTIyNSw3ICsxMjM0LDcgQEAgRk9SX0VBQ0hf
V0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgIGZvciAoc2l6ZV90IGkg
PSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkg
ewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9uIGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0
KGkpOwogICAgICAgICAgICAgaWYgKGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxKQot
ICAgICAgICAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoYXJnLnR5cGUoKSAhPSBjYWxs
ZWVTaWduYXR1cmUuYXJndW1lbnQoaSAtIGZpcnN0QXJndW1lbnRJbmRleCksICJhcmd1bWVudCB0
eXBlIG1pc21hdGNoIGluIGNhbGxfaW5kaXJlY3QsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIs
IGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudElu
ZGV4KS5raW5kKTsKKyAgICAgICAgICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1
YnR5cGUoYXJnLnR5cGUoKSwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50KGkgLSBmaXJzdEFyZ3Vt
ZW50SW5kZXgpKSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbF9pbmRpcmVjdCwgZ290
ICIsIGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3Vt
ZW50KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOwogICAgICAgICAgICAgYXJncy51bmNo
ZWNrZWRBcHBlbmQoYXJnKTsKICAgICAgICAgICAgIG1fY29udGV4dC5kaWRQb3BWYWx1ZUZyb21T
dGFjaygpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUxMSW50R2VuZXJhdG9yLmNwcAppbmRleCBhNGM2ODY1M2NlNmUwYTY5MzUzMWVmNDk0NzE5NTBj
NmY1MmQ2MjNhLi41MzdlZTU2NTIwZWQ1ODQzMDFmNDgyMDQ5NjJjZjI3ODZiZGIzNGZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21MTEludEdlbmVyYXRvci5jcHAK
QEAgLTUzOSw2ICs1MzksNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3JtYXRpb25G
b3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAgICBjYXNl
IFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlk
eDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA8IGdwckNvdW50KQogICAgICAgICAgICAgICAg
ICsrZ3BySW5kZXg7CiAgICAgICAgICAgICBlbHNlIGlmIChzdGFja0luZGV4KysgPj0gc3RhY2tD
b3VudCkKQEAgLTU5NCw2ICs1OTUsNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3Jt
YXRpb25Gb3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAg
ICBjYXNlIFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6
VHlwZUlkeDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA+IGdwckxpbWl0KQogICAgICAgICAg
ICAgICAgIGFyZ3VtZW50c1tpXSA9IHZpcnR1YWxSZWdpc3RlckZvckxvY2FsKC0tZ3BySW5kZXgp
OwogICAgICAgICAgICAgZWxzZQpAQCAtNjIxLDYgKzYyMyw3IEBAIGF1dG8gTExJbnRHZW5lcmF0
b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlcihjb25zdCBTaWduYXR1cmUmIHNpZ25hdHVyZSkg
LT4gTExJCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgorICAgICAgICBj
YXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgaWYgKGdwckluZGV4ID4gZ3ByTGlt
aXQpCiAgICAgICAgICAgICAgICAgdGVtcG9yYXJ5UmVzdWx0c1tpXSA9IHZpcnR1YWxSZWdpc3Rl
ckZvckxvY2FsKC0tZ3BySW5kZXgpOwogICAgICAgICAgICAgZWxzZQpAQCAtNjc2LDYgKzY3OSw3
IEBAIGF1dG8gTExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlZShjb25zdCBT
aWduYXR1cmUmIHNpZ25hdHVyZSkgLT4gVmVjCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5k
OjpGdW5jcmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAg
aWYgKGdwckluZGV4IDwgbWF4R1BSSW5kZXgpCiAgICAgICAgICAgICAgICAgbV9yZXN1bHRzLmFw
cGVuZCh2aXJ0dWFsUmVnaXN0ZXJGb3JMb2NhbChudW1iZXJPZkxMSW50Q2FsbGVlU2F2ZVJlZ2lz
dGVycyArIGdwckluZGV4KyspKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTczMCw2ICs3MzQsNyBA
QCBhdXRvIExMSW50R2VuZXJhdG9yOjphZGRBcmd1bWVudHMoY29uc3QgU2lnbmF0dXJlJiBzaWdu
YXR1cmUpIC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgY2FzZSBUeXBlS2luZDo6STY0OgogICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpFeHRlcm5yZWY6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1
bmNyZWY6CisgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgICAgICBhZGRB
cmd1bWVudChpLCBncHJJbmRleCwgbWF4R1BSSW5kZXgpOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgVHlwZUtpbmQ6OkYzMjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcAppbmRleCAyOGM5ODIwMjIyM2RlYjc2NTE1MGYwNTEz
ZDFkMDhmMzBkZjEzYTY5Li5lZmY4YmMxYzk5N2YwMjI5YTJlYmM4Mzc2YmUyMTc0OWM3MmZiMzE2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtU2VjdGlvblBhcnNl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbVNlY3Rpb25QYXJzZXIu
Y3BwCkBAIC0zMDQsNyArMzA0LDcgQEAgYXV0byBTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCgp
IC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUg
PSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbVJlZkZ1bmM7CiAgICAgICAgIGVsc2UKICAgICAgICAg
ICAgIGdsb2JhbC5pbml0aWFsaXphdGlvblR5cGUgPSBHbG9iYWxJbmZvcm1hdGlvbjo6RnJvbUV4
cHJlc3Npb247Ci0gICAgICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYodHlwZUZvckluaXRPcGNvZGUg
IT0gZ2xvYmFsLnR5cGUsICJHbG9iYWwgaW5pdF9leHByIG9wY29kZSBvZiB0eXBlICIsIHR5cGVG
b3JJbml0T3Bjb2RlLmtpbmQsICIgZG9lc24ndCBtYXRjaCBnbG9iYWwncyB0eXBlICIsIGdsb2Jh
bC50eXBlLmtpbmQpOworICAgICAgICBXQVNNX1BBUlNFUl9GQUlMX0lGKCFpc1N1YnR5cGUodHlw
ZUZvckluaXRPcGNvZGUsIGdsb2JhbC50eXBlKSwgIkdsb2JhbCBpbml0X2V4cHIgb3Bjb2RlIG9m
IHR5cGUgIiwgdHlwZUZvckluaXRPcGNvZGUua2luZCwgIiBkb2Vzbid0IG1hdGNoIGdsb2JhbCdz
IHR5cGUgIiwgZ2xvYmFsLnR5cGUua2luZCk7CiAKICAgICAgICAgaWYgKGluaXRPcGNvZGUgPT0g
UmVmRnVuYykKICAgICAgICAgICAgIG1faW5mby0+YWRkRGVjbGFyZWRGdW5jdGlvbihnbG9iYWwu
aW5pdGlhbEJpdHNPckltcG9ydE51bWJlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIucHkKaW5kZXggYTFiMDcyNjlhZmU3ODMyMmEx
ZDU3OTNjYzk1ZTRhYzk1YTVlNTJjMi4uODUyZDc0NTdhMzkzZWI0YzkyMjg0ZWU0NTIxNzA2Zjcx
ZTc3Y2QwZiAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vZ2VuZXJhdGVX
YXNtT3BzSGVhZGVyLnB5CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2dlbmVyYXRl
V2FzbU9wc0hlYWRlci5weQpAQCAtMjEyLDkgKzIxMiwxMSBAQCBlbnVtIGNsYXNzIFR5cGVLaW5k
IDogaW50OF90IHsKIH07CiAjdW5kZWYgQ1JFQVRFX0VOVU1fVkFMVUUKIAordXNpbmcgU2lnbmF0
dXJlSW5kZXggPSB1aW50cHRyX3Q7CisKIHN0cnVjdCBUeXBlIHsKICAgICBUeXBlS2luZCBraW5k
OwotICAgIHVuc2lnbmVkIGluZGV4OworICAgIFNpZ25hdHVyZUluZGV4IGluZGV4OwogCiAgICAg
Ym9vbCBvcGVyYXRvcj09KGNvbnN0IFR5cGUmIG90aGVyKSBjb25zdAogICAgIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcAppbmRleCA3MWUzZDdmYzdlODAxMzI2
ZGFjNDUwYTczYmM3MzljMTg3NDU1YTcwLi43NWI1MWRhYjU1ZGExYzAzOGIwYzc4ZTIxMGY3ZDZi
NWFhMzI4ZTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XYXNt
VG9KUy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2FzbVRvSlMuY3Bw
CkBAIC0xMDUsNiArMTA1LDcgQEAgRXhwZWN0ZWQ8TWFjcm9Bc3NlbWJsZXJDb2RlUmVmPFdhc21F
bnRyeVB0clRhZz4sIEJpbmRpbmdGYWlsdXJlPiB3YXNtVG9KUyhWTSYgdm0KICAgICAgICAgICAg
IGNhc2UgVHlwZUtpbmQ6OlZvaWQ6CiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jOgog
ICAgICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7IC8vIEhhbmRsZWQg
YWJvdmUuCisgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAg
Y2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVu
Y3JlZjoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkkzMjoKQEAgLTE3Nyw2ICsxNzgsNyBA
QCBFeHBlY3RlZDxNYWNyb0Fzc2VtYmxlckNvZGVSZWY8V2FzbUVudHJ5UHRyVGFnPiwgQmluZGlu
Z0ZhaWx1cmU+IHdhc21Ub0pTKFZNJiB2bQogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6Vm9p
ZDoKICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1bmM6CiAgICAgICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsgLy8gSGFuZGxlZCBhYm92ZS4KKyAgICAgICAgICAg
IGNhc2UgVHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpFeHRl
cm5yZWY6CiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICAgICAg
Y2FzZSBUeXBlS2luZDo6STMyOgpAQCAtMzE5LDYgKzMyMSw3IEBAIEV4cGVjdGVkPE1hY3JvQXNz
ZW1ibGVyQ29kZVJlZjxXYXNtRW50cnlQdHJUYWc+LCBCaW5kaW5nRmFpbHVyZT4gd2FzbVRvSlMo
Vk0mIHZtCiAgICAgICAgIH0KICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBl
SWR4OgogICAgICAgICAgICAgaml0Lm1vdmUoR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIsIHdhc21D
YWxsSW5mby5yZXN1bHRzWzBdLmdwcigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBj
YXNlIFR5cGVLaW5kOjpGMzI6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbi5jcHAKaW5kZXggNjdlNGU3MThkMjFhMjQ3YmIwMmJk
M2I4N2Y4Y2NhNGE0MjcwMjQ2OC4uNDM1ZTVlNGJjYmY4Nzg1ZmY3M2JjMmFhNjQ3YjUwNGFkNWZm
OTlmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlGdW5jdGlvbi5jcHAKQEAgLTgzLDYgKzgzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGNhbGxXZWJBc3NlbWJseUZ1bmN0aW9uLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwKICAgICAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6STMyOgogICAgICAgICAgICAgYXJnID0g
SlNWYWx1ZTo6ZGVjb2RlKGFyZy50b0ludDMyKGdsb2JhbE9iamVjdCkpOwogICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgV2FzbTo6VHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgIGNh
c2UgV2FzbTo6VHlwZUtpbmQ6OkZ1bmNyZWY6IHsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3Nl
bWJseUhvc3RGdW5jdGlvbih2bSwgYXJnKSAmJiAhYXJnLmlzTnVsbCgpKQogICAgICAgICAgICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAi
RnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iKSkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vd2FzbS5qc29uIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vd2FzbS5qc29uCmluZGV4IDAxYmVjZmYyOTZlZGM5Nzg5OWNiN2Q5Mjk3MDRh
M2RkYTgyZTQ5Y2YuLjJhNzI4N2Q5NjA5MDAwMTlmZGExMWNkNjc0ZjJhMDFiMmRiZjE1ODggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL3dhc20uanNvbgorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS93YXNtLmpzb24KQEAgLTcsMTggKzcsMTkgQEAKICAgICAg
ICAgeyAibmFtZSI6ICJ2ZXJzaW9uIiwgICAgICAidHlwZSI6ICJ1aW50MzIiLCAidmFsdWUiOiAg
ICAgICAgICAxLCAiZGVzY3JpcHRpb24iOiAiVmVyc2lvbiBudW1iZXIiIH0KICAgICBdLAogICAg
ICJ0eXBlIiA6IHsKLSAgICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2
YWx1ZSI6ICAtMSwgImIzdHlwZSI6ICJCMzo6SW50MzIiIH0sCi0gICAgICAgICJpNjQiOiAgICAg
ICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTIsICJiM3R5cGUiOiAiQjM6OkludDY0
IiB9LAotICAgICAgICAiZjMyIjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjog
IC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIgfSwKLSAgICAgICAgImY2NCI6ICAgICAgIHsgInR5
cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNCwgImIzdHlwZSI6ICJCMzo6RG91YmxlIiB9LAot
ICAgICAgICAiZnVuY3JlZiI6ICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTE2LCAi
YjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKLSAgICAgICAgImV4dGVybnJlZiI6IHsgInR5cGUiOiAi
dmFyaW50NyIsICJ2YWx1ZSI6IC0xNywgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCi0gICAgICAg
ICJmdW5jIjogICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtMzIsICJiM3R5cGUi
OiAiQjM6OlZvaWQiIH0sCi0gICAgICAgICJ2b2lkIjogICAgICB7ICJ0eXBlIjogInZhcmludDci
LCAidmFsdWUiOiAtNjQsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0KKyAgICAgICAgImkzMiI6ICAg
ICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTEsICJiM3R5cGUiOiAiQjM6Oklu
dDMyIiB9LAorICAgICAgICAiaTY0IjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVl
IjogICAtMiwgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmMzIiOiAgICAgICB7
ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIg
fSwKKyAgICAgICAgImY2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAg
LTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKKyAgICAgICAgImZ1bmNyZWYiOiAgIHsgInR5
cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTYsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAor
ICAgICAgICAiZXh0ZXJucmVmIjogeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0xNywg
ImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmdW5jIjogICAgICB7ICJ0eXBlIjog
InZhcmludDciLCAidmFsdWUiOiAgLTMyLCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9LAorICAgICAg
ICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC02NCwgImIzdHlw
ZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAgInR5cGVfaWR4IjogIHsgInR5cGUiOiAidmFyaW50
NyIsICJ2YWx1ZSI6IC0xMjgsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9CiAgICAgfSwKICAgICAi
dmFsdWVfdHlwZSI6IFsiaTMyIiwgImk2NCIsICJmMzIiLCAiZjY0IiwgImV4dGVybnJlZiIsICJm
dW5jcmVmIl0sCiAgICAgImJsb2NrX3R5cGUiOiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIs
ICJ2b2lkIiwgImV4dGVybnJlZiIsICJmdW5jcmVmIl0sCi0gICAgInJlZl90eXBlIjogWyJmdW5j
cmVmIiwiZXh0ZXJucmVmIl0sCisgICAgInJlZl90eXBlIjogWyJmdW5jcmVmIiwgImV4dGVybnJl
ZiIsICJ0eXBlX2lkeCJdLAogICAgICJleHRlcm5hbF9raW5kIjogewogICAgICAgICAiRnVuY3Rp
b24iOiB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMCB9LAogICAgICAgICAiVGFibGUiOiAg
ICB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMSB9LApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9D
aGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBiZGFmMWEyOTgyMjI3NzAyOWNkNDU4
MDg3MDA2NmE0Mzg0NWUyODdiLi4wZmZhMDgzMDg0MjBkNmJmNzZkYTNhOTNkMGQzNzE3YmU4NDM3
MjM2IDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTAzLTA0ICBEbWl0cnkgQmV6aGV0c2tvdiAgPGRiZXpo
ZXRza292QGlnYWxpYS5jb20+CisKKyAgICAgICAgW1dBU00tRnVuY3Rpb24tUmVmZXJlbmNlc10g
VXBkYXRlIHJlZi5mdW5jIHRvIHByb2R1Y2UgKHJlZiAkdCkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjc3OQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2UgcmVmLmZ1bmMgdG8gcHJvZHVjZSBub24g
bnVsbGFibGUgcmVmZXJlbmNlIHR5cGUgd2hpY2gKKyAgICAgICAgaW5jb3Jwb3JhdGVzIHNpZ25h
dHVyZSBpbmRleC4gU2luY2UgaW4gSlNDIHNpZ25hdHVyZSBpbmRleCByZXByZXNlbnRzCisgICAg
ICAgIHR5cGUgb2YgdGhlIGZ1bmN0aW9uIGZyb20gVHlwZSBzZWN0aW9uIHdlIHVzZSBpdCBpbnN0
ZWFkIG9mIHR5cGVfaWR4CisgICAgICAgIGZvciByZXByZXNlbnRpbmcgdHlwZSBvZiBmdW5jdGlv
biByZWZlcmVuY2VzLgorCisgICAgICAgICogd2FzbS93YXNtLmpzb246CisKIDIwMjEtMDMtMDQg
IFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CiAKICAgICAgICAgRG9uJ3QgdHJ1c3Qg
cGFyc2luZyBpbmZvcm1hdGlvbiB0byB0ZWxsIHVzIGlmIHdlJ3ZlIGVtaXR0ZWQgb3BfY2FsbF9l
dmFsCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3dhc20vd2FzbS5qc29uIGIvSlNUZXN0cy93YXNtL3dh
c20uanNvbgppbmRleCAwMWJlY2ZmMjk2ZWRjOTc4OTljYjdkOTI5NzA0YTNkZGE4MmU0OWNmLi4y
YTcyODdkOTYwOTAwMDE5ZmRhMTFjZDY3NGYyYTAxYjJkYmYxNTg4IDEwMDY0NAotLS0gYS9KU1Rl
c3RzL3dhc20vd2FzbS5qc29uCisrKyBiL0pTVGVzdHMvd2FzbS93YXNtLmpzb24KQEAgLTcsMTgg
KzcsMTkgQEAKICAgICAgICAgeyAibmFtZSI6ICJ2ZXJzaW9uIiwgICAgICAidHlwZSI6ICJ1aW50
MzIiLCAidmFsdWUiOiAgICAgICAgICAxLCAiZGVzY3JpcHRpb24iOiAiVmVyc2lvbiBudW1iZXIi
IH0KICAgICBdLAogICAgICJ0eXBlIiA6IHsKLSAgICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUi
OiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMSwgImIzdHlwZSI6ICJCMzo6SW50MzIiIH0sCi0gICAg
ICAgICJpNjQiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTIsICJiM3R5
cGUiOiAiQjM6OkludDY0IiB9LAotICAgICAgICAiZjMyIjogICAgICAgeyAidHlwZSI6ICJ2YXJp
bnQ3IiwgInZhbHVlIjogIC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIgfSwKLSAgICAgICAgImY2
NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNCwgImIzdHlwZSI6ICJC
Mzo6RG91YmxlIiB9LAotICAgICAgICAiZnVuY3JlZiI6ICAgeyAidHlwZSI6ICJ2YXJpbnQ3Iiwg
InZhbHVlIjogLTE2LCAiYjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKLSAgICAgICAgImV4dGVybnJl
ZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0xNywgImIzdHlwZSI6ICJCMzo6SW50
NjQiIH0sCi0gICAgICAgICJmdW5jIjogICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUi
OiAtMzIsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0sCi0gICAgICAgICJ2b2lkIjogICAgICB7ICJ0
eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtNjQsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0KKyAg
ICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTEsICJi
M3R5cGUiOiAiQjM6OkludDMyIiB9LAorICAgICAgICAiaTY0IjogICAgICAgeyAidHlwZSI6ICJ2
YXJpbnQ3IiwgInZhbHVlIjogICAtMiwgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAg
ICJmMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC0zLCAiYjN0eXBl
IjogIkIzOjpGbG9hdCIgfSwKKyAgICAgICAgImY2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50
NyIsICJ2YWx1ZSI6ICAgLTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKKyAgICAgICAgImZ1
bmNyZWYiOiAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTYsICJiM3R5cGUiOiAi
QjM6OkludDY0IiB9LAorICAgICAgICAiZXh0ZXJucmVmIjogeyAidHlwZSI6ICJ2YXJpbnQ3Iiwg
InZhbHVlIjogIC0xNywgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmdW5jIjog
ICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTMyLCAiYjN0eXBlIjogIkIzOjpW
b2lkIiB9LAorICAgICAgICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVl
IjogIC02NCwgImIzdHlwZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAgInR5cGVfaWR4IjogIHsg
InR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0xMjgsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9
CiAgICAgfSwKICAgICAidmFsdWVfdHlwZSI6IFsiaTMyIiwgImk2NCIsICJmMzIiLCAiZjY0Iiwg
ImV4dGVybnJlZiIsICJmdW5jcmVmIl0sCiAgICAgImJsb2NrX3R5cGUiOiBbImkzMiIsICJpNjQi
LCAiZjMyIiwgImY2NCIsICJ2b2lkIiwgImV4dGVybnJlZiIsICJmdW5jcmVmIl0sCi0gICAgInJl
Zl90eXBlIjogWyJmdW5jcmVmIiwiZXh0ZXJucmVmIl0sCisgICAgInJlZl90eXBlIjogWyJmdW5j
cmVmIiwgImV4dGVybnJlZiIsICJ0eXBlX2lkeCJdLAogICAgICJleHRlcm5hbF9raW5kIjogewog
ICAgICAgICAiRnVuY3Rpb24iOiB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMCB9LAogICAg
ICAgICAiVGFibGUiOiAgICB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMSB9LAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422358</attachid>
            <date>2021-03-05 02:31:42 -0800</date>
            <delta_ts>2021-03-05 04:16:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222779-20210305173140.patch</filename>
            <type>text/plain</type>
            <size>28250</size>
            <attacher name="Dmitry">dbezhetskov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
ZTgxNDM5M2Q0NmYyMTczNTY2YTlmNTE2YzY2MTg4MjExZGQxY2I3Li4wOGVkMmZkYzZjYjZkOWFh
YjA2YTQ4YjdjMjE5ZmY3M2M2YjRkYzI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wMy0wNCAgRG1pdHJ5IEJlemhldHNrb3YgIDxkYmV6aGV0c2tvdkBp
Z2FsaWEuY29tPgorCisgICAgICAgIFtXQVNNLUZ1bmN0aW9uLVJlZmVyZW5jZXNdIFVwZGF0ZSBy
ZWYuZnVuYyB0byBwcm9kdWNlIChyZWYgJHQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI3NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNYWtlIHJlZi5mdW5jIHRvIHByb2R1Y2Ugbm9uIG51bGxhYmxl
IHJlZmVyZW5jZSB0eXBlIHdoaWNoCisgICAgICAgIGluY29ycG9yYXRlcyBzaWduYXR1cmUgaW5k
ZXguIFNpbmNlIGluIEpTQyBzaWduYXR1cmUgaW5kZXggcmVwcmVzZW50cworICAgICAgICB0eXBl
IG9mIHRoZSBmdW5jdGlvbiBmcm9tIFR5cGUgc2VjdGlvbiB3ZSB1c2UgaXQgaW5zdGVhZCBvZiB0
eXBlX2lkeAorICAgICAgICBmb3IgcmVwcmVzZW50aW5nIHR5cGUgb2YgZnVuY3Rpb24gcmVmZXJl
bmNlcy4KKworCisgICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorICAgICAgICAqIHdh
c20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6QWlySVJHZW5l
cmF0b3I6OmFkZFRhYmxlR3Jvdyk6CisgICAgICAgIChKU0M6Oldhc206OkFpcklSR2VuZXJhdG9y
OjphZGRUYWJsZUZpbGwpOgorICAgICAgICAoSlNDOjpXYXNtOjpBaXJJUkdlbmVyYXRvcjo6dW5p
ZnkpOgorICAgICAgICAqIHdhc20vV2FzbUZvcm1hdC5oOgorICAgICAgICAoSlNDOjpXYXNtOjpp
c1ZhbHVlVHlwZSk6CisgICAgICAgIChKU0M6Oldhc206OmlzU3VidHlwZSk6CisgICAgICAgIChK
U0M6Oldhc206OmlzUmVmVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRnVuY3Rpb25QYXJzZXIu
aDoKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OmNoZWNrQnJh
bmNoVGFyZ2V0KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46
OnVuaWZ5KToKKyAgICAgICAgKEpTQzo6V2FzbTo6RnVuY3Rpb25QYXJzZXI8Q29udGV4dD46OnBh
cnNlRXhwcmVzc2lvbik6CisgICAgICAgICogd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpXYXNtOjpMTEludEdlbmVyYXRvcjo6Y2FsbEluZm9ybWF0aW9uRm9yQ2Fs
bGVyKToKKyAgICAgICAgKEpTQzo6V2FzbTo6TExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlv
bkZvckNhbGxlZSk6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50R2VuZXJhdG9yOjphZGRBcmd1
bWVudHMpOgorICAgICAgICAqIHdhc20vV2FzbVNlY3Rpb25QYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpXYXNtOjpTZWN0aW9uUGFyc2VyOjpwYXJzZUdsb2JhbCk6CisgICAgICAgICogd2FzbS9n
ZW5lcmF0ZVdhc21PcHNIZWFkZXIucHk6CisgICAgICAgICogd2FzbS9qcy9XYXNtVG9KUy5jcHA6
CisgICAgICAgIChKU0M6Oldhc206Ondhc21Ub0pTKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04pOgorICAgICAgICAqIHdhc20vd2FzbS5qc29uOgorCiAyMDIxLTAzLTA0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW0NvY29hXSBSRUdS
RVNTSU9OKHIyNzI3NTIpOiBmaXggc29tZSBpbnRlcm5hbCBidWlsZHMgdGhhdCB1c2UgV1RGU3Ry
aW5nOjpXVEZTdHJpbmcoTlNTdHJpbmcgKikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9PcHRpb25zTGlzdC5oCmluZGV4IGJjMWNlZGI5MDNjODZmZjc2ZmEyYjQxNGZlOTgzYTI4MTdl
M2ZhNDcuLmZhMjFlNGE4ZGQ0Nzg4MGM1OWQxMWMxZjZhMzkxOWYzMmVhN2M4ZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTIwLDYgKzUyMCw3
IEBAIEpTX0VYUE9SVF9QUklWQVRFIGJvb2wgY2FuVXNlSklUQ2FnZSgpOwogICAgIHYoQm9vbCwg
dXNlUHJpdmF0ZU1ldGhvZHMsIHRydWUsIE5vcm1hbCwgIklmIHRydWUsIHRoZSBwYXJzZXIgd2ls
bCB1bmRlcnN0YW5kIHByaXZhdGUgbWV0aG9kcyBpbnNpZGUgY2xhc3Nlcy4iKSBcCiAgICAgdihC
b29sLCB1c2VXZWJBc3NlbWJseVN0cmVhbWluZywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdG8gcnVu
IFdlYkFzc2VtYmx5J3MgU3RyZWFtaW5nIEFQSSIpIFwKICAgICB2KEJvb2wsIHVzZVdlYkFzc2Vt
Ymx5UmVmZXJlbmNlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlwZXMgZnJvbSB0aGUgd2FzbSBy
ZWZlcmVuY2VzIHNwZWMuIikgXAorICAgIHYoQm9vbCwgdXNlV2ViQXNzZW1ibHlUeXBlZEZ1bmN0
aW9uUmVmZXJlbmNlcywgZmFsc2UsIE5vcm1hbCwgIkFsbG93IGZ1bmN0aW9uIHR5cGVzIGZyb20g
dGhlIHdhc20gdHlwZWQgZnVuY3Rpb24gcmVmZXJlbmNlcyBzcGVjLiIpIFwKICAgICB2KEJvb2ws
IHVzZVdlYkFzc2VtYmx5TXVsdGlWYWx1ZXMsIHRydWUsIE5vcm1hbCwgIkFsbG93IHR5cGVzIGZy
b20gdGhlIHdhc20gbXVsaXQtdmFsdWVzIHNwZWMuIikgXAogICAgIHYoQm9vbCwgdXNlV2ViQXNz
ZW1ibHlUaHJlYWRpbmcsIHRydWUsIE5vcm1hbCwgIkFsbG93IGluc3RydWN0aW9ucyBmcm9tIHRo
ZSB3YXNtIHRocmVhZGluZyBzcGVjLiIpIFwKICAgICB2KEJvb2wsIHVzZVdlYWtSZWZzLCB0cnVl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFdlYWtSZWYgY29uc3RydWN0b3IuIikgXApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21BaXJJUkdlbmVyYXRvci5jcHAKaW5kZXggNDFk
MjJjMmVlZWM0N2Y0NDdmYTMwYzQzMmE3ZDNiNTA2NzBhMjg5ZC4uNDQzOGE1Njg1MjIwMDA2OGYy
YTg2NzgwYjY2MGJlNWY0M2YyZjc5NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUFpcklSR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9XYXNtQWlySVJHZW5lcmF0b3IuY3BwCkBAIC0xMTc2LDcgKzExNzYsNyBAQCBhdXRvIEFp
cklSR2VuZXJhdG9yOjphZGRUYWJsZVNpemUodW5zaWduZWQgdGFibGVJbmRleCwgRXhwcmVzc2lv
blR5cGUmIHJlc3VsdCkgLQogYXV0byBBaXJJUkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2ln
bmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25UeXBlIGZpbGwsIEV4cHJlc3Npb25UeXBlIGRlbHRh
LCBFeHByZXNzaW9uVHlwZSYgcmVzdWx0KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJU
KGZpbGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3Rh
YmxlSW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCks
IG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChkZWx0
YS50bXAoKSk7CiAgICAgQVNTRVJUKGRlbHRhLnR5cGUoKS5pc0kzMigpKTsKICAgICByZXN1bHQg
PSB0bXBGb3JUeXBlKFR5cGVzOjpJMzIpOwpAQCAtMTE4OSw3ICsxMTg5LDcgQEAgYXV0byBBaXJJ
UkdlbmVyYXRvcjo6YWRkVGFibGVHcm93KHVuc2lnbmVkIHRhYmxlSW5kZXgsIEV4cHJlc3Npb25U
eXBlIGZpbGwsIEV4cHIKIGF1dG8gQWlySVJHZW5lcmF0b3I6OmFkZFRhYmxlRmlsbCh1bnNpZ25l
ZCB0YWJsZUluZGV4LCBFeHByZXNzaW9uVHlwZSBvZmZzZXQsIEV4cHJlc3Npb25UeXBlIGZpbGws
IEV4cHJlc3Npb25UeXBlIGNvdW50KSAtPiBQYXJ0aWFsUmVzdWx0CiB7CiAgICAgQVNTRVJUKGZp
bGwudG1wKCkpOwotICAgIEFTU0VSVChmaWxsLnR5cGUoKSA9PSBtX2luZm8udGFibGVzW3RhYmxl
SW5kZXhdLndhc21UeXBlKCkpOworICAgIEFTU0VSVChpc1N1YnR5cGUoZmlsbC50eXBlKCksIG1f
aW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUoKSkpOwogICAgIEFTU0VSVChvZmZzZXQu
dG1wKCkpOwogICAgIEFTU0VSVChvZmZzZXQudHlwZSgpLmlzSTMyKCkpOwogICAgIEFTU0VSVChj
b3VudC50bXAoKSk7CkBAIC0zNDE5LDcgKzM0MTksNyBAQCBhdXRvIEFpcklSR2VuZXJhdG9yOjph
ZGRDYWxsSW5kaXJlY3QodW5zaWduZWQgdGFibGVJbmRleCwgY29uc3QgU2lnbmF0dXJlJiBzaWdu
YQogCiB2b2lkIEFpcklSR2VuZXJhdG9yOjp1bmlmeShjb25zdCBFeHByZXNzaW9uVHlwZSBkc3Qs
IGNvbnN0IEV4cHJlc3Npb25UeXBlIHNvdXJjZSkKIHsKLSAgICBBU1NFUlQoc291cmNlLnR5cGUo
KSA9PSBkc3QudHlwZSgpKTsKKyAgICBBU1NFUlQoaXNTdWJ0eXBlKHNvdXJjZS50eXBlKCksIGRz
dC50eXBlKCkpKTsKICAgICBhcHBlbmQobW92ZU9wRm9yVmFsdWVUeXBlKGRzdC50eXBlKCkpLCBz
b3VyY2UsIGRzdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21Gb3JtYXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApp
bmRleCAzOThlOTQwYmQyMzYzNGQ5Y2E2OTBhZTJkNGU0ZDg4MzY5NjEyN2M3Li44MDdhZGI4ZTcw
NWQ4Zjc1MjlhNTRjOGYyNDMxMzBjZGVhY2ZmNDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbUZvcm1hdC5oCkBAIC03MCwxNyArNzAsMjcgQEAgaW5saW5lIGJvb2wgaXNWYWx1ZVR5
cGUoVHlwZSB0eXBlKQogICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICBjYXNlIFR5
cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICByZXR1cm4gT3B0aW9uczo6dXNlV2ViQXNzZW1ibHlS
ZWZlcmVuY2VzKCk7CisgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlkeDoKKyAgICAgICAgcmV0dXJu
IE9wdGlvbnM6OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKTsKICAgICBk
ZWZhdWx0OgogICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitp
bmxpbmUgYm9vbCBpc1N1YnR5cGUoVHlwZSBzdWIsIFR5cGUgcGFyZW50KQoreworICAgIGlmIChz
dWIuaXNUeXBlSWR4KCkgJiYgcGFyZW50LmlzRnVuY3JlZigpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBzdWIgPT0gcGFyZW50OworfQorCiBpbmxpbmUgYm9vbCBpc1JlZlR5
cGUoVHlwZSB0eXBlKQogewotICAgIHJldHVybiB0eXBlLmlzRnVuY3JlZigpIHx8IHR5cGUuaXNF
eHRlcm5yZWYoKTsKKyAgICByZXR1cm4gdHlwZS5pc0Z1bmNyZWYoKSB8fCB0eXBlLmlzRXh0ZXJu
cmVmKCkgfHwgdHlwZS5pc1R5cGVJZHgoKTsKIH0KLSAgICAKKwogZW51bSBjbGFzcyBFeHRlcm5h
bEtpbmQgOiB1aW50OF90IHsKICAgICAvLyBGSVhNRSBhdXRvLWdlbmVyYXRlIHRoaXMuIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUyMzEKICAgICBGdW5jdGlvbiA9
IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRnVuY3Rpb25Q
YXJzZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5o
CmluZGV4IGEwNmFkODAxNmFlYWY2Y2E4MmNlNmU0YTFlOTI0ZWUzNzc2NTU4ZmIuLmRmMGUxY2Fm
MzA1NjI0Njc3NmUwMzM5N2QyYWFiMWM5ZDI4ZTE1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21GdW5jdGlvblBhcnNlci5oCkBAIC02OTksNyArNjk5LDcgQEAgYXV0
byBGdW5jdGlvblBhcnNlcjxDb250ZXh0Pjo6Y2hlY2tCcmFuY2hUYXJnZXQoY29uc3QgQ29udHJv
bFR5cGUmIHRhcmdldCkgLT4gUGEKIAogICAgIHVuc2lnbmVkIG9mZnNldCA9IG1fZXhwcmVzc2lv
blN0YWNrLnNpemUoKSAtIHRhcmdldC5icmFuY2hUYXJnZXRBcml0eSgpOwogICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCB0YXJnZXQuYnJhbmNoVGFyZ2V0QXJpdHkoKTsgKytpKQotICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpICE9IG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKSwgImJyYW5jaCdzIHN0YWNrIHR5cGUg
aXMgbm90IGEgYmxvY2sncyB0eXBlIGJyYW5jaCB0YXJnZXQgdHlwZS4gU3RhY2sgdmFsdWUgaGFz
IHR5cGUiLCBtX2V4cHJlc3Npb25TdGFja1tvZmZzZXQgKyBpXS50eXBlKCkua2luZCwgIiBidXQg
YnJhbmNoIHRhcmdldCBleHBlY3RzIGEgdmFsdWUgb2YgIiwgdGFyZ2V0LmJyYW5jaFRhcmdldFR5
cGUoaSkua2luZCwgIiBhdCBpbmRleCAiLCBpKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRighaXNTdWJ0eXBlKHRhcmdldC5icmFuY2hUYXJnZXRUeXBlKGkpLCBtX2V4cHJlc3Npb25T
dGFja1tvZmZzZXQgKyBpXS50eXBlKCkpLCAiYnJhbmNoJ3Mgc3RhY2sgdHlwZSBpcyBub3QgYSBi
bG9jaydzIHR5cGUgYnJhbmNoIHRhcmdldCB0eXBlLiBTdGFjayB2YWx1ZSBoYXMgdHlwZSIsIG1f
ZXhwcmVzc2lvblN0YWNrW29mZnNldCArIGldLnR5cGUoKS5raW5kLCAiIGJ1dCBicmFuY2ggdGFy
Z2V0IGV4cGVjdHMgYSB2YWx1ZSBvZiAiLCB0YXJnZXQuYnJhbmNoVGFyZ2V0VHlwZShpKS5raW5k
LCAiIGF0IGluZGV4ICIsIGkpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTcwOSw3ICs3MDks
NyBAQCBhdXRvIEZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+Ojp1bmlmeShjb25zdCBDb250cm9sVHlw
ZSYgY29udHJvbERhdGEpIC0+IFBhcnRpYWxSZQogewogICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVybkNvdW50KCkgIT0gbV9leHByZXNzaW9u
U3RhY2suc2l6ZSgpLCAiIGJsb2NrIHdpdGggdHlwZTogIiwgY29udHJvbERhdGEuc2lnbmF0dXJl
KCktPnRvU3RyaW5nKCksICIgcmV0dXJuczogIiwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJl
dHVybkNvdW50KCksICIgYnV0IHN0YWNrIGhhczogIiwgbV9leHByZXNzaW9uU3RhY2suc2l6ZSgp
LCAiIHZhbHVlcyIpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBjb250cm9sRGF0YS5z
aWduYXR1cmUoKS0+cmV0dXJuQ291bnQoKTsgKytpKQotICAgICAgICBXQVNNX1ZBTElEQVRPUl9G
QUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5cGUoKSAhPSBjb250cm9sRGF0YS5zaWduYXR1
cmUoKS0+cmV0dXJuVHlwZShpKSwgImNvbnRyb2wgZmxvdyByZXR1cm5zIHdpdGggdW5leHBlY3Rl
ZCB0eXBlLiAiLCBtX2V4cHJlc3Npb25TdGFja1tpXS50eXBlKCkua2luZCwgIiBpcyBub3QgYSAi
LCBjb250cm9sRGF0YS5zaWduYXR1cmUoKS0+cmV0dXJuVHlwZShpKS5raW5kKTsKKyAgICAgICAg
V0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKG1fZXhwcmVzc2lvblN0YWNrW2ldLnR5
cGUoKSwgY29udHJvbERhdGEuc2lnbmF0dXJlKCktPnJldHVyblR5cGUoaSkpLCAiY29udHJvbCBm
bG93IHJldHVybnMgd2l0aCB1bmV4cGVjdGVkIHR5cGUuICIsIG1fZXhwcmVzc2lvblN0YWNrW2ld
LnR5cGUoKS5raW5kLCAiIGlzIG5vdCBhICIsIGNvbnRyb2xEYXRhLnNpZ25hdHVyZSgpLT5yZXR1
cm5UeXBlKGkpLmtpbmQpOwogCiAgICAgcmV0dXJuIHsgfTsKIH0KQEAgLTgzNiw3ICs4MzYsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgV0FT
TV9UUllfUE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhpbmRleCwgInRhYmxlLnNldCIpOwogICAg
ICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gaW5kZXgudHlwZSgp
LmtpbmQsICJ0YWJsZS5zZXQgaW5kZXggdG8gdHlwZSAiLCBpbmRleC50eXBlKCkua2luZCwgIiBl
eHBlY3RlZCAiLCBUeXBlS2luZDo6STMyKTsKICAgICAgICAgVHlwZSB0eXBlID0gbV9pbmZvLnRh
Ymxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOwotICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlM
X0lGKHZhbHVlLnR5cGUoKSAhPSB0eXBlLCAidGFibGUuc2V0IHZhbHVlIHRvIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQsICIgZXhwZWN0ZWQgIiwgdHlwZS5raW5kKTsKKyAgICAgICAgV0FTTV9W
QUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKHZhbHVlLnR5cGUoKSwgdHlwZSksICJ0YWJsZS5z
ZXQgdmFsdWUgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCB0eXBl
LmtpbmQpOwogICAgICAgICBSRUxFQVNFX0FTU0VSVChtX2luZm8udGFibGVzW3RhYmxlSW5kZXhd
LnR5cGUoKSA9PSBUYWJsZUVsZW1lbnRUeXBlOjpFeHRlcm5yZWYgfHwgbV9pbmZvLnRhYmxlc1t0
YWJsZUluZGV4XS50eXBlKCkgPT0gVGFibGVFbGVtZW50VHlwZTo6RnVuY3JlZik7CiAgICAgICAg
IFdBU01fVFJZX0FERF9UT19DT05URVhUKGFkZFRhYmxlU2V0KHRhYmxlSW5kZXgsIGluZGV4LCB2
YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtODk5LDcgKzg5OSw4IEBAIEZPUl9FQUNI
X1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICAgICAgV0FTTV9UUllf
UE9QX0VYUFJFU1NJT05fU1RBQ0tfSU5UTyhkZWx0YSwgInRhYmxlLmdyb3ciKTsKICAgICAgICAg
ICAgIFdBU01fVFJZX1BPUF9FWFBSRVNTSU9OX1NUQUNLX0lOVE8oZmlsbCwgInRhYmxlLmdyb3ci
KTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxsLnR5cGUoKSAhPSBt
X2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5ncm93IGV4cGVjdHMg
ZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRleF0ud2FzbVR5cGUo
KS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAgICAgIFR5cGUgdGFi
bGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgpOworICAgICAgICAg
ICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlwZSgpLCB0YWJsZVR5
cGUpLCAidGFibGUuZ3JvdyBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAiLCB0YWJsZVR5cGUu
a2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAgICBXQVNNX1ZBTElE
QVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gZGVsdGEudHlwZSgpLmtpbmQsICJ0YWJsZS5n
cm93IGV4cGVjdHMgYW4gaTMyIGRlbHRhIHZhbHVlLCBnb3QgIiwgZGVsdGEudHlwZSgpLmtpbmQp
OwogCiAgICAgICAgICAgICBFeHByZXNzaW9uVHlwZSByZXN1bHQ7CkBAIC05MTgsNyArOTE5LDgg
QEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgICAg
ICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKGZpbGwsICJ0YWJsZS5maWxsIik7
CiAgICAgICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFDS19JTlRPKG9mZnNldCwg
InRhYmxlLmZpbGwiKTsKIAotICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihmaWxs
LnR5cGUoKSAhPSBtX2luZm8udGFibGVzW3RhYmxlSW5kZXhdLndhc21UeXBlKCksICJ0YWJsZS5m
aWxsIGV4cGVjdHMgZmlsbCB2YWx1ZSBvZiB0eXBlICIsIG1faW5mby50YWJsZXNbdGFibGVJbmRl
eF0ud2FzbVR5cGUoKS5raW5kLCAiIGdvdCAiLCBmaWxsLnR5cGUoKS5raW5kKTsKKyAgICAgICAg
ICAgIFR5cGUgdGFibGVUeXBlID0gbV9pbmZvLnRhYmxlc1t0YWJsZUluZGV4XS53YXNtVHlwZSgp
OworICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNTdWJ0eXBlKGZpbGwudHlw
ZSgpLCB0YWJsZVR5cGUpLCAidGFibGUuZmlsbCBleHBlY3RzIGZpbGwgdmFsdWUgb2YgdHlwZSAi
LCB0YWJsZVR5cGUua2luZCwgIiBnb3QgIiwgZmlsbC50eXBlKCkua2luZCk7CiAgICAgICAgICAg
ICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKFR5cGVLaW5kOjpJMzIgIT0gb2Zmc2V0LnR5cGUoKS5r
aW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkzMiBvZmZzZXQgdmFsdWUsIGdvdCAiLCBvZmZz
ZXQudHlwZSgpLmtpbmQpOwogICAgICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRihUeXBl
S2luZDo6STMyICE9IGNvdW50LnR5cGUoKS5raW5kLCAidGFibGUuZmlsbCBleHBlY3RzIGFuIGkz
MiBjb3VudCB2YWx1ZSwgZ290ICIsIGNvdW50LnR5cGUoKS5raW5kKTsKIApAQCAtMTEwNCw2ICsx
MTA2LDEzIEBAIEZPUl9FQUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogCiAg
ICAgICAgIEV4cHJlc3Npb25UeXBlIHJlc3VsdDsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NP
TlRFWFQoYWRkUmVmRnVuYyhpbmRleCwgcmVzdWx0KSk7CisKKyAgICAgICAgaWYgKE9wdGlvbnM6
OnVzZVdlYkFzc2VtYmx5VHlwZWRGdW5jdGlvblJlZmVyZW5jZXMoKSkgeworICAgICAgICAgICAg
U2lnbmF0dXJlSW5kZXggc2lnbmF0dXJlSW5kZXggPSBtX2luZm8uc2lnbmF0dXJlSW5kZXhGcm9t
RnVuY3Rpb25JbmRleFNwYWNlKGluZGV4KTsKKyAgICAgICAgICAgIG1fZXhwcmVzc2lvblN0YWNr
LmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlIHtUeXBlS2luZDo6VHlwZUlkeCwgc2lnbmF0dXJlSW5k
ZXh9LCByZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorCiAgICAg
ICAgIG1fZXhwcmVzc2lvblN0YWNrLmNvbnN0cnVjdEFuZEFwcGVuZChUeXBlczo6RnVuY3JlZiwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICB9CkBAIC0xMTI1LDcgKzExMzQsNyBA
QCBGT1JfRUFDSF9XQVNNX01FTU9SWV9TVE9SRV9PUChDUkVBVEVfQ0FTRSkKICAgICAgICAgVHlw
ZWRFeHByZXNzaW9uIHZhbHVlOwogICAgICAgICBXQVNNX1RSWV9QT1BfRVhQUkVTU0lPTl9TVEFD
S19JTlRPKHZhbHVlLCAic2V0X2xvY2FsIik7CiAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxf
SUYoaW5kZXggPj0gbV9sb2NhbHMuc2l6ZSgpLCAiYXR0ZW1wdCB0byBzZXQgdW5rbm93biBsb2Nh
bCAiLCBpbmRleCwgIiBsYXN0IG9uZSBpcyAiLCBtX2xvY2Fscy5zaXplKCkpOwotICAgICAgICBX
QVNNX1ZBTElEQVRPUl9GQUlMX0lGKHZhbHVlLnR5cGUoKSAhPSBtX2xvY2Fsc1tpbmRleF0sICJz
ZXRfbG9jYWwgdG8gdHlwZSAiLCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xv
Y2Fsc1tpbmRleF0ua2luZCk7CisgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoIWlzU3Vi
dHlwZSh2YWx1ZS50eXBlKCksIG1fbG9jYWxzW2luZGV4XSksICJzZXRfbG9jYWwgdG8gdHlwZSAi
LCB2YWx1ZS50eXBlKCkua2luZCwgIiBleHBlY3RlZCAiLCBtX2xvY2Fsc1tpbmRleF0ua2luZCk7
CiAgICAgICAgIFdBU01fVFJZX0FERF9UT19DT05URVhUKHNldExvY2FsKGluZGV4LCB2YWx1ZSkp
OwogICAgICAgICByZXR1cm4geyB9OwogICAgIH0KQEAgLTExMzcsNyArMTE0Niw3IEBAIEZPUl9F
QUNIX1dBU01fTUVNT1JZX1NUT1JFX09QKENSRUFURV9DQVNFKQogICAgICAgICBXQVNNX1BBUlNF
Ul9GQUlMX0lGKG1fZXhwcmVzc2lvblN0YWNrLmlzRW1wdHkoKSwgImNhbid0IHRlZV9sb2NhbCBv
biBlbXB0eSBleHByZXNzaW9uIHN0YWNrIik7CiAgICAgICAgIFR5cGVkRXhwcmVzc2lvbiB2YWx1
ZSA9IG1fZXhwcmVzc2lvblN0YWNrLmxhc3QoKTsKICAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJ
TF9JRihpbmRleCA+PSBtX2xvY2Fscy5zaXplKCksICJhdHRlbXB0IHRvIHRlZSB1bmtub3duIGxv
Y2FsICIsIGluZGV4LCAiIGxhc3Qgb25lIGlzICIsIG1fbG9jYWxzLnNpemUoKSk7Ci0gICAgICAg
IFdBU01fVkFMSURBVE9SX0ZBSUxfSUYodmFsdWUudHlwZSgpICE9IG1fbG9jYWxzW2luZGV4XSwg
InNldF9sb2NhbCB0byB0eXBlICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1f
bG9jYWxzW2luZGV4XS5raW5kKTsKKyAgICAgICAgV0FTTV9WQUxJREFUT1JfRkFJTF9JRighaXNT
dWJ0eXBlKHZhbHVlLnR5cGUoKSwgbV9sb2NhbHNbaW5kZXhdKSwgInNldF9sb2NhbCB0byB0eXBl
ICIsIHZhbHVlLnR5cGUoKS5raW5kLCAiIGV4cGVjdGVkICIsIG1fbG9jYWxzW2luZGV4XS5raW5k
KTsKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0TG9jYWwoaW5kZXgsIHZhbHVl
KSk7CiAgICAgICAgIHJldHVybiB7IH07CiAgICAgfQpAQCAtMTE2NSw3ICsxMTc0LDcgQEAgRk9S
X0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAKICAgICAgICAgVHlwZSBn
bG9iYWxUeXBlID0gbV9pbmZvLmdsb2JhbHNbaW5kZXhdLnR5cGU7CiAgICAgICAgIEFTU0VSVChp
c1ZhbHVlVHlwZShnbG9iYWxUeXBlKSk7Ci0gICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYo
Z2xvYmFsVHlwZSAhPSB2YWx1ZS50eXBlKCksICJzZXRfZ2xvYmFsICIsIGluZGV4LCAiIHdpdGgg
dHlwZSAiLCBnbG9iYWxUeXBlLmtpbmQsICIgd2l0aCBhIHZhcmlhYmxlIG9mIHR5cGUgIiwgdmFs
dWUudHlwZSgpLmtpbmQpOworICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1YnR5
cGUodmFsdWUudHlwZSgpLCBnbG9iYWxUeXBlKSwgInNldF9nbG9iYWwgIiwgaW5kZXgsICIgd2l0
aCB0eXBlICIsIGdsb2JhbFR5cGUua2luZCwgIiB3aXRoIGEgdmFyaWFibGUgb2YgdHlwZSAiLCB2
YWx1ZS50eXBlKCkua2luZCk7CiAKICAgICAgICAgV0FTTV9UUllfQUREX1RPX0NPTlRFWFQoc2V0
R2xvYmFsKGluZGV4LCB2YWx1ZSkpOwogICAgICAgICByZXR1cm4geyB9OwpAQCAtMTE4NCw3ICsx
MTkzLDcgQEAgRk9SX0VBQ0hfV0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAg
ICAgIFdBU01fUEFSU0VSX0ZBSUxfSUYoIWFyZ3MudHJ5UmVzZXJ2ZUNhcGFjaXR5KGNhbGxlZVNp
Z25hdHVyZS5hcmd1bWVudENvdW50KCkpLCAiY2FuJ3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9yeSBm
b3IgY2FsbCdzICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICIgYXJndW1lbnRz
Iik7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4
cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9u
IGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0KGkpOwotICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRihhcmcudHlwZSgpICE9IGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmly
c3RBcmd1bWVudEluZGV4KSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbCwgZ290ICIs
IGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50
KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOworICAgICAgICAgICAgV0FTTV9WQUxJREFU
T1JfRkFJTF9JRighaXNTdWJ0eXBlKGFyZy50eXBlKCksIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVu
dChpIC0gZmlyc3RBcmd1bWVudEluZGV4KSksICJhcmd1bWVudCB0eXBlIG1pc21hdGNoIGluIGNh
bGwsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIsIGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVy
ZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudEluZGV4KS5raW5kKTsKICAgICAgICAgICAgIGFy
Z3MudW5jaGVja2VkQXBwZW5kKGFyZyk7CiAgICAgICAgICAgICBtX2NvbnRleHQuZGlkUG9wVmFs
dWVGcm9tU3RhY2soKTsKICAgICAgICAgfQpAQCAtMTIyNSw3ICsxMjM0LDcgQEAgRk9SX0VBQ0hf
V0FTTV9NRU1PUllfU1RPUkVfT1AoQ1JFQVRFX0NBU0UpCiAgICAgICAgIGZvciAoc2l6ZV90IGkg
PSBmaXJzdEFyZ3VtZW50SW5kZXg7IGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCk7ICsraSkg
ewogICAgICAgICAgICAgVHlwZWRFeHByZXNzaW9uIGFyZyA9IG1fZXhwcmVzc2lvblN0YWNrLmF0
KGkpOwogICAgICAgICAgICAgaWYgKGkgPCBtX2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxKQot
ICAgICAgICAgICAgICAgIFdBU01fVkFMSURBVE9SX0ZBSUxfSUYoYXJnLnR5cGUoKSAhPSBjYWxs
ZWVTaWduYXR1cmUuYXJndW1lbnQoaSAtIGZpcnN0QXJndW1lbnRJbmRleCksICJhcmd1bWVudCB0
eXBlIG1pc21hdGNoIGluIGNhbGxfaW5kaXJlY3QsIGdvdCAiLCBhcmcudHlwZSgpLmtpbmQsICIs
IGV4cGVjdGVkICIsIGNhbGxlZVNpZ25hdHVyZS5hcmd1bWVudChpIC0gZmlyc3RBcmd1bWVudElu
ZGV4KS5raW5kKTsKKyAgICAgICAgICAgICAgICBXQVNNX1ZBTElEQVRPUl9GQUlMX0lGKCFpc1N1
YnR5cGUoYXJnLnR5cGUoKSwgY2FsbGVlU2lnbmF0dXJlLmFyZ3VtZW50KGkgLSBmaXJzdEFyZ3Vt
ZW50SW5kZXgpKSwgImFyZ3VtZW50IHR5cGUgbWlzbWF0Y2ggaW4gY2FsbF9pbmRpcmVjdCwgZ290
ICIsIGFyZy50eXBlKCkua2luZCwgIiwgZXhwZWN0ZWQgIiwgY2FsbGVlU2lnbmF0dXJlLmFyZ3Vt
ZW50KGkgLSBmaXJzdEFyZ3VtZW50SW5kZXgpLmtpbmQpOwogICAgICAgICAgICAgYXJncy51bmNo
ZWNrZWRBcHBlbmQoYXJnKTsKICAgICAgICAgICAgIG1fY29udGV4dC5kaWRQb3BWYWx1ZUZyb21T
dGFjaygpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTExJbnRHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUxMSW50R2VuZXJhdG9yLmNwcAppbmRleCBhNGM2ODY1M2NlNmUwYTY5MzUzMWVmNDk0NzE5NTBj
NmY1MmQ2MjNhLi41MzdlZTU2NTIwZWQ1ODQzMDFmNDgyMDQ5NjJjZjI3ODZiZGIzNGZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21MTEludEdlbmVyYXRvci5jcHAK
QEAgLTUzOSw2ICs1MzksNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3JtYXRpb25G
b3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAgICBjYXNl
IFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoKICAgICAg
ICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6VHlwZUlk
eDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA8IGdwckNvdW50KQogICAgICAgICAgICAgICAg
ICsrZ3BySW5kZXg7CiAgICAgICAgICAgICBlbHNlIGlmIChzdGFja0luZGV4KysgPj0gc3RhY2tD
b3VudCkKQEAgLTU5NCw2ICs1OTUsNyBAQCBhdXRvIExMSW50R2VuZXJhdG9yOjpjYWxsSW5mb3Jt
YXRpb25Gb3JDYWxsZXIoY29uc3QgU2lnbmF0dXJlJiBzaWduYXR1cmUpIC0+IExMSQogICAgICAg
ICBjYXNlIFR5cGVLaW5kOjpJNjQ6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkV4dGVybnJlZjoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKKyAgICAgICAgY2FzZSBUeXBlS2luZDo6
VHlwZUlkeDoKICAgICAgICAgICAgIGlmIChncHJJbmRleCA+IGdwckxpbWl0KQogICAgICAgICAg
ICAgICAgIGFyZ3VtZW50c1tpXSA9IHZpcnR1YWxSZWdpc3RlckZvckxvY2FsKC0tZ3BySW5kZXgp
OwogICAgICAgICAgICAgZWxzZQpAQCAtNjIxLDYgKzYyMyw3IEBAIGF1dG8gTExJbnRHZW5lcmF0
b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlcihjb25zdCBTaWduYXR1cmUmIHNpZ25hdHVyZSkg
LT4gTExJCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgorICAgICAgICBj
YXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgaWYgKGdwckluZGV4ID4gZ3ByTGlt
aXQpCiAgICAgICAgICAgICAgICAgdGVtcG9yYXJ5UmVzdWx0c1tpXSA9IHZpcnR1YWxSZWdpc3Rl
ckZvckxvY2FsKC0tZ3BySW5kZXgpOwogICAgICAgICAgICAgZWxzZQpAQCAtNjc2LDYgKzY3OSw3
IEBAIGF1dG8gTExJbnRHZW5lcmF0b3I6OmNhbGxJbmZvcm1hdGlvbkZvckNhbGxlZShjb25zdCBT
aWduYXR1cmUmIHNpZ25hdHVyZSkgLT4gVmVjCiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6Okk2NDoK
ICAgICAgICAgY2FzZSBUeXBlS2luZDo6RXh0ZXJucmVmOgogICAgICAgICBjYXNlIFR5cGVLaW5k
OjpGdW5jcmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAg
aWYgKGdwckluZGV4IDwgbWF4R1BSSW5kZXgpCiAgICAgICAgICAgICAgICAgbV9yZXN1bHRzLmFw
cGVuZCh2aXJ0dWFsUmVnaXN0ZXJGb3JMb2NhbChudW1iZXJPZkxMSW50Q2FsbGVlU2F2ZVJlZ2lz
dGVycyArIGdwckluZGV4KyspKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTczMCw2ICs3MzQsNyBA
QCBhdXRvIExMSW50R2VuZXJhdG9yOjphZGRBcmd1bWVudHMoY29uc3QgU2lnbmF0dXJlJiBzaWdu
YXR1cmUpIC0+IFBhcnRpYWxSZXN1bHQKICAgICAgICAgY2FzZSBUeXBlS2luZDo6STY0OgogICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpFeHRlcm5yZWY6CiAgICAgICAgIGNhc2UgVHlwZUtpbmQ6OkZ1
bmNyZWY6CisgICAgICAgIGNhc2UgVHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgICAgICBhZGRB
cmd1bWVudChpLCBncHJJbmRleCwgbWF4R1BSSW5kZXgpOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgVHlwZUtpbmQ6OkYzMjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL1dhc21Nb2R1bGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21N
b2R1bGUuaAppbmRleCBjYjE5NTYzZWUwZTJiMmM3YzVhMjQ4ZjMyOTcwMDM4NGZiN2NkMjk1Li5k
NTBmZGRmYjM3ODM3YTI5MTNhYzdkMDE1NjhmYTY5NGMyMmE3YjMxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTW9kdWxlLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vV2FzbU1vZHVsZS5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiV2Fz
bUNvZGVCbG9jay5oIgogI2luY2x1ZGUgIldhc21FbWJlZGRlci5oIgogI2luY2x1ZGUgIldhc21N
ZW1vcnkuaCIKKyNpbmNsdWRlICJXYXNtT3BzLmgiCiAjaW5jbHVkZSA8d3RmL0V4cGVjdGVkLmg+
CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvU2hhcmVkVGFzay5oPgpAQCAt
NDEsOCArNDIsNiBAQCBjbGFzcyBMTEludFBsYW47CiBzdHJ1Y3QgQ29udGV4dDsKIHN0cnVjdCBN
b2R1bGVJbmZvcm1hdGlvbjsKIAotdXNpbmcgU2lnbmF0dXJlSW5kZXggPSB1aW50cHRyX3Q7Ci0K
IGNsYXNzIE1vZHVsZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxNb2R1bGU+IHsKIHB1
YmxpYzoKICAgICB1c2luZyBWYWxpZGF0aW9uUmVzdWx0ID0gRXhwZWN0ZWQ8UmVmUHRyPE1vZHVs
ZT4sIFN0cmluZz47CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNt
U2VjdGlvblBhcnNlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtU2VjdGlv
blBhcnNlci5jcHAKaW5kZXggMjhjOTgyMDIyMjNkZWI3NjUxNTBmMDUxM2QxZDA4ZjMwZGYxM2E2
OS4uZWZmOGJjMWM5OTdmMDIyOWEyZWJjODM3NmJlMjE3NDljNzJmYjMxNiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbVNlY3Rpb25QYXJzZXIuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21TZWN0aW9uUGFyc2VyLmNwcApAQCAtMzA0LDcg
KzMwNCw3IEBAIGF1dG8gU2VjdGlvblBhcnNlcjo6cGFyc2VHbG9iYWwoKSAtPiBQYXJ0aWFsUmVz
dWx0CiAgICAgICAgICAgICBnbG9iYWwuaW5pdGlhbGl6YXRpb25UeXBlID0gR2xvYmFsSW5mb3Jt
YXRpb246OkZyb21SZWZGdW5jOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBnbG9iYWwuaW5p
dGlhbGl6YXRpb25UeXBlID0gR2xvYmFsSW5mb3JtYXRpb246OkZyb21FeHByZXNzaW9uOwotICAg
ICAgICBXQVNNX1BBUlNFUl9GQUlMX0lGKHR5cGVGb3JJbml0T3Bjb2RlICE9IGdsb2JhbC50eXBl
LCAiR2xvYmFsIGluaXRfZXhwciBvcGNvZGUgb2YgdHlwZSAiLCB0eXBlRm9ySW5pdE9wY29kZS5r
aW5kLCAiIGRvZXNuJ3QgbWF0Y2ggZ2xvYmFsJ3MgdHlwZSAiLCBnbG9iYWwudHlwZS5raW5kKTsK
KyAgICAgICAgV0FTTV9QQVJTRVJfRkFJTF9JRighaXNTdWJ0eXBlKHR5cGVGb3JJbml0T3Bjb2Rl
LCBnbG9iYWwudHlwZSksICJHbG9iYWwgaW5pdF9leHByIG9wY29kZSBvZiB0eXBlICIsIHR5cGVG
b3JJbml0T3Bjb2RlLmtpbmQsICIgZG9lc24ndCBtYXRjaCBnbG9iYWwncyB0eXBlICIsIGdsb2Jh
bC50eXBlLmtpbmQpOwogCiAgICAgICAgIGlmIChpbml0T3Bjb2RlID09IFJlZkZ1bmMpCiAgICAg
ICAgICAgICBtX2luZm8tPmFkZERlY2xhcmVkRnVuY3Rpb24oZ2xvYmFsLmluaXRpYWxCaXRzT3JJ
bXBvcnROdW1iZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bVNpZ25hdHVyZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbVNpZ25hdHVyZS5o
CmluZGV4IGFmZDVlNGFhYzc4NjQyOGY1ZTgxM2RjYzhkYTM3MDMxNTQ5MGExZWEuLmYwZGVhYmIw
OTRmNzRiMWI1NzA4MDI3MjVmNDIzZDVkMTk2NDU4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL1dhc21TaWduYXR1cmUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtU2lnbmF0dXJlLmgKQEAgLTQ0LDcgKzQ0LDYgQEAgbmFtZXNwYWNlIEpTQyB7
CiBuYW1lc3BhY2UgV2FzbSB7CiAKIHVzaW5nIFNpZ25hdHVyZUFyZ0NvdW50ID0gdWludDMyX3Q7
Ci11c2luZyBTaWduYXR1cmVJbmRleCA9IHVpbnRwdHJfdDsKIAogY2xhc3MgU2lnbmF0dXJlIDog
cHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFNpZ25hdHVyZT4gewogICAgIFdURl9NQUtFX0ZB
U1RfQUxMT0NBVEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vZ2Vu
ZXJhdGVXYXNtT3BzSGVhZGVyLnB5IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vZ2VuZXJh
dGVXYXNtT3BzSGVhZGVyLnB5CmluZGV4IGExYjA3MjY5YWZlNzgzMjJhMWQ1NzkzY2M5NWU0YWM5
NWE1ZTUyYzIuLjg1MmQ3NDU3YTM5M2ViNGM5MjI4NGVlNDUyMTcwNmY3MWU3N2NkMGYgMTAwNzU1
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2dlbmVyYXRlV2FzbU9wc0hlYWRlci5w
eQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9nZW5lcmF0ZVdhc21PcHNIZWFkZXIu
cHkKQEAgLTIxMiw5ICsyMTIsMTEgQEAgZW51bSBjbGFzcyBUeXBlS2luZCA6IGludDhfdCB7CiB9
OwogI3VuZGVmIENSRUFURV9FTlVNX1ZBTFVFCiAKK3VzaW5nIFNpZ25hdHVyZUluZGV4ID0gdWlu
dHB0cl90OworCiBzdHJ1Y3QgVHlwZSB7CiAgICAgVHlwZUtpbmQga2luZDsKLSAgICB1bnNpZ25l
ZCBpbmRleDsKKyAgICBTaWduYXR1cmVJbmRleCBpbmRleDsKIAogICAgIGJvb2wgb3BlcmF0b3I9
PShjb25zdCBUeXBlJiBvdGhlcikgY29uc3QKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TW9kdWxlLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TW9kdWxlLmgKaW5kZXggNTM2MDZjMjlkYzI4
Y2EyNjMzZmExNjhlMGIxMDI2YjhmMWI4N2MxZC4uYTZkNjRlZTM0NWZiYzdhNDNjZTFjNWU0Y2Ez
ZDc3NzI0YTAwM2NjOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseU1vZHVsZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L0pTV2ViQXNzZW1ibHlNb2R1bGUuaApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkpTRGVz
dHJ1Y3RpYmxlT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNPYmplY3QuaCIKICNpbmNsdWRlICJXYXNt
TWVtb3J5TW9kZS5oIgorI2luY2x1ZGUgIldhc21PcHMuaCIKICNpbmNsdWRlIDx3dGYvQmFnLmg+
CiAjaW5jbHVkZSA8d3RmL0V4cGVjdGVkLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAg
LTQyLDcgKzQzLDYgQEAgbmFtZXNwYWNlIFdhc20gewogY2xhc3MgTW9kdWxlOwogc3RydWN0IE1v
ZHVsZUluZm9ybWF0aW9uOwogY2xhc3MgUGxhbjsKLXVzaW5nIFNpZ25hdHVyZUluZGV4ID0gdWlu
dHB0cl90OwogfQogCiBjbGFzcyBTeW1ib2xUYWJsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dhc21Ub0pTLmNwcAppbmRleCA3MWUzZDdmYzdlODAxMzI2ZGFjNDUwYTczYmM3Mzlj
MTg3NDU1YTcwLi43NWI1MWRhYjU1ZGExYzAzOGIwYzc4ZTIxMGY3ZDZiNWFhMzI4ZTM5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XYXNtVG9KUy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2FzbVRvSlMuY3BwCkBAIC0xMDUsNiArMTA1
LDcgQEAgRXhwZWN0ZWQ8TWFjcm9Bc3NlbWJsZXJDb2RlUmVmPFdhc21FbnRyeVB0clRhZz4sIEJp
bmRpbmdGYWlsdXJlPiB3YXNtVG9KUyhWTSYgdm0KICAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6
OlZvaWQ6CiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jOgogICAgICAgICAgICAgICAg
IFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7IC8vIEhhbmRsZWQgYWJvdmUuCisgICAgICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6
RXh0ZXJucmVmOgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKICAgICAgICAg
ICAgIGNhc2UgVHlwZUtpbmQ6OkkzMjoKQEAgLTE3Nyw2ICsxNzgsNyBAQCBFeHBlY3RlZDxNYWNy
b0Fzc2VtYmxlckNvZGVSZWY8V2FzbUVudHJ5UHRyVGFnPiwgQmluZGluZ0ZhaWx1cmU+IHdhc21U
b0pTKFZNJiB2bQogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6Vm9pZDoKICAgICAgICAgICAg
IGNhc2UgVHlwZUtpbmQ6OkZ1bmM6CiAgICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9U
X1JFQUNIRUQoKTsgLy8gSGFuZGxlZCBhYm92ZS4KKyAgICAgICAgICAgIGNhc2UgVHlwZUtpbmQ6
OlR5cGVJZHg6CiAgICAgICAgICAgICBjYXNlIFR5cGVLaW5kOjpFeHRlcm5yZWY6CiAgICAgICAg
ICAgICBjYXNlIFR5cGVLaW5kOjpGdW5jcmVmOgogICAgICAgICAgICAgY2FzZSBUeXBlS2luZDo6
STMyOgpAQCAtMzE5LDYgKzMyMSw3IEBAIEV4cGVjdGVkPE1hY3JvQXNzZW1ibGVyQ29kZVJlZjxX
YXNtRW50cnlQdHJUYWc+LCBCaW5kaW5nRmFpbHVyZT4gd2FzbVRvSlMoVk0mIHZtCiAgICAgICAg
IH0KICAgICAgICAgY2FzZSBUeXBlS2luZDo6RnVuY3JlZjoKICAgICAgICAgY2FzZSBUeXBlS2lu
ZDo6RXh0ZXJucmVmOgorICAgICAgICBjYXNlIFR5cGVLaW5kOjpUeXBlSWR4OgogICAgICAgICAg
ICAgaml0Lm1vdmUoR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIsIHdhc21DYWxsSW5mby5yZXN1bHRz
WzBdLmdwcigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFR5cGVLaW5kOjpG
MzI6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5RnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlGdW5jdGlvbi5jcHAKaW5kZXggNjdlNGU3MThkMjFhMjQ3YmIwMmJkM2I4N2Y4Y2NhNGE0Mjcw
MjQ2OC4uNDM1ZTVlNGJjYmY4Nzg1ZmY3M2JjMmFhNjQ3YjUwNGFkNWZmOTlmOSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbi5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbi5j
cHAKQEAgLTgzLDYgKzgzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNhbGxXZWJBc3Nl
bWJseUZ1bmN0aW9uLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICAgICAgY2Fz
ZSBXYXNtOjpUeXBlS2luZDo6STMyOgogICAgICAgICAgICAgYXJnID0gSlNWYWx1ZTo6ZGVjb2Rl
KGFyZy50b0ludDMyKGdsb2JhbE9iamVjdCkpOwogICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgV2FzbTo6VHlwZUtpbmQ6OlR5cGVJZHg6CiAgICAgICAgIGNhc2UgV2FzbTo6VHlwZUtp
bmQ6OkZ1bmNyZWY6IHsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3NlbWJseUhvc3RGdW5jdGlv
bih2bSwgYXJnKSAmJiAhYXJnLmlzTnVsbCgpKQogICAgICAgICAgICAgICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUodGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJl
IGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vd2FzbS5qc29uIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vd2Fz
bS5qc29uCmluZGV4IDAxYmVjZmYyOTZlZGM5Nzg5OWNiN2Q5Mjk3MDRhM2RkYTgyZTQ5Y2YuLjJh
NzI4N2Q5NjA5MDAwMTlmZGExMWNkNjc0ZjJhMDFiMmRiZjE1ODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL3dhc20uanNvbgorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS93YXNtLmpzb24KQEAgLTcsMTggKzcsMTkgQEAKICAgICAgICAgeyAibmFtZSI6ICJ2
ZXJzaW9uIiwgICAgICAidHlwZSI6ICJ1aW50MzIiLCAidmFsdWUiOiAgICAgICAgICAxLCAiZGVz
Y3JpcHRpb24iOiAiVmVyc2lvbiBudW1iZXIiIH0KICAgICBdLAogICAgICJ0eXBlIiA6IHsKLSAg
ICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMSwgImIz
dHlwZSI6ICJCMzo6SW50MzIiIH0sCi0gICAgICAgICJpNjQiOiAgICAgICB7ICJ0eXBlIjogInZh
cmludDciLCAidmFsdWUiOiAgLTIsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAotICAgICAgICAi
ZjMyIjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0zLCAiYjN0eXBlIjog
IkIzOjpGbG9hdCIgfSwKLSAgICAgICAgImY2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIs
ICJ2YWx1ZSI6ICAtNCwgImIzdHlwZSI6ICJCMzo6RG91YmxlIiB9LAotICAgICAgICAiZnVuY3Jl
ZiI6ICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTE2LCAiYjN0eXBlIjogIkIzOjpJ
bnQ2NCIgfSwKLSAgICAgICAgImV4dGVybnJlZiI6IHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1
ZSI6IC0xNywgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCi0gICAgICAgICJmdW5jIjogICAgICB7
ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtMzIsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0s
Ci0gICAgICAgICJ2b2lkIjogICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtNjQs
ICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0KKyAgICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUiOiAi
dmFyaW50NyIsICJ2YWx1ZSI6ICAgLTEsICJiM3R5cGUiOiAiQjM6OkludDMyIiB9LAorICAgICAg
ICAiaTY0IjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogICAtMiwgImIzdHlw
ZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmMzIiOiAgICAgICB7ICJ0eXBlIjogInZhcmlu
dDciLCAidmFsdWUiOiAgIC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIgfSwKKyAgICAgICAgImY2
NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTQsICJiM3R5cGUiOiAi
QjM6OkRvdWJsZSIgfSwKKyAgICAgICAgImZ1bmNyZWYiOiAgIHsgInR5cGUiOiAidmFyaW50NyIs
ICJ2YWx1ZSI6ICAtMTYsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAorICAgICAgICAiZXh0ZXJu
cmVmIjogeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0xNywgImIzdHlwZSI6ICJCMzo6
SW50NjQiIH0sCisgICAgICAgICJmdW5jIjogICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFs
dWUiOiAgLTMyLCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9LAorICAgICAgICAidm9pZCI6ICAgICAg
eyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC02NCwgImIzdHlwZSI6ICJCMzo6Vm9pZCIg
fSwKKyAgICAgICAgInR5cGVfaWR4IjogIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6IC0x
MjgsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9CiAgICAgfSwKICAgICAidmFsdWVfdHlwZSI6IFsi
aTMyIiwgImk2NCIsICJmMzIiLCAiZjY0IiwgImV4dGVybnJlZiIsICJmdW5jcmVmIl0sCiAgICAg
ImJsb2NrX3R5cGUiOiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIsICJ2b2lkIiwgImV4dGVy
bnJlZiIsICJmdW5jcmVmIl0sCi0gICAgInJlZl90eXBlIjogWyJmdW5jcmVmIiwiZXh0ZXJucmVm
Il0sCisgICAgInJlZl90eXBlIjogWyJmdW5jcmVmIiwgImV4dGVybnJlZiIsICJ0eXBlX2lkeCJd
LAogICAgICJleHRlcm5hbF9raW5kIjogewogICAgICAgICAiRnVuY3Rpb24iOiB7ICJ0eXBlIjog
InVpbnQ4IiwgInZhbHVlIjogMCB9LAogICAgICAgICAiVGFibGUiOiAgICB7ICJ0eXBlIjogInVp
bnQ4IiwgInZhbHVlIjogMSB9LApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rl
c3RzL0NoYW5nZUxvZwppbmRleCBiZGFmMWEyOTgyMjI3NzAyOWNkNDU4MDg3MDA2NmE0Mzg0NWUy
ODdiLi4wZmZhMDgzMDg0MjBkNmJmNzZkYTNhOTNkMGQzNzE3YmU4NDM3MjM2IDEwMDY0NAotLS0g
YS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3
IEBACisyMDIxLTAzLTA0ICBEbWl0cnkgQmV6aGV0c2tvdiAgPGRiZXpoZXRza292QGlnYWxpYS5j
b20+CisKKyAgICAgICAgW1dBU00tRnVuY3Rpb24tUmVmZXJlbmNlc10gVXBkYXRlIHJlZi5mdW5j
IHRvIHByb2R1Y2UgKHJlZiAkdCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyMjc3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1ha2UgcmVmLmZ1bmMgdG8gcHJvZHVjZSBub24gbnVsbGFibGUgcmVmZXJl
bmNlIHR5cGUgd2hpY2gKKyAgICAgICAgaW5jb3Jwb3JhdGVzIHNpZ25hdHVyZSBpbmRleC4gU2lu
Y2UgaW4gSlNDIHNpZ25hdHVyZSBpbmRleCByZXByZXNlbnRzCisgICAgICAgIHR5cGUgb2YgdGhl
IGZ1bmN0aW9uIGZyb20gVHlwZSBzZWN0aW9uIHdlIHVzZSBpdCBpbnN0ZWFkIG9mIHR5cGVfaWR4
CisgICAgICAgIGZvciByZXByZXNlbnRpbmcgdHlwZSBvZiBmdW5jdGlvbiByZWZlcmVuY2VzLgor
CisgICAgICAgICogd2FzbS93YXNtLmpzb246CisKIDIwMjEtMDMtMDQgIFNhYW0gQmFyYXRpICA8
c2JhcmF0aUBhcHBsZS5jb20+CiAKICAgICAgICAgRG9uJ3QgdHJ1c3QgcGFyc2luZyBpbmZvcm1h
dGlvbiB0byB0ZWxsIHVzIGlmIHdlJ3ZlIGVtaXR0ZWQgb3BfY2FsbF9ldmFsCmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3dhc20vd2FzbS5qc29uIGIvSlNUZXN0cy93YXNtL3dhc20uanNvbgppbmRleCAw
MWJlY2ZmMjk2ZWRjOTc4OTljYjdkOTI5NzA0YTNkZGE4MmU0OWNmLi4yYTcyODdkOTYwOTAwMDE5
ZmRhMTFjZDY3NGYyYTAxYjJkYmYxNTg4IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3dhc20vd2FzbS5q
c29uCisrKyBiL0pTVGVzdHMvd2FzbS93YXNtLmpzb24KQEAgLTcsMTggKzcsMTkgQEAKICAgICAg
ICAgeyAibmFtZSI6ICJ2ZXJzaW9uIiwgICAgICAidHlwZSI6ICJ1aW50MzIiLCAidmFsdWUiOiAg
ICAgICAgICAxLCAiZGVzY3JpcHRpb24iOiAiVmVyc2lvbiBudW1iZXIiIH0KICAgICBdLAogICAg
ICJ0eXBlIiA6IHsKLSAgICAgICAgImkzMiI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2
YWx1ZSI6ICAtMSwgImIzdHlwZSI6ICJCMzo6SW50MzIiIH0sCi0gICAgICAgICJpNjQiOiAgICAg
ICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgLTIsICJiM3R5cGUiOiAiQjM6OkludDY0
IiB9LAotICAgICAgICAiZjMyIjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjog
IC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIgfSwKLSAgICAgICAgImY2NCI6ICAgICAgIHsgInR5
cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtNCwgImIzdHlwZSI6ICJCMzo6RG91YmxlIiB9LAot
ICAgICAgICAiZnVuY3JlZiI6ICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogLTE2LCAi
YjN0eXBlIjogIkIzOjpJbnQ2NCIgfSwKLSAgICAgICAgImV4dGVybnJlZiI6IHsgInR5cGUiOiAi
dmFyaW50NyIsICJ2YWx1ZSI6IC0xNywgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCi0gICAgICAg
ICJmdW5jIjogICAgICB7ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAtMzIsICJiM3R5cGUi
OiAiQjM6OlZvaWQiIH0sCi0gICAgICAgICJ2b2lkIjogICAgICB7ICJ0eXBlIjogInZhcmludDci
LCAidmFsdWUiOiAtNjQsICJiM3R5cGUiOiAiQjM6OlZvaWQiIH0KKyAgICAgICAgImkzMiI6ICAg
ICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAgLTEsICJiM3R5cGUiOiAiQjM6Oklu
dDMyIiB9LAorICAgICAgICAiaTY0IjogICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVl
IjogICAtMiwgImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmMzIiOiAgICAgICB7
ICJ0eXBlIjogInZhcmludDciLCAidmFsdWUiOiAgIC0zLCAiYjN0eXBlIjogIkIzOjpGbG9hdCIg
fSwKKyAgICAgICAgImY2NCI6ICAgICAgIHsgInR5cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAg
LTQsICJiM3R5cGUiOiAiQjM6OkRvdWJsZSIgfSwKKyAgICAgICAgImZ1bmNyZWYiOiAgIHsgInR5
cGUiOiAidmFyaW50NyIsICJ2YWx1ZSI6ICAtMTYsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9LAor
ICAgICAgICAiZXh0ZXJucmVmIjogeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC0xNywg
ImIzdHlwZSI6ICJCMzo6SW50NjQiIH0sCisgICAgICAgICJmdW5jIjogICAgICB7ICJ0eXBlIjog
InZhcmludDciLCAidmFsdWUiOiAgLTMyLCAiYjN0eXBlIjogIkIzOjpWb2lkIiB9LAorICAgICAg
ICAidm9pZCI6ICAgICAgeyAidHlwZSI6ICJ2YXJpbnQ3IiwgInZhbHVlIjogIC02NCwgImIzdHlw
ZSI6ICJCMzo6Vm9pZCIgfSwKKyAgICAgICAgInR5cGVfaWR4IjogIHsgInR5cGUiOiAidmFyaW50
NyIsICJ2YWx1ZSI6IC0xMjgsICJiM3R5cGUiOiAiQjM6OkludDY0IiB9CiAgICAgfSwKICAgICAi
dmFsdWVfdHlwZSI6IFsiaTMyIiwgImk2NCIsICJmMzIiLCAiZjY0IiwgImV4dGVybnJlZiIsICJm
dW5jcmVmIl0sCiAgICAgImJsb2NrX3R5cGUiOiBbImkzMiIsICJpNjQiLCAiZjMyIiwgImY2NCIs
ICJ2b2lkIiwgImV4dGVybnJlZiIsICJmdW5jcmVmIl0sCi0gICAgInJlZl90eXBlIjogWyJmdW5j
cmVmIiwiZXh0ZXJucmVmIl0sCisgICAgInJlZl90eXBlIjogWyJmdW5jcmVmIiwgImV4dGVybnJl
ZiIsICJ0eXBlX2lkeCJdLAogICAgICJleHRlcm5hbF9raW5kIjogewogICAgICAgICAiRnVuY3Rp
b24iOiB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMCB9LAogICAgICAgICAiVGFibGUiOiAg
ICB7ICJ0eXBlIjogInVpbnQ4IiwgInZhbHVlIjogMSB9LAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>