<?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>227490</bug_id>
          
          <creation_ts>2021-06-29 10:08:27 -0700</creation_ts>
          <short_desc>Resync service-worker WPT tests from upstream</short_desc>
          <delta_ts>2021-06-29 15:05:04 -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>Tools / Tests</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>227316</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1773436</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-29 10:08:27 -0700</bug_when>
    <thetext>Resync service-worker WPT tests from upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773450</commentid>
    <comment_count>1</comment_count>
      <attachid>432496</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-29 10:33:03 -0700</bug_when>
    <thetext>Created attachment 432496
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773486</commentid>
    <comment_count>2</comment_count>
      <attachid>432508</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-29 12:05:15 -0700</bug_when>
    <thetext>Created attachment 432508
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773494</commentid>
    <comment_count>3</comment_count>
      <attachid>432511</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-06-29 12:39:11 -0700</bug_when>
    <thetext>Created attachment 432511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773548</commentid>
    <comment_count>4</comment_count>
      <attachid>432511</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2021-06-29 14:30:27 -0700</bug_when>
    <thetext>Comment on attachment 432511
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1773572</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-06-29 15:04:49 -0700</bug_when>
    <thetext>Committed r279389 (239254@main): &lt;https://commits.webkit.org/239254@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 432511.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432496</attachid>
            <date>2021-06-29 10:33:03 -0700</date>
            <delta_ts>2021-06-29 12:05:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227490-20210629103302.patch</filename>
            <type>text/plain</type>
            <size>334027</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5Mzc0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmJlYTU5YTc1YzY3MzEyYWE2N2Ji
YTYzODUzYWVkYjIxNDk0NTI1Yy4uNzFlNDFkNWFiNTI1YzU3YWRiZGQyZWY2OTVmZjA3ZGUzMGMy
MzcxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA2LTI5ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIHNlcnZpY2Utd29ya2VyIFdQVCB0ZXN0
cyBmcm9tIHVwc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjc0OTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogdGVzdHMtb3B0aW9ucy5qc29u
OgorCiAyMDIxLTA2LTI5ICBZb3NoaWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FA
c29ueS5jb20+CiAKICAgICAgICAgUC0zODQgRUMgcHVibGljIEpXSyBrZXkgaW4gbGF5b3V0IHRl
c3RzIGlzIHdyb25nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA3NTlmZmNmYTll
ZmJiMmM5ZjY3ZjU4ZjQ0ZTM2MDIzNDI1ODAyMDU5Li43NjYzYTZmMzFhYzc1Njc5YTEyZGNhMDY2
ZDU0YmQyM2EzY2MyY2I3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAyMS0wNi0yOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisg
ICAgICAgIFJlc3luYyBzZXJ2aWNlLXdvcmtlciBXUFQgdGVzdHMgZnJvbSB1cHN0cmVhbQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NDkwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzeW5jIHNlcnZp
Y2Utd29ya2VyIFdQVCB0ZXN0cyBmcm9tIHVwc3RyZWFtIGEzODYxMmYzOWU3NzUyYzM1MzIwOC4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvKjogVXBkYXRl
ZC4KKwogMjAyMS0wNi0yOSAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+
CiAKICAgICAgICAgQ1NTIHNjcm9sbCBzbmFwIHNob3VsZCBhbGxvdyBzY3JvbGxpbmcgdG8gdGhl
IG1pZGRsZSBvZiBzbmFwIGFyZWFzIHRoYXQgb3ZlcmZsb3cgdGhlIHNuYXBwb3J0CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCAyOWY0NDdhZjI2NGEzNGQwYmI1OTFjZTJmMDAzODgwMWJmYzE2NzI0Li5j
MDhhYzM1Yjg4ZmVkZTgxYTBiZDE5N2U2YmZiNWI0NmEyNmZlYWZjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTMxNiw3ICszMTYsMTAgQEAgd2Via2l0Lm9yZy9iLzIwMTY2NSBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmsKIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL211
bHRpcGFydC1pbWFnZS5odHRwcy5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW4tc2FuZGJv
eGVkLWlmcmFtZS1ieS1jc3AtZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtd29ya2VyLXRpbWluZy1mcmFtZS50ZW50YXRpdmUuaHR0cHMuaHRtbCBbIFNr
aXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLmh0bWwgWyBTa2lwIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsaWVudC1uYXZpZ2F0ZS5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXN0ZWQtYmxvYi11
cmwtd29ya2Vycy5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNv
cnMtaW1wb3J0Lmh0dHBzLmh0bWwgWyBTa2lwIF0KIAogIyBUaGVlIHRlc3RzIGFyZSBjcmFzaGlu
ZyBpbiBEZWJ1ZyAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzMx
MCkKIFsgRGVidWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
cmVkZW50aWFscy9hdXRoZW50aWNhdGlvbi1iYXNpYy5hbnkuaHRtbCBbIFNraXAgXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9yZXNvdXJjZXMvdmFyeS5weSBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3Jh
Z2UvcmVzb3VyY2VzL3ZhcnkucHkKaW5kZXggZTdhOTE0ZWNhODI3NjMxYThiYzc4NzgxMTJjNmI2
ZGU4N2U3Y2U5MS4uN2ZkZTFiMTA5NGVkNGNlNDAxOGYxNzY4OGU1NWQzYmUwNmZmZjk5MyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9yZXNvdXJjZXMvdmFyeS5weQorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNo
ZS1zdG9yYWdlL3Jlc291cmNlcy92YXJ5LnB5CkBAIC0xLDUgKzEsMyBAQAotZnJvbSBzaXggaW1w
b3J0IHRleHRfdHlwZQotCiBkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CiAgIGlmIGIiY2xl
YXItdmFyeS12YWx1ZS1vdmVycmlkZS1jb29raWUiIGluIHJlcXVlc3QuR0VUOgogICAgIHJlc3Bv
bnNlLnVuc2V0X2Nvb2tpZShiInZhcnktdmFsdWUtb3ZlcnJpZGUiKQpAQCAtMTUsOSArMTMsOSBA
QCBkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CiAgICMgZm9yIHRoZSBWQVJZIGhlYWRlciBu
byBtYXR0ZXIgd2hhdCB0aGUgcXVlcnkgc3RyaW5nIGlzIHNldCB0by4gIFRoaXMKICAgIyBvdmVy
cmlkZSBpcyBuZWNlc3NhcnkgdG8gdGVzdCB0aGUgY2FzZSB3aGVuIHR3byBVUkxzIGFyZSBpZGVu
dGljYWwKICAgIyAoaW5jbHVkaW5nIHF1ZXJ5KSwgYnV0IGRpZmZlciBieSBWQVJZIGhlYWRlci4K
LSAgY29va2llX3ZhcnkgPSByZXF1ZXN0LmNvb2tpZXMuZ2V0KGIidmFyeS12YWx1ZS1vdmVycmlk
ZSIpOworICBjb29raWVfdmFyeSA9IHJlcXVlc3QuY29va2llcy5nZXQoYiJ2YXJ5LXZhbHVlLW92
ZXJyaWRlIikKICAgaWYgY29va2llX3Zhcnk6Ci0gICAgcmVzcG9uc2UuaGVhZGVycy5zZXQoYiJ2
YXJ5IiwgdGV4dF90eXBlKGNvb2tpZV92YXJ5KSkKKyAgICByZXNwb25zZS5oZWFkZXJzLnNldChi
InZhcnkiLCBzdHIoY29va2llX3ZhcnkpKQogICBlbHNlOgogICAgICMgSWYgdGhlcmUgaXMgbm8g
Y29va2llLCB0aGVuIHVzZSB0aGUgcXVlcnkgc3RyaW5nIHZhbHVlLCBpZiBwcmVzZW50LgogICAg
IHF1ZXJ5X3ZhcnkgPSByZXF1ZXN0LkdFVC5maXJzdChiInZhcnkiLCBkZWZhdWx0PWIiIikKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3RzL2NhY2hlLWFkZC5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3RzL2NhY2hlLWFkZC5qcwppbmRleCBmMTYxNzEwOWNm
YTEzODVhMmVhYjhkMzg5ZTE5ZTk4ZmYwMDk3MGY3Li42MmI0NGM3ODgwMTY4YjU3NjI3ODVlZDlm
NzVjMmRmYTE2N2Y5NDAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0
cy9jYWNoZS1hZGQuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUt
YWRkLmpzCkBAIC0xLDggKzEsMTEgQEAKIGlmIChzZWxmLmltcG9ydFNjcmlwdHMpIHsKICAgICBp
bXBvcnRTY3JpcHRzKCcvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzJyk7CisgICAgaW1wb3J0U2Ny
aXB0cygnL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcycpOwogICAgIGltcG9ydFNjcmlwdHMo
Jy4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuanMnKTsKIH0KIAorY29uc3QgeyBSRU1PVEVfSE9T
VCB9ID0gZ2V0X2hvc3RfaW5mbygpOworCiBjYWNoZV90ZXN0KGZ1bmN0aW9uKGNhY2hlLCB0ZXN0
KSB7CiAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKICAgICAgIHRlc3QsCkBAIC0xMDQs
NiArMTA3LDIxIEBAIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUsIHRlc3QpIHsKICAgICAgICdD
YWNoZS5hZGRBbGwgc2hvdWxkIHJlamVjdCB3aXRoIFR5cGVFcnJvciBpZiBhbnkgcmVxdWVzdCBm
YWlscycpOwogICB9LCAnQ2FjaGUuYWRkQWxsIHdpdGggMjA2IHJlc3BvbnNlJyk7CiAKK2NhY2hl
X3Rlc3QoZnVuY3Rpb24oY2FjaGUsIHRlc3QpIHsKKyAgICB2YXIgdXJscyA9IFsnLi4vcmVzb3Vy
Y2VzL2ZldGNoLXN0YXR1cy5weT9zdGF0dXM9MjA2JywKKyAgICAgICAgICAgICAgICAnLi4vcmVz
b3VyY2VzL2ZldGNoLXN0YXR1cy5weT9zdGF0dXM9MjAwJ107CisgICAgdmFyIHJlcXVlc3RzID0g
dXJscy5tYXAoZnVuY3Rpb24odXJsKSB7CisgICAgICAgIHZhciBjcm9zc19vcmlnaW5fdXJsID0g
bmV3IFVSTCh1cmwsIGxvY2F0aW9uLmhyZWYpOworICAgICAgICBjcm9zc19vcmlnaW5fdXJsLmhv
c3RuYW1lID0gUkVNT1RFX0hPU1Q7CisgICAgICAgIHJldHVybiBuZXcgUmVxdWVzdChjcm9zc19v
cmlnaW5fdXJsLmhyZWYsIHsgbW9kZTogJ25vLWNvcnMnIH0pOworICAgICAgfSk7CisgICAgcmV0
dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgIHRlc3QsCisgICAgICBUeXBlRXJyb3IsCisg
ICAgICBjYWNoZS5hZGRBbGwocmVxdWVzdHMpLAorICAgICAgJ0NhY2hlLmFkZEFsbCBzaG91bGQg
cmVqZWN0IHdpdGggVHlwZUVycm9yIGlmIGFueSByZXF1ZXN0IGZhaWxzJyk7CisgIH0sICdDYWNo
ZS5hZGRBbGwgd2l0aCBvcGFxdWUtZmlsdGVyZWQgMjA2IHJlc3BvbnNlJyk7CisKIGNhY2hlX3Rl
c3QoZnVuY3Rpb24oY2FjaGUsIHRlc3QpIHsKICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pz
KAogICAgICAgdGVzdCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3Rz
L2NhY2hlLW1hdGNoLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtbWF0
Y2guanMKaW5kZXggOGJmN2ZkYTMwOTY3ZmJiNGVkMjUzMjVkNDllMGNkOTlmYzE2ZGY1NS4uNjBj
MGRkMGEwMmYyMGUxZDRmYTdkMzBhNGQwYTU5Njg1MDdhY2EwMyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2Fj
aGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtbWF0Y2guanMKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtbWF0Y2guanMKQEAgLTM4MSw2ICszODEsNyBAQCBjYWNo
ZV90ZXN0KGFzeW5jIChjYWNoZSkgPT4gewogY2FjaGVfdGVzdChhc3luYyAoY2FjaGUpID0+IHsK
ICAgICBjb25zdCB1cmwgPSAnL2R1bW15JzsKICAgICBjb25zdCBvcmlnaW5hbF90eXBlID0gJ3Rl
eHQvaHRtbCc7CisgICAgY29uc3Qgb3ZlcnJpZGVfdHlwZSA9ICd0ZXh0L3BsYWluJzsKICAgICBj
b25zdCBpbml0X3dpdGhfaGVhZGVycyA9IHsKICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgJ2Nv
bnRlbnQtdHlwZSc6IG9yaWdpbmFsX3R5cGUKQEAgLTM5NCwyNCArMzk1LDIyIEBAIGNhY2hlX3Rl
c3QoYXN5bmMgKGNhY2hlKSA9PiB7CiAgICAgYXNzZXJ0X3RydWUob3JpZ2luYWxfcmVzcG9uc2Vf
dHlwZS5pbmNsdWRlcyhvcmlnaW5hbF90eXBlKSwKICAgICAgICAgICAgICAgICAnb3JpZ2luYWwg
cmVzcG9uc2Ugc2hvdWxkIGluY2x1ZGUgdGhlIGV4cGVjdGVkIG1pbWUgdHlwZScpOwogCi0gICAg
Ly8gVmVyaWZ5IG92ZXJ3cml0aW5nIHRoZSBjb250ZW50LXR5cGUgaGVhZGVyIGRvZXMgbm90IGNo
YW5nZSB0aGUgbWltZQotICAgIC8vIHR5cGUuICBJdCBzaG91bGQgYmUgZml4ZWQgYXQgUmVzcG9u
c2UgY29uc3RydWN0aW9uIHRpbWUuCisgICAgLy8gVmVyaWZ5IG92ZXJ3cml0aW5nIHRoZSBjb250
ZW50LXR5cGUgaGVhZGVyIGNoYW5nZXMgdGhlIG1pbWUgdHlwZS4KICAgICBjb25zdCBvdmVyd3Jp
dHRlbl9yZXNwb25zZSA9IG5ldyBSZXNwb25zZSgnaGVsbG8gd29ybGQnLCBpbml0X3dpdGhfaGVh
ZGVycyk7Ci0gICAgb3ZlcndyaXR0ZW5fcmVzcG9uc2UuaGVhZGVycy5zZXQoJ2NvbnRlbnQtdHlw
ZScsICd0ZXh0L3BsYWluJyk7CisgICAgb3ZlcndyaXR0ZW5fcmVzcG9uc2UuaGVhZGVycy5zZXQo
J2NvbnRlbnQtdHlwZScsIG92ZXJyaWRlX3R5cGUpOwogICAgIGNvbnN0IG92ZXJ3cml0dGVuX3Jl
c3BvbnNlX3R5cGUgPSAoYXdhaXQgb3ZlcndyaXR0ZW5fcmVzcG9uc2UuYmxvYigpKS50eXBlOwot
ICAgIGFzc2VydF9lcXVhbHMob3ZlcndyaXR0ZW5fcmVzcG9uc2VfdHlwZSwgb3JpZ2luYWxfcmVz
cG9uc2VfdHlwZSwKLSAgICAgICAgICAgICAgICAgICdvcmlnaW5hbCBhbmQgb3ZlcndyaXR0ZW4g
cmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2gnKTsKKyAgICBhc3NlcnRfZXF1YWxzKG92
ZXJ3cml0dGVuX3Jlc3BvbnNlX3R5cGUsIG92ZXJyaWRlX3R5cGUsCisgICAgICAgICAgICAgICAg
ICAnbWltZSB0eXBlIGNhbiBiZSBvdmVycmlkZGVuJyk7CiAKICAgICAvLyBWZXJpZnkgdGhlIFJl
c3BvbnNlIHJlYWQgZnJvbSBDYWNoZSB1c2VzIHRoZSBvcmlnaW5hbCBtaW1lIHR5cGUKICAgICAv
LyBjb21wdXRlZCB3aGVuIGl0IHdhcyBmaXJzdCBjb25zdHJ1Y3RlZC4KICAgICBjb25zdCB0bXAg
PSBuZXcgUmVzcG9uc2UoJ2hlbGxvIHdvcmxkJywgaW5pdF93aXRoX2hlYWRlcnMpOwotICAgIHRt
cC5oZWFkZXJzLnNldCgnY29udGVudC10eXBlJywgJ3RleHQvcGxhaW4nKTsKKyAgICB0bXAuaGVh
ZGVycy5zZXQoJ2NvbnRlbnQtdHlwZScsIG92ZXJyaWRlX3R5cGUpOwogICAgIGF3YWl0IGNhY2hl
LnB1dCh1cmwsIHRtcCk7CiAgICAgY29uc3QgY2FjaGVfcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5t
YXRjaCh1cmwpOwogICAgIGNvbnN0IGNhY2hlX21pbWVfdHlwZSA9IChhd2FpdCBjYWNoZV9yZXNw
b25zZS5ibG9iKCkpLnR5cGU7Ci0gICAgYXNzZXJ0X2VxdWFscyhjYWNoZV9taW1lX3R5cGUsIG9y
aWdpbmFsX3Jlc3BvbnNlX3R5cGUsCi0gICAgICAgICAgICAgICAgICAnb3JpZ2luYWwgYW5kIGNh
Y2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzICcgKwotICAgICAgICAgICAgICAg
ICAgJ3Nob3VsZCBtYXRjaCcpOwotICB9LCAnTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQg
cmVzcG9uc2UgY29uc3RydWN0aW9uLicpOworICAgIGFzc2VydF9lcXVhbHMoY2FjaGVfbWltZV90
eXBlLCBvdmVycmlkZV90eXBlLAorICAgICAgICAgICAgICAgICAgJ292ZXJ3cml0dGVuIGFuZCBj
YWNoZWQgcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2gnKTsKKyAgfSwgJ01JTUUgdHlw
ZSBzaG91bGQgcmVmbGVjdCBDb250ZW50LVR5cGUgaGVhZGVycyBvZiByZXNwb25zZS4nKTsKIAog
ZG9uZSgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUt
cHV0LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtcHV0LmpzCmluZGV4
IDQ0YmE1NjVkODZjYTA1ZWRiZjYyNTU5ZjI2MmE2NGUwZGE3NWY5NmIuLmI0NTkxMGEzYjhiYTA4
OWUxNzI0ZWZhOGI5ZThhOGQ2NzljNTkzMjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uv
c2NyaXB0LXRlc3RzL2NhY2hlLXB1dC5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10
ZXN0cy9jYWNoZS1wdXQuanMKQEAgLTEsMTAgKzEsMTIgQEAKIGlmIChzZWxmLmltcG9ydFNjcmlw
dHMpIHsKICAgICBpbXBvcnRTY3JpcHRzKCcvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzJyk7Cisg
ICAgaW1wb3J0U2NyaXB0cygnL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcycpOwogICAgIGlt
cG9ydFNjcmlwdHMoJy4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuanMnKTsKIH0KIAogdmFyIHRl
c3RfdXJsID0gJ2h0dHBzOi8vZXhhbXBsZS5jb20vZm9vJzsKIHZhciB0ZXN0X2JvZHkgPSAnSGVs
bG8gd29ybGQhJzsKK2NvbnN0IHsgUkVNT1RFX0hPU1QgfSA9IGdldF9ob3N0X2luZm8oKTsKIAog
Y2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSkgewogICAgIHZhciByZXF1ZXN0ID0gbmV3IFJlcXVl
c3QodGVzdF91cmwpOwpAQCAtMTI5LDYgKzEzMSwyMyBAQCBjYWNoZV90ZXN0KGZ1bmN0aW9uKGNh
Y2hlLCB0ZXN0KSB7CiAgICAgICAgIH0pOwogICB9LCAnQ2FjaGUucHV0IHdpdGggSFRUUCAyMDYg
cmVzcG9uc2UnKTsKIAorY2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSwgdGVzdCkgeworICAgIHZh
ciB0ZXN0X3VybCA9IG5ldyBVUkwoJy4uL3Jlc291cmNlcy9mZXRjaC1zdGF0dXMucHk/c3RhdHVz
PTIwNicsIGxvY2F0aW9uLmhyZWYpOworICAgIHRlc3RfdXJsLmhvc3RuYW1lID0gUkVNT1RFX0hP
U1Q7CisgICAgdmFyIHJlcXVlc3QgPSBuZXcgUmVxdWVzdCh0ZXN0X3VybC5ocmVmLCB7IG1vZGU6
ICduby1jb3JzJyB9KTsKKyAgICB2YXIgcmVzcG9uc2U7CisgICAgcmV0dXJuIGZldGNoKHJlcXVl
c3QpCisgICAgICAudGhlbihmdW5jdGlvbihmZXRjaF9yZXN1bHQpIHsKKyAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGZldGNoX3Jlc3VsdC50eXBlLCAnb3BhcXVlJywKKyAgICAgICAgICAgICAgJ1Rl
c3QgZnJhbWV3b3JrIGVycm9yOiBUaGUgcmVzcG9uc2UgdHlwZSBzaG91bGQgYmUgb3BhcXVlLicp
OworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZmV0Y2hfcmVzdWx0LnN0YXR1cywgMCwKKyAgICAg
ICAgICAgICAgJ1Rlc3QgZnJhbWV3b3JrIGVycm9yOiBUaGUgc3RhdHVzIGNvZGUgc2hvdWxkIGJl
IDAgZm9yIGFuICcgKworICAgICAgICAgICAgICAnIG9wYXF1ZS1maWx0ZXJlZCByZXNwb25zZS4g
VGhpcyBpcyBhY3R1YWxseSBIVFRQIDIwNi4nKTsKKyAgICAgICAgICByZXNwb25zZSA9IGZldGNo
X3Jlc3VsdC5jbG9uZSgpOworICAgICAgICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNfanModGVz
dCwgVHlwZUVycm9yLCBjYWNoZS5wdXQocmVxdWVzdCwgZmV0Y2hfcmVzdWx0KSk7CisgICAgICAg
IH0pOworICB9LCAnQ2FjaGUucHV0IHdpdGggb3BhcXVlLWZpbHRlcmVkIEhUVFAgMjA2IHJlc3Bv
bnNlJyk7CisKIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUpIHsKICAgICB2YXIgdGVzdF91cmwg
PSBuZXcgVVJMKCcuLi9yZXNvdXJjZXMvZmV0Y2gtc3RhdHVzLnB5P3N0YXR1cz01MDAnLCBsb2Nh
dGlvbi5ocmVmKS5ocmVmOwogICAgIHZhciByZXF1ZXN0ID0gbmV3IFJlcXVlc3QodGVzdF91cmwp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLWFkZC5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
YWRkLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4YjgzNTdhOGMyZDA5ZTIzNzg3ZDMzNjVmYWM5
NTUzMTM5ODUzZTQ3Li4yMjE3MWM4NTRlN2E3NzE2NTRlZDlkNTg2Zjc5NWE2OTE4ZTViYzhmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtYWRkLmh0dHBz
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
YWRkLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDcgQEAgUEFTUyBDYWNoZS5hZGQgY2Fs
bGVkIHR3aWNlIHdpdGggdGhlIHNhbWUgUmVxdWVzdCBvYmplY3QKIFBBU1MgQ2FjaGUuYWRkIHdp
dGggcmVxdWVzdCB3aXRoIG51bGwgYm9keSAobm90IGNvbnN1bWVkKQogUEFTUyBDYWNoZS5hZGQg
d2l0aCAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUuYWRkQWxsIHdpdGggMjA2IHJlc3BvbnNlCitQ
QVNTIENhY2hlLmFkZEFsbCB3aXRoIG9wYXF1ZS1maWx0ZXJlZCAyMDYgcmVzcG9uc2UKIFBBU1Mg
Q2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMgaW4gYSBzdGF0dXMgb2YgNDA0CiBQ
QVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3QgdGhhdCByZXN1bHRzIGluIGEgc3RhdHVzIG9mIDUw
MAogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCBubyBhcmd1bWVudHMKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2Nh
Y2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0
ZWQudHh0CmluZGV4IGI5YTFhNWE2ZjgyMDgxZGQzOWM2OGU5N2NiMDdiNzYxZTZmZTVmM2IuLjg1
YWQ0ODZkOWZkOWE1ZWM5NzExNGY5MjI4MDM2MmFhOTk4NGI2OWMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2Nh
Y2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMjMsNSArMjMsNSBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3
b3JrIGVycm9yIFJlc3BvbnNlCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0
aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LgogUEFTUyBjb3JzLWV4cG9zZWQg
aGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LgogUEFTUyBNSU1FIHR5cGUgc2hvdWxk
IGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4KLUZBSUwgTUlNRSB0eXBlIHNo
b3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBv
cmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxk
IG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCitGQUlMIE1J
TUUgdHlwZSBzaG91bGQgcmVmbGVjdCBDb250ZW50LVR5cGUgaGVhZGVycyBvZiByZXNwb25zZS4g
YXNzZXJ0X2VxdWFsczogbWltZSB0eXBlIGNhbiBiZSBvdmVycmlkZGVuIGV4cGVjdGVkICJ0ZXh0
L3BsYWluIiBidXQgZ290ICJ0ZXh0L2h0bWwiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3Jh
Z2Uvc2VydmljZXdvcmtlci9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUt
c3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXgg
ZWMxNmQ1N2YzNWY0YjZkMGNkNDc1NTdlM2UxYjM5YjY0NDM4NTc4ZS4uMWI2MzQ0OGU2Njg3MGJh
MmQ5OTdlOGJjZDBiYjBkNWI3NTE1MDNlYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9z
ZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUt
c3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTgs
NiArOCw3IEBAIFBBU1MgQ2FjaGUucHV0IHdpdGggYSBSZXNwb25zZSBjb250YWluaW5nIGFuIGVt
cHR5IFVSTAogUEFTUyBDYWNoZS5wdXQgd2l0aCBhbiBlbXB0eSByZXNwb25zZSBib2R5CiBQQVNT
IENhY2hlLnB1dCB3aXRoIHN5bnRoZXRpYyAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUucHV0IHdp
dGggSFRUUCAyMDYgcmVzcG9uc2UKK0ZBSUwgQ2FjaGUucHV0IHdpdGggb3BhcXVlLWZpbHRlcmVk
IEhUVFAgMjA2IHJlc3BvbnNlIGFzc2VydF91bnJlYWNoZWQ6IFNob3VsZCBoYXZlIHJlamVjdGVk
OiB1bmRlZmluZWQgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCiBQQVNTIENhY2hlLnB1dCB3aXRo
IEhUVFAgNTAwIHJlc3BvbnNlCiBQQVNTIENhY2hlLnB1dCBjYWxsZWQgdHdpY2Ugd2l0aCBtYXRj
aGluZyBSZXF1ZXN0cyBhbmQgZGlmZmVyZW50IFJlc3BvbnNlcwogUEFTUyBDYWNoZS5wdXQgY2Fs
bGVkIHR3aWNlIHdpdGggcmVxdWVzdCBVUkxzIHRoYXQgZGlmZmVyIG9ubHkgYnkgYSBmcmFnbWVu
dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtYWRkLmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRwcy1leHBl
Y3RlZC50eHQKaW5kZXggNGM0NzhlMzEyMzFjYTc4M2E0MjFiYjE1ZGVmOTgwMjAwYjBiZGI2Yi4u
NWY4NWI0MGM2OTI1M2ZhNTc4MTJiYmQ2NDBmMWY4MzFjZTU0YWJmMiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
Y2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC04
LDYgKzgsNyBAQCBQQVNTIENhY2hlLmFkZCBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBSZXF1
ZXN0IG9iamVjdAogUEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0IHdpdGggbnVsbCBib2R5IChu
b3QgY29uc3VtZWQpCiBQQVNTIENhY2hlLmFkZCB3aXRoIDIwNiByZXNwb25zZQogUEFTUyBDYWNo
ZS5hZGRBbGwgd2l0aCAyMDYgcmVzcG9uc2UKK1BBU1MgQ2FjaGUuYWRkQWxsIHdpdGggb3BhcXVl
LWZpbHRlcmVkIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0IHRoYXQg
cmVzdWx0cyBpbiBhIHN0YXR1cyBvZiA0MDQKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0
aGF0IHJlc3VsdHMgaW4gYSBzdGF0dXMgb2YgNTAwCiBQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG5v
IGFyZ3VtZW50cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtYWRk
Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMuaHRt
bAppbmRleCA4ZGZiNzg2Y2YzNTY3NzdjZDlkZTI4NmNjZDM1MzRjOTVlYTAxMTZjLi5iNWE2NGM2
YzM2OWI1MDI4YjRhYmExMzk2NzM4ZGM4OTJiYzYyZDNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdl
L3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMuaHRtbApAQCAtNCw1ICs0LDYgQEAKIDxtZXRhIG5hbWU9
InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5z
dWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jYWNoZS1hZGQuanMi
Pjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0
Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0
Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDBjZjJhYzhhOWI1YjEzMDVhMGY0MWVlOTk5OTMx
MDI2Mzk3OTc2NzIuLjQ1NmE5NjMzZDA5ZGNlN2RhY2IzYWIyMTQ4MjFhOTgzYWQ2N2M2MDYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1l
eHBlY3RlZC50eHQKQEAgLTIyLDUgKzIyLDUgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0
d29yayBlcnJvciBSZXNwb25zZQogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMg
dGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4KIFBBU1MgY29ycy1leHBvc2Vk
IGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4KIFBBU1MgTUlNRSB0eXBlIHNob3Vs
ZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuCi1GQUlMIE1JTUUgdHlwZSBz
aG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczog
b3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3Vs
ZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgorRkFJTCBN
SU1FIHR5cGUgc2hvdWxkIHJlZmxlY3QgQ29udGVudC1UeXBlIGhlYWRlcnMgb2YgcmVzcG9uc2Uu
IGFzc2VydF9lcXVhbHM6IG1pbWUgdHlwZSBjYW4gYmUgb3ZlcnJpZGRlbiBleHBlY3RlZCAidGV4
dC9wbGFpbiIgYnV0IGdvdCAidGV4dC9odG1sIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9y
YWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93aW5kb3cvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA3NGNiNzc2NmY0NTRi
M2M5OGU5NDRiNDI5YmM0YmQ5MmIzN2Q3ZTMxLi41YzBjZDlmNWZmODg5OWVlZDMyMWYxOGQ5MmIw
NGU1NjdkOWYxZjE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1w
dXQuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hl
LXB1dC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTcsNiArNyw3IEBAIFBBU1MgQ2FjaGUucHV0IHdp
dGggYSBSZXNwb25zZSBjb250YWluaW5nIGFuIGVtcHR5IFVSTAogUEFTUyBDYWNoZS5wdXQgd2l0
aCBhbiBlbXB0eSByZXNwb25zZSBib2R5CiBQQVNTIENhY2hlLnB1dCB3aXRoIHN5bnRoZXRpYyAy
MDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUucHV0IHdpdGggSFRUUCAyMDYgcmVzcG9uc2UKK0ZBSUwg
Q2FjaGUucHV0IHdpdGggb3BhcXVlLWZpbHRlcmVkIEhUVFAgMjA2IHJlc3BvbnNlIGFzc2VydF91
bnJlYWNoZWQ6IFNob3VsZCBoYXZlIHJlamVjdGVkOiB1bmRlZmluZWQgUmVhY2hlZCB1bnJlYWNo
YWJsZSBjb2RlCiBQQVNTIENhY2hlLnB1dCB3aXRoIEhUVFAgNTAwIHJlc3BvbnNlCiBQQVNTIENh
Y2hlLnB1dCBjYWxsZWQgdHdpY2Ugd2l0aCBtYXRjaGluZyBSZXF1ZXN0cyBhbmQgZGlmZmVyZW50
IFJlc3BvbnNlcwogUEFTUyBDYWNoZS5wdXQgY2FsbGVkIHR3aWNlIHdpdGggcmVxdWVzdCBVUkxz
IHRoYXQgZGlmZmVyIG9ubHkgYnkgYSBmcmFnbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS93aW5kb3cvY2FjaGUtcHV0Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRv
dy9jYWNoZS1wdXQuaHR0cHMuaHRtbAppbmRleCAxZWUxNGJkZDEyNGVlZmIxNGYwN2IxNDhjNTM5
MGM4MDBhZDIwODkwLi45NjQxYzM0NzA1MTg2MzZmMWQyYWZiYmM2OTJmNzIxZjIwNzkwNzM5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMuaHRtbApAQCAtNCw2
ICs0LDcgQEAKIDxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgogPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9j
b21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy90ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3Njcmlw
dC10ZXN0cy9jYWNoZS1wdXQuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9j
YWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDRj
NDc4ZTMxMjMxY2E3ODNhNDIxYmIxNWRlZjk4MDIwMGIwYmRiNmIuLjVmODViNDBjNjkyNTNmYTU3
ODEyYmJkNjQwZjFmODMxY2U1NGFiZjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29y
a2VyL2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93
b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtOCw2ICs4LDcgQEAgUEFTUyBD
YWNoZS5hZGQgY2FsbGVkIHR3aWNlIHdpdGggdGhlIHNhbWUgUmVxdWVzdCBvYmplY3QKIFBBU1Mg
Q2FjaGUuYWRkIHdpdGggcmVxdWVzdCB3aXRoIG51bGwgYm9keSAobm90IGNvbnN1bWVkKQogUEFT
UyBDYWNoZS5hZGQgd2l0aCAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUuYWRkQWxsIHdpdGggMjA2
IHJlc3BvbnNlCitQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG9wYXF1ZS1maWx0ZXJlZCAyMDYgcmVz
cG9uc2UKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMgaW4gYSBzdGF0
dXMgb2YgNDA0CiBQQVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3QgdGhhdCByZXN1bHRzIGluIGEg
c3RhdHVzIG9mIDUwMAogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCBubyBhcmd1bWVudHMKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dAppbmRleCAwY2YyYWM4YTliNWIxMzA1YTBmNDFlZTk5OTkzMTAyNjM5Nzk3NjcyLi40NTZh
OTYzM2QwOWRjZTdkYWNiM2FiMjE0ODIxYTk4M2FkNjdjNjA2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNo
ZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
Y2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0y
Miw1ICsyMiw1IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3IgUmVzcG9u
c2UKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2FuIGJlIGNsb25l
ZCBhbmQgcmVhZCBjb3JyZWN0bHkuCiBQQVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJl
IHN0b3JlZCBjb3JyZWN0bHkuCiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29u
dGVudC1oZWFkZXIgY29ycmVjdGx5LgotRkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3plbiBh
dCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNo
ZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQg
InRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKK0ZBSUwgTUlNRSB0eXBlIHNob3VsZCBy
ZWZsZWN0IENvbnRlbnQtVHlwZSBoZWFkZXJzIG9mIHJlc3BvbnNlLiBhc3NlcnRfZXF1YWxzOiBt
aW1lIHR5cGUgY2FuIGJlIG92ZXJyaWRkZW4gZXhwZWN0ZWQgInRleHQvcGxhaW4iIGJ1dCBnb3Qg
InRleHQvaHRtbCIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUt
cHV0Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLXB1
dC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggMDNmODcwN2U1MDY3NGY1YjM1YmUxMDY5NTIxNjA3
ZDgxOGJjNDc3Mi4uMTVkMDg1ZWU3MWZlY2ZiOTg5NzhlZTcyOTEyOGFhMzY3OWQ5ODRiNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0
ZWQudHh0CkBAIC03LDYgKzcsNyBAQCBQQVNTIENhY2hlLnB1dCB3aXRoIGEgUmVzcG9uc2UgY29u
dGFpbmluZyBhbiBlbXB0eSBVUkwKIFBBU1MgQ2FjaGUucHV0IHdpdGggYW4gZW1wdHkgcmVzcG9u
c2UgYm9keQogUEFTUyBDYWNoZS5wdXQgd2l0aCBzeW50aGV0aWMgMjA2IHJlc3BvbnNlCiBQQVNT
IENhY2hlLnB1dCB3aXRoIEhUVFAgMjA2IHJlc3BvbnNlCitGQUlMIENhY2hlLnB1dCB3aXRoIG9w
YXF1ZS1maWx0ZXJlZCBIVFRQIDIwNiByZXNwb25zZSBhc3NlcnRfdW5yZWFjaGVkOiBTaG91bGQg
aGF2ZSByZWplY3RlZDogdW5kZWZpbmVkIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQogUEFTUyBD
YWNoZS5wdXQgd2l0aCBIVFRQIDUwMCByZXNwb25zZQogUEFTUyBDYWNoZS5wdXQgY2FsbGVkIHR3
aWNlIHdpdGggbWF0Y2hpbmcgUmVxdWVzdHMgYW5kIGRpZmZlcmVudCBSZXNwb25zZXMKIFBBU1Mg
Q2FjaGUucHV0IGNhbGxlZCB0d2ljZSB3aXRoIHJlcXVlc3QgVVJMcyB0aGF0IGRpZmZlciBvbmx5
IGJ5IGEgZnJhZ21lbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZS9mZXRjaC1vbi10aGUtcmlnaHQtaW50ZXJmYWNlLmh0dHBzLmFueS5qcyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS9mZXRjaC1vbi10aGUt
cmlnaHQtaW50ZXJmYWNlLmh0dHBzLmFueS5qcwppbmRleCBlOThhMDRiNmEwOTM1NzQzYjk5MTk2
MDhjNmIxNDg4Y2E1N2Y4ODM3Li41Y2E1ZjY1NjgwYzk3NTRjOGYyZWQ4MzYxZjZjOTRiYzEzZTY1
YTBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9TZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGUvZmV0Y2gtb24tdGhlLXJpZ2h0LWludGVyZmFjZS5odHRwcy5hbnkuanMKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlL2ZldGNoLW9uLXRoZS1yaWdodC1p
bnRlcmZhY2UuaHR0cHMuYW55LmpzCkBAIC02LDkgKzYsOSBAQCB0ZXN0KGZ1bmN0aW9uKCkgewog
ICAgICAgICAnaW5zdGFuY2Ugc2hvdWxkIG5vdCBoYXZlICJmZXRjaCIgbWV0aG9kIGFzIGl0cyBw
cm9wZXJ0eS4nKTsKICAgICBhc3NlcnRfaW5oZXJpdHMoc2VsZiwgJ2ZldGNoJywgJ1NlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZSBzaG91bGQgJyArCiAgICAgICAgICdpbmhlcml0ICJmZXRjaCIgbWV0
aG9kLicpOwotICAgIGFzc2VydF9vd25fcHJvcGVydHkoc2VsZi5fX3Byb3RvX18uX19wcm90b19f
LCAnZmV0Y2gnLAorICAgIGFzc2VydF9vd25fcHJvcGVydHkoT2JqZWN0LmdldFByb3RvdHlwZU9m
KE9iamVjdC5nZXRQcm90b3R5cGVPZihzZWxmKSksICdmZXRjaCcsCiAgICAgICAgICdXb3JrZXJH
bG9iYWxTY29wZSBzaG91bGQgaGF2ZSAiZmV0Y2giIHByb3BlcnkgaW4gaXRzIHByb3RvdHlwZS4n
KTsKLSAgICBhc3NlcnRfZXF1YWxzKHNlbGYuZmV0Y2gsIHNlbGYuX19wcm90b19fLl9fcHJvdG9f
Xy5mZXRjaCwKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGYuZmV0Y2gsIE9iamVjdC5nZXRQcm90b3R5
cGVPZihPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc2VsZikpLmZldGNoLAogICAgICAgICAnU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmZldGNoIHNob3VsZCBiZSB0aGUgc2FtZSBhcyAnICsKICAgICAg
ICAgJ1dvcmtlckdsb2JhbFNjb3BlLmZldGNoLicpOwogfSwgJ0ZldGNoIG1ldGhvZCBvbiB0aGUg
cmlnaHQgaW50ZXJmYWNlJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9hY3RpdmF0
aW9uLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9hY3RpdmF0aW9uLmh0dHBzLmh0bWwK
aW5kZXggZTZmMTM2ZTZiOGJiNmFlNWM3YWU0ZDQwNTU1YzkwYWJiYzgwZmRlZi4uMjc4NDU0ZDMz
ODNlM2Q3MWEzOTI1NjYzZGZjZmMzNDQ0ZWRkZmY4MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvYWN0aXZhdGlvbi5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2FjdGl2
YXRpb24uaHR0cHMuaHRtbApAQCAtNTAsNyArNTAsNyBAQCBmdW5jdGlvbiBzZXR1cF9hY3RpdmF0
aW9uX3Rlc3QodCwgc2NvcGUsIHdvcmtlcl91cmwpIHsKICAgICAgICAgcmV0dXJuIHdhaXRfZm9y
X3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnaW5zdGFsbGVkJyk7CiAgICAgICB9
KQogICAgIC50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX2FjdGl2YXRpb25f
b25fZHVtbXlfc2NvcGUodCwgc2VsZik7CisgICAgICAgIHJldHVybiB3YWl0X2Zvcl9hY3RpdmF0
aW9uX29uX3NhbXBsZV9zY29wZSh0LCBzZWxmKTsKICAgICAgIH0pCiAgICAgLnRoZW4oKCkgPT4g
ewogICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhyZWdpc3RyYXRpb24ud2FpdGluZywgbnVsbCk7
CkBAIC03MCw3ICs3MCw3IEBAIHByb21pc2VfdGVzdCh0ID0+IHsKICAgICAgICAgICBpZnJhbWUg
PSByZXN1bHQuaWZyYW1lOwogICAgICAgICAgIC8vIEZpbmlzaCB0aGUgaW4tZmxpZ2h0IHJlcXVl
c3QuCiAgICAgICAgICAgcmVnaXN0cmF0aW9uLmFjdGl2ZS5wb3N0TWVzc2FnZSgnZ28nKTsKLSAg
ICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZhdGlvbl9vbl9kdW1teV9zY29wZSh0LCBzZWxm
KTsKKyAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZhdGlvbl9vbl9zYW1wbGVfc2NvcGUo
dCwgc2VsZik7CiAgICAgICAgIH0pCiAgICAgICAudGhlbigoKSA9PiB7CiAgICAgICAgICAgLy8g
VGhlIG5ldyB3b3JrZXIgaXMgc3RpbGwgd2FpdGluZy4gUmVtb3ZlIHRoZSBmcmFtZSBhbmQgaXQg
c2hvdWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS1mZXRjaC5odHRwcy5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xhaW0tZmV0Y2guaHR0cHMuaHRtbAppbmRleCA0MDBi
NTkzYWM5NjE5NDJmNmU5Mjc0YWVlOThiYWMyMjg1NmVhZjIyLi5hZTAwODJkZjA2YmY3OTRkMDI5
OTBhN2MwYjcyMTNlMGQ4MTExNGNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFp
bS1mZXRjaC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLWZldGNoLmh0
dHBzLmh0bWwKQEAgLTEsNTIgKzEsNDYgQEAKIDwhZG9jdHlwZSBodG1sPgogPG1ldGEgY2hhcnNl
dD11dGYtOD4KIDx0aXRsZT48L3RpdGxlPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0i
bG9uZyI+CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0Pgog
PGJvZHk+CiA8c2NyaXB0PgogCi1hc3luYyBmdW5jdGlvbiB0cnlfZmV0Y2goZmV0Y2hfZnVuYywg
cGF0aCkgeworYXN5bmMgZnVuY3Rpb24gdHJ5RmV0Y2goZmV0Y2hGdW5jLCBwYXRoKSB7CiAgIGxl
dCByZXNwb25zZTsKICAgdHJ5IHsKLSAgIHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hfZnVuYyhwYXRo
KTsKKyAgIHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hGdW5jKHBhdGgpOwogICB9IGNhdGNoIChlcnIp
IHsKICAgICB0aHJvdyAoYGZldGNoKCkgdGhyZXc6ICR7ZXJyfWApOwogICB9CiAKLSAgbGV0IHJl
c3BvbnNlX3RleHQ7CisgIGxldCByZXNwb25zZVRleHQ7CiAgIHRyeSB7Ci0gICByZXNwb25zZV90
ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgcmVzcG9uc2VUZXh0ID0gYXdhaXQgcmVz
cG9uc2UudGV4dCgpOwogICB9IGNhdGNoIChlcnIpIHsKICAgIHRocm93IChgdGV4dCgpIHRocmV3
OiAke2Vycn1gKTsKICAgfQogCi0gIHJldHVybiByZXNwb25zZV90ZXh0OworICByZXR1cm4gcmVz
cG9uc2VUZXh0OwogfQogCiBwcm9taXNlX3Rlc3QoYXN5bmMgZnVuY3Rpb24odCkgewotICBsZXQg
ZnJhbWU7CiAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy8nOwogICBjb25zdCBzY3JpcHQgPSAn
cmVzb3VyY2VzL2NsYWltLXdvcmtlci5qcyc7Ci0gIHQuYWRkX2NsZWFudXAoYXN5bmMgKCkgPT4g
ewotICAgIGlmIChmcmFtZSkKLSAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAgIHJldHVybiBzZXJ2
aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKLSAgfSk7Ci0KICAgY29uc3QgcmVzb3Vy
Y2UgPSAnc2ltcGxlLnR4dCc7CiAKICAgLy8gQ3JlYXRlIHRoZSB0ZXN0IGZyYW1lLgotICBhd2Fp
dCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKLSAgZnJhbWUgPSBhd2FpdCB3
aXRoX2lmcmFtZSgncmVzb3VyY2VzL2JsYW5rLmh0bWwnKTsKKyAgY29uc3QgZnJhbWUgPSBhd2Fp
dCB3aXRoX2lmcmFtZSgncmVzb3VyY2VzL2JsYW5rLmh0bWwnKTsKKyAgdC5hZGRfY2xlYW51cCgo
KSA9PiBmcmFtZS5yZW1vdmUoKSk7CiAKICAgLy8gQ2hlY2sgdGhlIGNvbnRyb2xsZXIgYW5kIHRl
c3Qgd2l0aCBmZXRjaC4KICAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmln
YXRvci5jb250cm9sbGVyLCB1bmRlZmluZWQsCiAgICAgICAgICAgICAgICAgJ1Nob3VsZCBoYXZl
IG5vIGNvbnRyb2xsZXIuJyk7CiAgIGxldCByZXNwb25zZTsKICAgdHJ5IHsKLSAgICByZXNwb25z
ZSA9IGF3YWl0IHRyeV9mZXRjaChmcmFtZS5jb250ZW50V2luZG93LmZldGNoLCByZXNvdXJjZSk7
CisgICAgcmVzcG9uc2UgPSBhd2FpdCB0cnlGZXRjaChmcmFtZS5jb250ZW50V2luZG93LmZldGNo
LCByZXNvdXJjZSk7CiAgIH0gY2F0Y2ggKGVycikgewogICAgIGFzc2VydF91bnJlYWNoZWQoYHVu
Y29udHJvbGxlZCBmZXRjaCBmYWlsZWQ6ICR7ZXJyfWApOwogICB9CkBAIC01NCwyNyArNDgsMzcg
QEAgcHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAnZmV0
Y2goKSBzaG91bGQgbm90IGJlIGludGVyY2VwdGVkLicpOwogCiAgIC8vIFJlZ2lzdGVyIGEgc2Vy
dmljZSB3b3JrZXIuCi0gIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IG5hdmlnYXRvci5zZXJ2
aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdCwge3Njb3BlfSk7CisgIGNvbnN0IHJlZ2lzdHJhdGlv
biA9CisgICAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwg
c2NyaXB0LCBzY29wZSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVn
aXN0ZXIoKSk7CiAgIGNvbnN0IHdvcmtlciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOwogICBh
d2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCB3b3JrZXIsICdhY3RpdmF0ZWQnKTsKIAorICAvLyBSZWdp
c3RlciBhIGNvbnRyb2xsZXJjaGFuZ2UgZXZlbnQgdG8gd2FpdCB1bnRpbCB0aGUgY29udHJvbGxl
ciBpcyB1cGRhdGVkCisgIC8vIGFuZCBjaGVjayBpZiB0aGUgZnJhbWUgaXMgY29udHJvbGxlZCBi
eSBhIHNlcnZpY2Ugd29ya2VyLgorICBjb25zdCBjb250cm9sbGVyQ2hhbmdlZCA9IG5ldyBQcm9t
aXNlKChyZXNvbHZlKSA9PiB7CisgICAgZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2Vy
dmljZVdvcmtlci5vbmNvbnRyb2xsZXJjaGFuZ2UgPSAoKSA9PiB7CisgICAgICByZXNvbHZlKGZy
YW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxlcik7Cisg
ICAgfTsKKyAgfSk7CisKICAgLy8gVGVsbCB0aGUgc2VydmljZSB3b3JrZXIgdG8gY2xhaW0gdGhl
IGlmcmFtZS4KLSAgY29uc3Qgc2F3X21lc3NhZ2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4g
eworICBjb25zdCBzYXdNZXNzYWdlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKICAgICBj
b25zdCBjaGFubmVsID0gbmV3IE1lc3NhZ2VDaGFubmVsKCk7CiAgICAgY2hhbm5lbC5wb3J0MS5v
bm1lc3NhZ2UgPSB0LnN0ZXBfZnVuYygoZXZlbnQpID0+IHsKICAgICAgIHJlc29sdmUoZXZlbnQu
ZGF0YSk7CiAgICAgfSk7CiAgICAgd29ya2VyLnBvc3RNZXNzYWdlKHtwb3J0OiBjaGFubmVsLnBv
cnQyfSwgW2NoYW5uZWwucG9ydDJdKTsKICAgfSk7Ci0gIGNvbnN0IGRhdGEgPSBhd2FpdCBzYXdf
bWVzc2FnZTsKKyAgY29uc3QgZGF0YSA9IGF3YWl0IHNhd01lc3NhZ2U7CiAgIGFzc2VydF9lcXVh
bHMoZGF0YSwgJ1BBU1MnLCAnV29ya2VyIGNhbGwgdG8gY2xhaW0oKSBzaG91bGQgZnVsZmlsbC4n
KTsKIAotICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3aXRoIGZldGNoLgotICBj
b25zdCBjb250cm9sbGVyID0gZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdv
cmtlci5jb250cm9sbGVyOworICAvLyBDaGVjayBpZiB0aGUgY29udHJvbGxlciBpcyB1cGRhdGVk
IGFmdGVyIGNsYWltKCkgYW5kIHRlc3Qgd2l0aCBmZXRjaC4KKyAgY29uc3QgY29udHJvbGxlciA9
IGF3YWl0IGNvbnRyb2xsZXJDaGFuZ2VkOwogICBhc3NlcnRfdHJ1ZShjb250cm9sbGVyIGluc3Rh
bmNlb2YgZnJhbWUuY29udGVudFdpbmRvdy5TZXJ2aWNlV29ya2VyLAogICAgICAgICAgICAgICAn
aWZyYW1lIHNob3VsZCBiZSBjb250cm9sbGVkLicpOwogICB0cnkgewotICAgIHJlc3BvbnNlID0g
YXdhaXQgdHJ5X2ZldGNoKGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2gsIHJlc291cmNlKTsKKyAg
ICByZXNwb25zZSA9IGF3YWl0IHRyeUZldGNoKGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2gsIHJl
c291cmNlKTsKICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgYXNzZXJ0X3VucmVhY2hlZChgY29udHJv
bGxlZCBmZXRjaCBmYWlsZWQ6ICR7ZXJyfWApOwogICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA0MTBi
MThhMmM1Njk1Zjc1MGNkM2EzNGE2NGIyOTA2MDMwYTVkN2I2Li42ODE5OWVmNzdjYzVjYWE4YTJj
YjVmMDYyNjFmYzk0MjZmMmMyOTBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFp
bS13b3JrZXItZmV0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNCArMSwxMSBAQAog
CisKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCiBQQVNTIGZldGNo
KCkgaW4gV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNs
YWltZWQuCiBGQUlMIGZldGNoKCkgaW4gbmVzdGVkIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0
ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLiBhc3NlcnRfZXF1YWxzOiBmZXRjaCgpIHNo
b3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuIGV4cGVjdGVkICJhIHNpbXBsZSB0ZXh0IGZpbGVcbiIg
YnV0IGdvdCAiRmFpbDogdW5kZWZpbmVkIgorUEFTUyBmZXRjaCgpIGluIGJsb2IgVVJMIFdvcmtl
ciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLgorVElN
RU9VVCBmZXRjaCgpIGluIG5lc3RlZCBibG9iIFVSTCBXb3JrZXIgY3JlYXRlZCBmcm9tIGEgYmxv
YiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNs
YWltZWQuIFRlc3QgdGltZWQgb3V0CitOT1RSVU4gZmV0Y2goKSBpbiBuZXN0ZWQgV29ya2VyIGNy
ZWF0ZWQgZnJvbSBhIGJsb2IgVVJMIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIg
dGhlIGNsaWVudCBpcyBjbGFpbWVkLgorTk9UUlVOIGZldGNoKCkgaW4gbmVzdGVkIGJsb2IgVVJM
IFdvcmtlciBjcmVhdGVkIGZyb20gYSBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVy
IHRoZSBjbGllbnQgaXMgY2xhaW1lZC4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
Y2xhaW0td29ya2VyLWZldGNoLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13
b3JrZXItZmV0Y2guaHR0cHMuaHRtbAppbmRleCA0YjQ5YTgxNTJhNDJjOWU0NTEwNDEzOWI0NmI5
ZmE1Njc2MmRlNmJiLi43Y2IyNmM3NDJiOTdkM2Q3NjhlMDFlYzA5YWRiMWNlZWNhOTlkYzg2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMuaHRtbApA
QCAtNyw3MyArNyw3NiBAQAogPGJvZHk+CiA8c2NyaXB0PgogCi1wcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgeworcHJvbWlzZV90ZXN0KCh0KSA9PiB7CiAgIHJldHVybiBydW5UZXN0KHQsICdyZXNv
dXJjZXMvY2xhaW0td29ya2VyLWZldGNoLWlmcmFtZS5odG1sJyk7CiB9LCAnZmV0Y2goKSBpbiBX
b3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4n
KTsKIAotcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKK3Byb21pc2VfdGVzdCgodCkgPT4gewog
ICByZXR1cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL2NsYWltLW5lc3RlZC13b3JrZXItZmV0Y2gt
aWZyYW1lLmh0bWwnKTsKIH0sICdmZXRjaCgpIGluIG5lc3RlZCBXb3JrZXIgc2hvdWxkIGJlIGlu
dGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4nKTsKIAotZnVuY3Rpb24gcnVu
VGVzdCh0LCBpZnJhbWVfdXJsKSB7Ci0gIHZhciByZXNvdXJjZSA9ICdzaW1wbGUudHh0JzsKK3By
b21pc2VfdGVzdCgodCkgPT4geworICByZXR1cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL2NsYWlt
LWJsb2ItdXJsLXdvcmtlci1mZXRjaC1pZnJhbWUuaHRtbCcpOworfSwgJ2ZldGNoKCkgaW4gYmxv
YiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNs
YWltZWQuJyk7CiAKLSAgdmFyIGZyYW1lOwotICB2YXIgcmVnaXN0cmF0aW9uOwotICB2YXIgd29y
a2VyOwotICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzLyc7Ci0gIHZhciBzY3JpcHQgPSAncmVzb3Vy
Y2VzL2NsYWltLXdvcmtlci5qcyc7Citwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1
blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sJyk7Cit9LCAn
ZmV0Y2goKSBpbiBuZXN0ZWQgYmxvYiBVUkwgV29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJM
IFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVk
LicpOwogCi0gIHJldHVybiBQcm9taXNlLnJlc29sdmUoKQotICAgIC8vIENyZWF0ZSB0aGUgdGVz
dCBpZnJhbWUgd2l0aCBhIGRlZGljYXRlZCB3b3JrZXIuCi0gICAgLnRoZW4oKCkgPT4gd2l0aF9p
ZnJhbWUoaWZyYW1lX3VybCkpCi0gICAgLnRoZW4oZiA9PiB7Ci0gICAgICB0LmFkZF9jbGVhbnVw
KCgpID0+IGYucmVtb3ZlKCkpOwotICAgICAgZnJhbWUgPSBmOwotICAgIH0pCitwcm9taXNlX3Rl
c3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtd29ya2Vy
LWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRtbCcpOworfSwgJ2ZldGNoKCkgaW4gbmVz
dGVkIFdvcmtlciBjcmVhdGVkIGZyb20gYSBibG9iIFVSTCBXb3JrZXIgc2hvdWxkIGJlIGludGVy
Y2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4nKTsKIAotICAgIC8vIENoZWNrIHRo
ZSBjb250cm9sbGVyIGFuZCB0ZXN0IHdpdGggZmV0Y2ggaW4gdGhlIHdvcmtlci4KLSAgICAudGhl
bigoKSA9PiBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLmNvbnRy
b2xsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAnU2hvdWxkIGhhdmUgbm8gY29udHJvbGxlci4nKSkKLSAg
ICAudGhlbigoKSA9PiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoX2luX3dvcmtlcihyZXNvdXJj
ZSkpCi0gICAgLnRoZW4ocmVzcG9uc2VfdGV4dCA9PiBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlX3Rl
eHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhIHNpbXBsZSB0
ZXh0IGZpbGVcbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdm
ZXRjaCgpIHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuJykpCi0gICAgLy8gUmVnaXN0ZXIgYSBz
ZXJ2aWNlIHdvcmtlci4KLSAgICAudGhlbigoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVy
X2FuZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3BlKSkKLSAgICAudGhlbihyID0+IHsKLSAgICAg
IHQuYWRkX2NsZWFudXAoKCkgPT4gci51bnJlZ2lzdGVyKCkpOwotICAgICAgd29ya2VyID0gci5p
bnN0YWxsaW5nOwotICAgIH0pCi0gICAgLnRoZW4oKCkgPT4gd2FpdF9mb3Jfc3RhdGUodCwgd29y
a2VyLCAnYWN0aXZhdGVkJykpCitwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRl
c3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0ZWQtZnJvbS13b3Jr
ZXIuaHRtbCcpOworfSwgJ2ZldGNoKCkgaW4gbmVzdGVkIGJsb2IgVVJMIFdvcmtlciBjcmVhdGVk
IGZyb20gYSBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMg
Y2xhaW1lZC4nKTsKIAotICAgIC8vIExldCB0aGUgc2VydmljZSB3b3JrZXIgY2xhaW0gdGhlIGlm
cmFtZSBhbmQgdGhlIHdvcmtlci4KLSAgICAudGhlbigoKSA9PiB7Ci0gICAgICB2YXIgY2hhbm5l
bCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOwotICAgICAgdmFyIHNhd19tZXNzYWdlID0gbmV3IFBy
b21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkgewotICAgICAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2Fn
ZSA9IHQuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsKLSAgICAgICAgICBhc3NlcnRfZXF1YWxzKGUu
ZGF0YSwgJ1BBU1MnLAotICAgICAgICAgICAgICAgICAgICAgICAgJ1dvcmtlciBjYWxsIHRvIGNs
YWltKCkgc2hvdWxkIGZ1bGZpbGwuJyk7Ci0gICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICB9
KTsKLSAgICAgIH0pOwotICAgICAgd29ya2VyLnBvc3RNZXNzYWdlKHtwb3J0OiBjaGFubmVsLnBv
cnQyfSwgW2NoYW5uZWwucG9ydDJdKTsKLSAgICAgIHJldHVybiBzYXdfbWVzc2FnZTsKLSAgICB9
KQorYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCh0LCBpZnJhbWVfdXJsKSB7CisgIGNvbnN0IHJlc291
cmNlID0gJ3NpbXBsZS50eHQnOworICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvJzsKKyAgY29u
c3Qgc2NyaXB0ID0gJ3Jlc291cmNlcy9jbGFpbS13b3JrZXIuanMnOwogCi0gICAgLy8gQ2hlY2sg
dGhlIGNvbnRyb2xsZXIgYW5kIHRlc3Qgd2l0aCBmZXRjaCBpbiB0aGUgd29ya2VyLgotICAgIC50
aGVuKCgpID0+IGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuZ2V0
UmVnaXN0cmF0aW9uKHNjb3BlKSkKLSAgICAudGhlbihyID0+IHJlZ2lzdHJhdGlvbiA9IHIpCi0g
ICAgLnRoZW4oKCkgPT4gYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRv
ci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJlZ2lzdHJhdGlvbi5hY3RpdmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICdUZXN0
IGlmcmFtZSBzaG91bGQgYmUgY2xhaW1lZC4nKSkKKyAgLy8gQ3JlYXRlIHRoZSB0ZXN0IGlmcmFt
ZSB3aXRoIGEgZGVkaWNhdGVkIHdvcmtlci4KKyAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lm
cmFtZShpZnJhbWVfdXJsKTsKKyAgdC5hZGRfY2xlYW51cChfID0+IGZyYW1lLnJlbW92ZSgpKTsK
KworICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3aXRoIGZldGNoIGluIHRoZSB3
b3JrZXIuCisgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3IuY29u
dHJvbGxlciwKKyAgICAgICAgICAgICAgICB1bmRlZmluZWQsICdTaG91bGQgaGF2ZSBubyBjb250
cm9sbGVyLicpOworICB7CisgICAgY29uc3QgcmVzcG9uc2VfdGV4dCA9IGF3YWl0IGZyYW1lLmNv
bnRlbnRXaW5kb3cuZmV0Y2hfaW5fd29ya2VyKHJlc291cmNlKTsKKyAgICBhc3NlcnRfZXF1YWxz
KHJlc3BvbnNlX3RleHQsICdhIHNpbXBsZSB0ZXh0IGZpbGVcbicsCisgICAgICAgICAgICAgICAg
ICAnZmV0Y2goKSBzaG91bGQgbm90IGJlIGludGVyY2VwdGVkLicpOworICB9CisKKyAgLy8gUmVn
aXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KKyAgY29uc3QgcmVnID0gYXdhaXQgc2VydmljZV93b3Jr
ZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBzY29wZSk7CisgIHQuYWRkX2Ns
ZWFudXAoXyA9PiByZWcudW5yZWdpc3RlcigpKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwg
cmVnLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICAvLyBMZXQgdGhlIHNlcnZpY2Ugd29y
a2VyIGNsYWltIHRoZSBpZnJhbWUgYW5kIHRoZSB3b3JrZXIuCisgIGNvbnN0IGNoYW5uZWwgPSBu
ZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAgY29uc3Qgc2F3X21lc3NhZ2UgPSBuZXcgUHJvbWlzZShm
dW5jdGlvbihyZXNvbHZlKSB7CisgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSB0LnN0ZXBf
ZnVuYyhmdW5jdGlvbihlKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGUuZGF0YSwgJ1BBU1MnLCAn
V29ya2VyIGNhbGwgdG8gY2xhaW0oKSBzaG91bGQgZnVsZmlsbC4nKTsKKyAgICAgIHJlc29sdmUo
KTsKKyAgICB9KTsKKyAgfSk7CisgIHJlZy5hY3RpdmUucG9zdE1lc3NhZ2Uoe3BvcnQ6IGNoYW5u
ZWwucG9ydDJ9LCBbY2hhbm5lbC5wb3J0Ml0pOworICBhd2FpdCBzYXdfbWVzc2FnZTsKKworICAv
LyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3aXRoIGZldGNoIGluIHRoZSB3b3JrZXIu
CisgIGNvbnN0IHJlZzIgPQorICAgIGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9y
LnNlcnZpY2VXb3JrZXIuZ2V0UmVnaXN0cmF0aW9uKHNjb3BlKTsKKyAgYXNzZXJ0X2VxdWFscyhm
cmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCisg
ICAgICAgICAgICAgICAgcmVnMi5hY3RpdmUsICdUZXN0IGlmcmFtZSBzaG91bGQgYmUgY2xhaW1l
ZC4nKTsKKworICB7CiAgICAgLy8gVE9ETyhob3JvKTogQ2hlY2sgdGhlIHdvcmtlcidzIG5hdmln
YXRvci5zZXZpY2VXb3JrZXIuY29udHJvbGxlci4KLSAgICAudGhlbigoKSA9PiBmcmFtZS5jb250
ZW50V2luZG93LmZldGNoX2luX3dvcmtlcihyZXNvdXJjZSkpCi0gICAgLnRoZW4ocmVzcG9uc2Vf
dGV4dCA9PgotICAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2VfdGV4dCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICdJbnRlcmNlcHRlZCEnLAotICAgICAgICAgICAgICAgICAgICAgICAg
J2ZldGNoKCkgaW4gdGhlIHdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQuJykpOworICAgIGNv
bnN0IHJlc3BvbnNlX3RleHQgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoX2luX3dv
cmtlcihyZXNvdXJjZSk7CisgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZV90ZXh0LCAnSW50ZXJj
ZXB0ZWQhJywKKyAgICAgICAgICAgICAgICAgICdmZXRjaCgpIGluIHRoZSB3b3JrZXIgc2hvdWxk
IGJlIGludGVyY2VwdGVkLicpOworICB9CiB9CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvY2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbAppbmRleCA2MTEyZTM3YzM0ZWU5OTEwOTRl
ZThmY2JlNjIzZTljMWUyNmY2ZTdjLi5mNDBhMDg2MzVjZmQxZTAzNDVhNjQyMjhjY2FiODIzMDI0
MzlmN2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0
cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRt
bApAQCAtMSw1ICsxLDYgQEAKIDwhZG9jdHlwZSBodG1sPgogPG1ldGEgY2hhcnNldD11dGYtOD4K
KzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgogPHRpdGxlPlNlcnZpY2UgV29y
a2VyOiBXaW5kb3dDbGllbnQubmF2aWdhdGU8L3RpdGxlPgogPHNjcmlwdCBzcmM9L3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPS9yZXNvdXJjZXMvdGVzdGhh
cm5lc3NyZXBvcnQuanM+PC9zY3JpcHQ+CkBAIC0zMiwxNTQgKzMzLDc1IEBACiAgICAgfSk7CiAg
IH0KIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB3b3JrZXIgPSAicmVz
b3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOwotICAgIHZhciBzY29wZSA9ICJyZXNv
dXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwotICAgIHZhciBjb250cm9sbGVyLCBm
cmFtZSwgY2xpZW50SWQ7CisgIGFzeW5jIGZ1bmN0aW9uIHdpdGhfY29udHJvbGxlZF9pZnJhbWVf
YW5kX3VybCh0LCBuYW1lLCBmKSB7CisgICAgY29uc3QgU0NSSVBUID0gInJlc291cmNlcy9jbGll
bnQtbmF2aWdhdGUtd29ya2VyLmpzIjsKKyAgICBjb25zdCBTQ09QRSA9ICJyZXNvdXJjZXMvY2xp
ZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwogCi0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3Vu
cmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUpCi0gICAgICAudGhlbihyZWcg
PT4gewotICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxpbmc7Ci0gICAgICAgIHJldHVy
biB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFjdGl2YXRlZCIpOwotICAgICAg
fSkKLSAgICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihm
ID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRjaF90ZXN0c19mcm9tX3dvcmtl
cihjb250cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX21lc3NhZ2UoKQotICAgICAg
fSkKLSAgICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlkKQotICAgICAgLnRoZW4oX19f
ID0+IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVzdF9jbGllbnRfbmF2aWdhdGVf
c3VjY2VzcyIpKQotICAgICAgLnRoZW4oKHtyZXN1bHQsIHVybH0pID0+IHsKLSAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXN1bHQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9zdWNjZXNzIik7Ci0gICAg
ICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAgdXJsLCBuZXcgVVJMKCJyZXNvdXJjZXMvY2xp
ZW50LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKLSAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRp
b24pLnRvU3RyaW5nKCkpOwotICAgICAgICBhc3NlcnRfZXF1YWxzKAotICAgICAgICAgIGZyYW1l
LmNvbnRlbnRXaW5kb3cubG9jYXRpb24uaHJlZiwKLSAgICAgICAgICBuZXcgVVJMKCJyZXNvdXJj
ZXMvY2xpZW50LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKLSAgICAgICAgICAgICAgICAgIGxvY2F0
aW9uKS50b1N0cmluZygpKTsKLSAgICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgICB9KQotICAg
ICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbihfX18gPT4gc2Vy
dmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSkpOwotICB9LCAiRnJhbWUgbG9jYXRpb24g
c2hvdWxkIHVwZGF0ZSBvbiBzdWNjZXNzZnVsIG5hdmlnYXRpb24iKTsKKyAgICAvLyBSZWdpc3Rl
ciBzZXJ2aWNlIHdvcmtlciBhbmQgd2FpdCBmb3IgaXQgdG8gYmVjb21lIGFjdGl2YXRlZAorICAg
IGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5k
X3JlZ2lzdGVyKHQsIFNDUklQVCwgU0NPUEUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVn
aXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgd29ya2VyID0gcmVnaXN0cmF0aW9u
Lmluc3RhbGxpbmc7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgd29ya2VyLCAnYWN0aXZh
dGVkJyk7CisKKyAgICAvLyBDcmVhdGUgY2hpbGQgaWZyYW1lIGFuZCBtYWtlIHN1cmUgd2UgcmVn
aXN0ZXIgYSBsaXN0ZW5lciBmb3IgdGhlIG1lc3NhZ2UKKyAgICAvLyBpdCBzZW5kcyBiZWZvcmUg
aXQncyBjcmVhdGVkCisgICAgY29uc3QgY2xpZW50X2lkX3Byb21pc2UgPSB3YWl0X2Zvcl9tZXNz
YWdlKCk7CisgICAgY29uc3QgaWZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoU0NPUEUpOworICAg
IHQuYWRkX2NsZWFudXAoKCkgPT4gaWZyYW1lLnJlbW92ZSgpKTsKKyAgICBjb25zdCB7IGlkIH0g
PSBhd2FpdCBjbGllbnRfaWRfcHJvbWlzZTsKKworICAgIC8vIFJ1biB0aGUgdGVzdCBpbiB0aGUg
c2VydmljZSB3b3JrZXIgYW5kIGZldGNoIGl0CisgICAgY29uc3QgeyByZXN1bHQsIHVybCB9ID0g
YXdhaXQgcnVuX3Rlc3Qod29ya2VyLCBpZCwgbmFtZSk7CisgICAgZmV0Y2hfdGVzdHNfZnJvbV93
b3JrZXIod29ya2VyKTsKKyAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgbmFtZSk7CisKKyAgICAv
LyBIYW5kIG92ZXIgdGhlIGlmcmFtZSBhbmQgVVJMIGZyb20gdGhlIHNlcnZpY2Ugd29ya2VyIHRv
IHRoZSBjYWxsYmFjaworICAgIGF3YWl0IGYoaWZyYW1lLCB1cmwpOworICB9CiAKICAgcHJvbWlz
ZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgd29ya2VyID0gInJlc291cmNlcy9jbGllbnQt
bmF2aWdhdGUtd29ya2VyLmpzIjsKLSAgICB2YXIgc2NvcGUgPSAicmVzb3VyY2VzL2NsaWVudC1u
YXZpZ2F0ZS1mcmFtZS5odG1sIjsKLSAgICB2YXIgY29udHJvbGxlciwgZnJhbWUsIGNsaWVudElk
OworICAgIHJldHVybiB3aXRoX2NvbnRyb2xsZWRfaWZyYW1lX2FuZF91cmwodCwgJ3Rlc3RfY2xp
ZW50X25hdmlnYXRlX3N1Y2Nlc3MnLCBhc3luYyAoaWZyYW1lLCB1cmwpID0+IHsKKyAgICAgIGFz
c2VydF9lcXVhbHMoCisgICAgICAgIHVybCwgbmV3IFVSTCgicmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZWQtZnJhbWUuaHRtbCIsCisgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24pLnRvU3Ry
aW5nKCkpOworICAgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgaWZyYW1lLmNvbnRlbnRXaW5k
b3cubG9jYXRpb24uaHJlZiwKKyAgICAgICAgbmV3IFVSTCgicmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZWQtZnJhbWUuaHRtbCIsCisgICAgICAgICAgICAgICAgbG9jYXRpb24pLnRvU3RyaW5nKCkp
OworICAgIH0pOworICB9LCAiRnJhbWUgbG9jYXRpb24gc2hvdWxkIHVwZGF0ZSBvbiBzdWNjZXNz
ZnVsIG5hdmlnYXRpb24iKTsKIAotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVy
X2FuZF9yZWdpc3Rlcih0LCB3b3JrZXIsIHNjb3BlKQotICAgICAgLnRoZW4ocmVnID0+IHsKLSAg
ICAgICAgY29udHJvbGxlciA9IHJlZy5pbnN0YWxsaW5nOwotICAgICAgICByZXR1cm4gd2FpdF9m
b3Jfc3RhdGUodCwgcmVnLmluc3RhbGxpbmcsICJhY3RpdmF0ZWQiKTsKLSAgICAgIH0pCi0gICAg
ICAudGhlbihfX18gPT4gd2l0aF9pZnJhbWUoc2NvcGUpKQotICAgICAgLnRoZW4oZiA9PiB7Ci0g
ICAgICAgIGZyYW1lID0gZjsKLSAgICAgICAgZmV0Y2hfdGVzdHNfZnJvbV93b3JrZXIoY29udHJv
bGxlcik7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9tZXNzYWdlKCkKLSAgICAgIH0pCi0gICAg
ICAudGhlbigoe2lkfSkgPT4gY2xpZW50SWQgPSBpZCkKLSAgICAgIC50aGVuKF9fXyA9PiBydW5f
dGVzdChjb250cm9sbGVyLCBjbGllbnRJZCwgInRlc3RfY2xpZW50X25hdmlnYXRlX3JlZGlyZWN0
IikpCi0gICAgICAudGhlbigoe3Jlc3VsdCwgdXJsfSkgPT4gewotICAgICAgICBhc3NlcnRfZXF1
YWxzKHJlc3VsdCwgInRlc3RfY2xpZW50X25hdmlnYXRlX3JlZGlyZWN0Iik7Ci0gICAgICAgIGFz
c2VydF9lcXVhbHModXJsLCAiIik7Ci0gICAgICAgIGFzc2VydF90aHJvd3NfZG9tKCJTZWN1cml0
eUVycm9yIiwgZnVuY3Rpb24oKSB7IHJldHVybiBmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9u
LmhyZWYgfSk7Ci0gICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAgICAgfSkKLSAgICAgIC5jYXRj
aCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4oX19fID0+IHNlcnZpY2Vfd29y
a2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpKTsKKyAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsK
KyAgICByZXR1cm4gd2l0aF9jb250cm9sbGVkX2lmcmFtZV9hbmRfdXJsKHQsICd0ZXN0X2NsaWVu
dF9uYXZpZ2F0ZV9yZWRpcmVjdCcsIGFzeW5jIChpZnJhbWUsIHVybCkgPT4geworICAgICAgYXNz
ZXJ0X2VxdWFscyh1cmwsICIiKTsKKyAgICAgIGFzc2VydF90aHJvd3NfZG9tKCJTZWN1cml0eUVy
cm9yIiwgZnVuY3Rpb24oKSB7IHJldHVybiBpZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5o
cmVmIH0pOworICAgIH0pOwogICB9LCAiRnJhbWUgbG9jYXRpb24gc2hvdWxkIG5vdCBiZSBhY2Nl
c3NpYmxlIGFmdGVyIHJlZGlyZWN0Iik7CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsK
LSAgICB2YXIgd29ya2VyID0gInJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIjsK
LSAgICB2YXIgc2NvcGUgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sIjsK
LSAgICB2YXIgY29udHJvbGxlciwgZnJhbWUsIGNsaWVudElkOwotCi0gICAgcmV0dXJuIHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUpCi0gICAg
ICAudGhlbihyZWcgPT4gewotICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxpbmc7Ci0g
ICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFjdGl2YXRl
ZCIpOwotICAgICAgfSkKLSAgICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0g
ICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRjaF90ZXN0
c19mcm9tX3dvcmtlcihjb250cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX21lc3Nh
Z2UoKQotICAgICAgfSkKLSAgICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlkKQotICAg
ICAgLnRoZW4oX19fID0+IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVzdF9jbGll
bnRfbmF2aWdhdGVfY3Jvc3Nfb3JpZ2luIikpCi0gICAgICAudGhlbigoe3Jlc3VsdCwgdXJsfSkg
PT4gewotICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgInRlc3RfY2xpZW50X25hdmlnYXRl
X2Nyb3NzX29yaWdpbiIpOwotICAgICAgICBhc3NlcnRfZXF1YWxzKHVybCwgIiIpOwotICAgICAg
ICBhc3NlcnRfdGhyb3dzX2RvbSgiU2VjdXJpdHlFcnJvciIsIGZ1bmN0aW9uKCkgeyByZXR1cm4g
ZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pOwotICAgICAgICBmcmFtZS5yZW1v
dmUoKTsKLSAgICAgIH0pCi0gICAgICAuY2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSkKLSAg
ICAgIC50aGVuKF9fXyA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7Cisg
ICAgcmV0dXJuIHdpdGhfY29udHJvbGxlZF9pZnJhbWVfYW5kX3VybCh0LCAndGVzdF9jbGllbnRf
bmF2aWdhdGVfY3Jvc3Nfb3JpZ2luJywgYXN5bmMgKGlmcmFtZSwgdXJsKSA9PiB7CisgICAgICBh
c3NlcnRfZXF1YWxzKHVybCwgIiIpOworICAgICAgYXNzZXJ0X3Rocm93c19kb20oIlNlY3VyaXR5
RXJyb3IiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGlmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9u
LmhyZWYgfSk7CisgICAgfSk7CiAgIH0sICJGcmFtZSBsb2NhdGlvbiBzaG91bGQgbm90IGJlIGFj
Y2Vzc2libGUgYWZ0ZXIgY3Jvc3Mtb3JpZ2luIG5hdmlnYXRpb24iKTsKIAogICBwcm9taXNlX3Rl
c3QoZnVuY3Rpb24odCkgewotICAgIHZhciB3b3JrZXIgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZS13b3JrZXIuanMiOwotICAgIHZhciBzY29wZSA9ICJyZXNvdXJjZXMvY2xpZW50LW5hdmln
YXRlLWZyYW1lLmh0bWwiOwotICAgIHZhciBjb250cm9sbGVyLCBmcmFtZSwgY2xpZW50SWQ7Ci0K
LSAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29y
a2VyLCBzY29wZSkKLSAgICAgIC50aGVuKHJlZyA9PiB7Ci0gICAgICAgIGNvbnRyb2xsZXIgPSBy
ZWcuaW5zdGFsbGluZzsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0
YWxsaW5nLCAiYWN0aXZhdGVkIik7Ci0gICAgICB9KQotICAgICAgLnRoZW4oX19fID0+IHdpdGhf
aWZyYW1lKHNjb3BlKSkKLSAgICAgIC50aGVuKGYgPT4gewotICAgICAgICBmcmFtZSA9IGY7Ci0g
ICAgICAgIGZldGNoX3Rlc3RzX2Zyb21fd29ya2VyKGNvbnRyb2xsZXIpOwotICAgICAgICByZXR1
cm4gd2FpdF9mb3JfbWVzc2FnZSgpCi0gICAgICB9KQotICAgICAgLnRoZW4oKHtpZH0pID0+IGNs
aWVudElkID0gaWQpCi0gICAgICAudGhlbihfX18gPT4gcnVuX3Rlc3QoY29udHJvbGxlciwgY2xp
ZW50SWQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9hYm91dF9ibGFuayIpKQotICAgICAgLnRoZW4o
KHtyZXN1bHQsIHVybH0pID0+IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXN1bHQsICJ0ZXN0
X2NsaWVudF9uYXZpZ2F0ZV9hYm91dF9ibGFuayIpOwotICAgICAgICBhc3NlcnRfZXF1YWxzKAot
ICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24uaHJlZiwKKyAgICByZXR1cm4g
d2l0aF9jb250cm9sbGVkX2lmcmFtZV9hbmRfdXJsKHQsICd0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9h
Ym91dF9ibGFuaycsIGFzeW5jIChpZnJhbWUsIHVybCkgPT4geworICAgICAgYXNzZXJ0X2VxdWFs
cygKKyAgICAgICAgICBpZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmLAogICAgICAg
ICAgIG5ldyBVUkwoInJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtZnJhbWUuaHRtbCIsCiAgICAg
ICAgICAgICAgICAgICBsb2NhdGlvbikudG9TdHJpbmcoKSk7Ci0gICAgICAgIGZyYW1lLmNvbnRl
bnRXaW5kb3cuZG9jdW1lbnQuYm9keS5zdHlsZSA9ICJiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbiIK
LSAgICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgICB9KQotICAgICAgLmNhdGNoKHVucmVhY2hl
ZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbihfX18gPT4gc2VydmljZV93b3JrZXJfdW5yZWdp
c3Rlcih0LCBzY29wZSkpOworICAgICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9k
eS5zdHlsZSA9ICJiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbiIKKyAgICB9KTsKICAgfSwgIkZyYW1l
IGxvY2F0aW9uIHNob3VsZCBub3QgdXBkYXRlIG9uIGZhaWxlZCBhYm91dDpibGFuayBuYXZpZ2F0
aW9uIik7CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgd29ya2VyID0g
InJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIjsKLSAgICB2YXIgc2NvcGUgPSAi
cmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sIjsKLSAgICB2YXIgY29udHJvbGxl
ciwgZnJhbWUsIGNsaWVudElkOwotCi0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0
ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUpCi0gICAgICAudGhlbihyZWcgPT4gewot
ICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxpbmc7Ci0gICAgICAgIHJldHVybiB3YWl0
X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFjdGl2YXRlZCIpOwotICAgICAgfSkKLSAg
ICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihmID0+IHsK
LSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihjb250
cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX21lc3NhZ2UoKQotICAgICAgfSkKLSAg
ICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlkKQotICAgICAgLnRoZW4oX19fID0+IHJ1
bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVzdF9jbGllbnRfbmF2aWdhdGVfbWl4ZWRf
Y29udGVudCIpKQotICAgICAgLnRoZW4oKHtyZXN1bHQsIHVybH0pID0+IHsKLSAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXN1bHQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9taXhlZF9jb250ZW50Iik7
Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5s
b2NhdGlvbi5ocmVmLAorICAgIHJldHVybiB3aXRoX2NvbnRyb2xsZWRfaWZyYW1lX2FuZF91cmwo
dCwgJ3Rlc3RfY2xpZW50X25hdmlnYXRlX21peGVkX2NvbnRlbnQnLCBhc3luYyAoaWZyYW1lLCB1
cmwpID0+IHsKKyAgICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAgICAgaWZyYW1lLmNvbnRlbnRX
aW5kb3cubG9jYXRpb24uaHJlZiwKICAgICAgICAgICBuZXcgVVJMKCJyZXNvdXJjZXMvY2xpZW50
LW5hdmlnYXRlLWZyYW1lLmh0bWwiLAogICAgICAgICAgICAgICAgICAgbG9jYXRpb24pLnRvU3Ry
aW5nKCkpOwotICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuc3R5bGUg
PSAiYmFja2dyb3VuZC1jb2xvcjogZ3JlZW4iCi0gICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAg
ICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4o
X19fID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpKTsKKyAgICAgIGlmcmFt
ZS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuc3R5bGUgPSAiYmFja2dyb3VuZC1jb2xvcjog
Z3JlZW4iCisgICAgfSk7CiAgIH0sICJGcmFtZSBsb2NhdGlvbiBzaG91bGQgbm90IHVwZGF0ZSBv
biBmYWlsZWQgbWl4ZWQtY29udGVudCBuYXZpZ2F0aW9uIik7CiA8L3NjcmlwdD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmh0dHBz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC11cmwtb2YtYmxvYi11cmwt
d29ya2VyLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZjdhN2MxODkyNTY4ZjhlNzU0
ZWE5Y2M5MmIzZGJkYWZhNzc3ZGRkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAorCitGQUlMIENsaWVudC51cmwgb2YgYSBibG9iIFVSTCB3b3JrZXIgc2hvdWxk
IGJlIGEgYmxvYiBVUkwuIGFzc2VydF9ub3RfZXF1YWxzOiB3b3JrZXIgY2xpZW50IHNob3VsZCBl
eGlzdCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAib25lIHdvcmtlciBjbGllbnQgc2hvdWxkIGV4aXN0
IgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtdXJsLW9mLWJsb2ItdXJs
LXdvcmtlci5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LXVybC1vZi1ibG9i
LXVybC13b3JrZXIuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45N2EyZmNmOThmMjkwYzI5MGIzNDg5
YjgxYzkxODc5MjJlM2U3MTFiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
Y2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRtbApAQCAtMCwwICsxLDI5IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5TZXJ2aWNlIFdvcmtlcjogY2xpZW50LnVybCBvZiBh
IHdvcmtlciBjcmVhdGVkIGZyb20gYSBibG9iIFVSTDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKworY29uc3QgU0NSSVBU
ID0gJ3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5qcyc7Citjb25zdCBT
Q09QRSA9ICdyZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHRtbCc7CisK
K3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICBjb25zdCByZWcgPSBhd2FpdCBzZXJ2aWNl
X3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BFKTsKKyAgdC5h
ZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0
ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIGNvbnN0IGZyYW1lID0gYXdh
aXQgd2l0aF9pZnJhbWUoU0NPUEUpOworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3Zl
KCkpOworICBhc3NlcnRfbm90X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5z
ZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCisgICAgICAgICAgICAgICAgICAgIG51bGwsICdmcmFt
ZSBzaG91bGQgYmUgY29udHJvbGxlZCcpOworCisgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZnJh
bWUuY29udGVudFdpbmRvdy5jcmVhdGVBbmRGZXRjaEZyb21CbG9iV29ya2VyKCk7CisKKyAgYXNz
ZXJ0X25vdF9lcXVhbHMocmVzcG9uc2UucmVzdWx0LCAnb25lIHdvcmtlciBjbGllbnQgc2hvdWxk
IGV4aXN0JywKKyAgICAgICAgICAgICAgICAgICAgJ3dvcmtlciBjbGllbnQgc2hvdWxkIGV4aXN0
Jyk7CisgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UucmVzdWx0LCByZXNwb25zZS5leHBlY3RlZCwK
KyAgICAgICAgICAgICAgICAnY2xpZW50LnVybCBhbmQgd29ya2VyIGxvY2F0aW9uIGhyZWYgc2hv
dWxkIGJlIHRoZSBzYW1lJyk7CisKK30sICdDbGllbnQudXJsIG9mIGEgYmxvYiBVUkwgd29ya2Vy
IHNob3VsZCBiZSBhIGJsb2IgVVJMLicpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odHRwcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtl
ci5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODM2YmFmYWY2ODQyOWUxMWY5M2I0OGEz
NTNkM2FmZGIyZDlmMTg1ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Ns
aWVudHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDQgQEAKKworRkFJTCBUZXN0IENsaWVudHMubWF0Y2hBbGwoKSB3aXRoIGEgYmxvYiBVUkwg
d29ya2VyIGNsaWVudC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDAKK0ZBSUwg
VGVzdCBDbGllbnRzLm1hdGNoQWxsKCkgd2l0aCBhbiB1bmNvbnRyb2xsZWQgYmxvYiBVUkwgd29y
a2VyIGNsaWVudC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBidXQgZ290IDAKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIu
aHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwt
d29ya2VyLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzI5YmFjOGI4OTRhMmM1MDgyOGFlMzQ2OWQz
ZTE4MWQyMjdmZTdhYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVu
dHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLmh0bWwKQEAgLTAsMCArMSw4NSBAQAor
PCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+U2VydmljZSBXb3JrZXI6IENsaWVudHMubWF0Y2hBbGwg
d2l0aCBhIGJsb2IgVVJMIHdvcmtlciBjbGllbnQ8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90
ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+Citjb25zdCBTQ1JJUFQgPSAn
cmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtd29ya2VyLmpzJzsKKworcHJvbWlzZV90ZXN0KGFz
eW5jICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9jbGllbnRzLW1hdGNoYWxs
LWJsb2ItdXJsLXdvcmtlci5odG1sJzsKKworICBjb25zdCByZWcgPSBhd2FpdCBzZXJ2aWNlX3dv
cmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIHNjb3BlKTsKKyAgdC5hZGRf
Y2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0
LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIGNvbnN0IGZyYW1lID0gYXdhaXQg
d2l0aF9pZnJhbWUoc2NvcGUpOworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3ZlKCkp
OworCisgIHsKKyAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy53
YWl0Rm9yV29ya2VyKCk7CisgICAgYXNzZXJ0X2VxdWFscyhtZXNzYWdlLmRhdGEsICdXb3JrZXIg
aXMgcmVhZHkuJywKKyAgICAgICAgICAgICAgICAgICdXb3JrZXIgc2hvdWxkIHJlcGx5IHRvIHRo
ZSBtZXNzYWdlLicpOworICB9CisKKyAgY29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5l
bCgpOworICBjb25zdCBtZXNzYWdlID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7Cisg
ICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSByZXNvbHZlOworICAgIGZyYW1lLmNvbnRlbnRX
aW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxlci5wb3N0TWVzc2FnZSgKKyAg
ICAgIHtwb3J0OiBjaGFubmVsLnBvcnQyLCBvcHRpb25zOiB7dHlwZTogJ3dvcmtlcid9fSwgW2No
YW5uZWwucG9ydDJdKTsKKyAgfSk7CisKKyAgY2hlY2tNZXNzYWdlRXZlbnQobWVzc2FnZSk7CisK
K30sICdUZXN0IENsaWVudHMubWF0Y2hBbGwoKSB3aXRoIGEgYmxvYiBVUkwgd29ya2VyIGNsaWVu
dC4nKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jl
c291cmNlcy9ibGFuay5odG1sJzsKKworICBjb25zdCByZWcgPSBhd2FpdCBzZXJ2aWNlX3dvcmtl
cl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIHNjb3BlKTsKKyAgdC5hZGRfY2xl
YW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCBy
ZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIGNvbnN0IHdvcmtlclNjcmlwdCA9IGAK
KyAgICBzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7CisgICAgICBzZWxmLnBvc3RNZXNzYWdlKCJX
b3JrZXIgaXMgcmVhZHkuIik7CisgICAgfTsKKyAgYDsKKyAgY29uc3QgYmxvYiA9IG5ldyBCbG9i
KFt3b3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworICBjb25zdCBi
bG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKKyAgY29uc3Qgd29ya2VyID0gbmV3
IFdvcmtlcihibG9iVXJsKTsKKworICB7CisgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IG5ldyBQ
cm9taXNlKHJlc29sdmUgPT4geworICAgICAgd29ya2VyLm9ubWVzc2FnZSA9IHJlc29sdmU7Cisg
ICAgICB3b3JrZXIucG9zdE1lc3NhZ2UoIlBpbmcgdG8gd29ya2VyLiIpOworICAgIH0pOworICAg
IGFzc2VydF9lcXVhbHMobWVzc2FnZS5kYXRhLCAnV29ya2VyIGlzIHJlYWR5LicsCisgICAgICAg
ICAgICAgICAgICAnV29ya2VyIHNob3VsZCByZXBseSB0byB0aGUgbWVzc2FnZS4nKTsKKyAgfQor
CisgIGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAgY29uc3QgbWVzc2Fn
ZSA9IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgIGNoYW5uZWwucG9ydDEub25t
ZXNzYWdlID0gcmVzb2x2ZTsKKyAgICByZWcuYWN0aXZlLnBvc3RNZXNzYWdlKAorICAgICAge3Bv
cnQ6IGNoYW5uZWwucG9ydDIsCisgICAgICAgb3B0aW9uczoge2luY2x1ZGVVbmNvbnRyb2xsZWQ6
IHRydWUsIHR5cGU6ICd3b3JrZXInfX0sCisgICAgICBbY2hhbm5lbC5wb3J0Ml0KKyAgICApOwor
ICB9KTsKKworICBjaGVja01lc3NhZ2VFdmVudChtZXNzYWdlKTsKKworfSwgJ1Rlc3QgQ2xpZW50
cy5tYXRjaEFsbCgpIHdpdGggYW4gdW5jb250cm9sbGVkIGJsb2IgVVJMIHdvcmtlciBjbGllbnQu
Jyk7CisKK2Z1bmN0aW9uIGNoZWNrTWVzc2FnZUV2ZW50KGUpIHsKKyAgYXNzZXJ0X2VxdWFscyhl
LmRhdGEubGVuZ3RoLCAxKTsKKworICBjb25zdCB3b3JrZXJDbGllbnQgPSBlLmRhdGFbMF07Cisg
IGFzc2VydF9lcXVhbHMod29ya2VyQ2xpZW50WzBdLCB1bmRlZmluZWQpOyAvLyB2aXNpYmlsaXR5
U3RhdGUKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbMV0sIHVuZGVmaW5lZCk7IC8vIGZv
Y3VzZWQKKyAgYXNzZXJ0X3RydWUod29ya2VyQ2xpZW50WzJdLmluY2x1ZGVzKCdibG9iOicpKTsg
Ly8gdXJsCisgIGFzc2VydF9lcXVhbHMod29ya2VyQ2xpZW50WzNdLCAnd29ya2VyJyk7IC8vIHR5
cGUKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbNF0sICdub25lJyk7IC8vIGZyYW1lVHlw
ZQorfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVkZW50aWFs
cy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVkZW50aWFscy5odHRw
cy1leHBlY3RlZC50eHQKaW5kZXggYjY0NzBiNGEyMWUxOGQ0NzQxODMwNDdkMjY4MWNkZTZkM2Y2
MGNhNC4uOWQzZTRjYzNkYWZkOGYzYmJlNGM1M2EwZDNjNzJlN2E3NTcyZDIwZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvY3JlZGVudGlhbHMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxzLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMiw0
ICsyLDYgQEAKIFBBU1MgU2V0IGNvb2tpZXMgYXMgaW5pdGlhbGl6YXRpb24KIFBBU1MgTWFpbiBz
Y3JpcHQgc2hvdWxkIGhhdmUgY3JlZGVudGlhbHMKIEZBSUwgSW1wb3J0ZWQgc2NyaXB0IHNob3Vs
ZCBoYXZlIGNyZWRlbnRpYWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogbnVsbCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICd3b3JrZXIucG9zdE1lc3NhZ2UnKSIKK0ZBSUwgTW9kdWxlIHdpdGggYW4gaW1wb3J0ZWQg
c3RhdGVtZW50IHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IG51bGwgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnd29ya2VyLnBvc3RNZXNzYWdlJykiCitGQUlMIFNjcmlw
dCB3aXRoIHNlcnZpY2Ugd29ya2VyIHNlcnZlZCBhcyBtb2R1bGVzIHNob3VsZCBub3QgaGF2ZSBj
cmVkZW50aWFscyBhc3NlcnRfZXF1YWxzOiBuZXcgbW9kdWxlIHdvcmtlciBzaG91bGQgbm90IGhh
dmUgY3JlZGVudGlhbHMgZXhwZWN0ZWQgKHVuZGVmaW5lZCkgdW5kZWZpbmVkIGJ1dCBnb3QgKHN0
cmluZykgIjEiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxzLmh0
dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVkZW50aWFscy5odHRwcy5odG1sCmluZGV4
IDlkNjE1ZWRhMWRkOGM3Yjk5NGFkOGFhMjBjZmUyYmNhY2FkZTRkYTguLjBhOTBkYzI4OTdjMjcz
MjM2ODJhNmUxNmJmZDZhYWE1MzcwODU1ZTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NyZWRlbnRpYWxzLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY3JlZGVudGlh
bHMuaHR0cHMuaHRtbApAQCAtNjEsNSArNjEsNDAgQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
ewogICBhc3NlcnRfZXF1YWxzKHVwZGF0ZWRfY29va2llc1tDT09LSUVfTkFNRV0sICcxJywKICAg
ICAgICAgICAgICAgICAndXBkYXRlZCB3b3JrZXIgaGFzIGNyZWRlbnRpYWxzJyk7CiB9LCAnSW1w
b3J0ZWQgc2NyaXB0IHNob3VsZCBoYXZlIGNyZWRlbnRpYWxzJyk7CisKK3Byb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKKyAgY29uc3Qga2V5ID0gdG9rZW4oKTsKKyAgY29uc3QgcmVnaXN0cmF0aW9u
ID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIoCisgICAgICB0
LCBgcmVzb3VyY2VzL2ltcG9ydC1lY2hvLWNvb2tpZS13b3JrZXItbW9kdWxlLnB5P2tleT0ke2tl
eX1gLCBTQ09QRSwge3R5cGU6ICdtb2R1bGUnfSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVn
aXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgIGNvbnN0IHdvcmtlciA9IHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nOworCisgIGNvbnN0IGNvb2tpZXMgPSBhd2FpdCBnZXRfY29va2llcyh3b3JrZXIp
OworICBhc3NlcnRfZXF1YWxzKGNvb2tpZXNbQ09PS0lFX05BTUVdLCB1bmRlZmluZWQsICduZXcg
bW9kdWxlIHdvcmtlciBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlhbHMnKTsKKworICBhd2FpdCBy
ZWdpc3RyYXRpb24udXBkYXRlKCk7CisgIGNvbnN0IHVwZGF0ZWRfd29ya2VyID0gcmVnaXN0cmF0
aW9uLmluc3RhbGxpbmc7CisgIGNvbnN0IHVwZGF0ZWRfY29va2llcyA9IGF3YWl0IGdldF9jb29r
aWVzKHVwZGF0ZWRfd29ya2VyKTsKKyAgYXNzZXJ0X2VxdWFscyh1cGRhdGVkX2Nvb2tpZXNbQ09P
S0lFX05BTUVdLCB1bmRlZmluZWQsCisgICAgICAgICAgICAgICAgJ3VwZGF0ZWQgd29ya2VyIHNo
b3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworfSwgJ01vZHVsZSB3aXRoIGFuIGltcG9ydGVk
IHN0YXRlbWVudCBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlhbHMnKTsKKworcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4geworICBjb25zdCBrZXkgPSB0b2tlbigpOworICBjb25zdCByZWdpc3RyYXRp
b24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKK3QsIGBy
ZXNvdXJjZXMvZWNoby1jb29raWUtd29ya2VyLnB5P2tleT0ke2tleX1gLCBTQ09QRSwge3R5cGU6
ICdtb2R1bGUnfSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0
ZXIoKSk7CisgIGNvbnN0IHdvcmtlciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOworCisgIGNv
bnN0IGNvb2tpZXMgPSBhd2FpdCBnZXRfY29va2llcyh3b3JrZXIpOworICBhc3NlcnRfZXF1YWxz
KGNvb2tpZXNbQ09PS0lFX05BTUVdLCB1bmRlZmluZWQsICduZXcgbW9kdWxlIHdvcmtlciBzaG91
bGQgbm90IGhhdmUgY3JlZGVudGlhbHMnKTsKKworICBhd2FpdCByZWdpc3RyYXRpb24udXBkYXRl
KCk7CisgIGNvbnN0IHVwZGF0ZWRfd29ya2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7Cisg
IGNvbnN0IHVwZGF0ZWRfY29va2llcyA9IGF3YWl0IGdldF9jb29raWVzKHVwZGF0ZWRfd29ya2Vy
KTsKKyAgYXNzZXJ0X2VxdWFscyh1cGRhdGVkX2Nvb2tpZXNbQ09PS0lFX05BTUVdLCB1bmRlZmlu
ZWQsCisgICAgICAgICAgICAgICAgJ3VwZGF0ZWQgd29ya2VyIHNob3VsZCBub3QgaGF2ZSBjcmVk
ZW50aWFscycpOworfSwgJ1NjcmlwdCB3aXRoIHNlcnZpY2Ugd29ya2VyIHNlcnZlZCBhcyBtb2R1
bGVzIHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworCiA8L3NjcmlwdD4KIDwvYm9keT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RhdGEtdHJhbnNmZXItZmlsZXMuaHR0cHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5odHRw
cy1leHBlY3RlZC50eHQKaW5kZXggOGViYmZjM2MxODYxMzI1YmQ1ZjhkNzQzZDJlN2IyYzc0ZjZh
NjdlYy4uYzg1YzY3YTgyNzQ5NzAwYzZiY2M2MmI2MTI0YmE1NWFhZGFjN2NhOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5odHRwcy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5odHRwcy1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKIAogCi1QQVNTIFBvc3RpbmcgYSBGaWxlIGluIGEg
bmF2aWdhdGlvbiBoYW5kbGVkIGJ5IGEgc2VydmljZSB3b3JrZXIKK0ZBSUwgUG9zdGluZyBhIEZp
bGUgaW4gYSBuYXZpZ2F0aW9uIGhhbmRsZWQgYnkgYSBzZXJ2aWNlIHdvcmtlciBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiZm9vYmFyIiBidXQgZ290ICJGaWVsZFN0b3JhZ2UoJ3Rlc3RpbnB1dCcs
ICduYW1lJywgJ2Zvb2JhcicpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRh
LXRyYW5zZmVyLWZpbGVzLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5z
ZmVyLWZpbGVzLmh0dHBzLmh0bWwKaW5kZXggY2M4YWI2ZTY3MjcyNmUxNjhiNDRkZmVlNWI0NzIw
MDEyZmZmZWUwYS4uYzUwM2EyOGY5NjViMjk2YjM0NmRlMjM3YWVlNzdiNDY0MTRiYjdjZCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5odHRwcy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RhdGEtdHJhbnNmZXItZmlsZXMuaHR0cHMuaHRtbApA
QCAtMzUsNyArMzUsNyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKICAgICAgIHJlc29s
dmUoZS5kYXRhKTsKICAgICB9OwogICB9KTsKLSAgYXNzZXJ0X2VxdWFscyhkYXRhLCAiRmllbGRT
dG9yYWdlKCd0ZXN0aW5wdXQnLCAnbmFtZScsICdmb29iYXInKSIpOworICBhc3NlcnRfZXF1YWxz
KGRhdGEsICJmb29iYXIiKTsKIH0sICdQb3N0aW5nIGEgRmlsZSBpbiBhIG5hdmlnYXRpb24gaGFu
ZGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyJyk7CiA8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RldGFjaGVkLWNvbnRleHQuaHR0cHMuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2RldGFjaGVkLWNvbnRleHQuaHR0cHMuaHRtbAppbmRleCBjYmI4MThmN2Fj
MGViY2I4N2VhNTNkOTRlODViNTA0NWQ5ZWFkMzVlLi43NDdhOTUzZjYyMDM3NThmMGZmN2QxOGZj
NmViOGNjOWMxOWYxN2RlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kZXRhY2hlZC1j
b250ZXh0Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGV0YWNoZWQtY29udGV4
dC5odHRwcy5odG1sCkBAIC00NywxNCArNDcsMTQgQEAgcHJvbWlzZV90ZXN0KHQgPT4gewogICAg
ICAgICAgIC8vIHJlc29sdmUgb24gYSBkZXRhY2hlZCByZWdpc3RyYXRpb24uICBXZSBjYW4ndCBj
aGVjayBmb3IKICAgICAgICAgICAvLyBhbiBleHBsaWNpdCByZWplY3Rpb24sIHRob3VnaCwgYmVj
YXVzZSBub3QgYWxsIGJyb3dzZXJzCiAgICAgICAgICAgLy8gZmlyZSByZWplY3Rpb24gY2FsbGJh
Y2tzIG9uIGRldGFjaGVkIHByb21pc2VzLiAgSW5zdGVhZAotICAgICAgICAgIC8vIHdlIHdhaXQg
Zm9yIGEgZHVtbXkgc2NvcGUgdG8gaW5zdGFsbCwgYWN0aXZhdGUsIGFuZAorICAgICAgICAgIC8v
IHdlIHdhaXQgZm9yIGEgc2FtcGxlIHNjb3BlIHRvIGluc3RhbGwsIGFjdGl2YXRlLCBhbmQKICAg
ICAgICAgICAvLyB1bnJlZ2lzdGVyIGJlZm9yZSBkZWNsYXJpbmcgdGhhdCB0aGUgcHJvbWlzZXMg
ZGlkIG5vdAogICAgICAgICAgIC8vIHJlc29sdmUuCiAgICAgICAgICAgci51bnJlZ2lzdGVyKCku
dGhlbigoKSA9PiByZXNvbHZlZENvdW50ICs9IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAoKSA9PiB7fSk7CiAgICAgICAgICAgci51cGRhdGUoKS50aGVuKCgpID0+IHJlc29sdmVk
Q291bnQgKz0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge30pOwotICAgICAg
ICAgIHJldHVybiB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15X3Njb3BlKHQsIHdpbmRvdyk7
CisgICAgICAgICAgcmV0dXJuIHdhaXRfZm9yX2FjdGl2YXRpb25fb25fc2FtcGxlX3Njb3BlKHQs
IHdpbmRvdyk7CiAgICAgICAgIH0pCiAgICAgICAudGhlbigoKSA9PiB7CiAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXNvbHZlZENvdW50LCAwLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtY3NwLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jc3AuaHR0
cHMuaHRtbAppbmRleCA0ZjE3NjIyMGQ2MTAwYzRlZmIxYmZkYTgxN2I4NGNmNWY1M2E0ZjNkLi4y
NTIyZjQ4MjhiZDAyOTA3ZTc0MDEyMDYyZGE2OGQ2OGY1N2FhZTgzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1jc3AuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC1jc3AuaHR0cHMuaHRtbApAQCAtNTksNyArNTksNyBAQCBwcm9taXNlX3Rlc3QoZnVu
Y3Rpb24odCkgewogICAgICAgICAgIHJldHVybiBhc3NlcnRfcmVzb2x2ZXMoCiAgICAgICAgICAg
ICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9hZF9pbWFnZSgKICAgICAgICAgICAgICAgICAgIC8v
IFRoZSByZXF1ZXN0IGZvciBJTUFHRV9VUkwgd2lsbCBiZSBmZXRjaGVkIGluIFNXLgotICAgICAg
ICAgICAgICAgICAgJy4vZHVtbXk/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoSU1BR0VfVVJM
KSksCisgICAgICAgICAgICAgICAgICAnLi9zYW1wbGU/dXJsPScgKyBlbmNvZGVVUklDb21wb25l
bnQoSU1BR0VfVVJMKSksCiAgICAgICAgICAgICAgICdBbGxvd2VkIHNjb3BlIGltYWdlIHJlc291
cmNlIHdoaWNoIHdhcyBmZXRjaGVkIHZpYSBTVyBzaG91bGQgJyArCiAgICAgICAgICAgICAgICdi
ZSBsb2FkZWQuJyk7CiAgICAgICAgIH0pCkBAIC02Nyw3ICs2Nyw3IEBAIHByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7CiAgICAgICAgICAgcmV0dXJuIGFzc2VydF9yZWplY3RzKAogICAgICAgICAg
ICAgICBmcmFtZS5jb250ZW50V2luZG93LmxvYWRfaW1hZ2UoCiAgICAgICAgICAgICAgICAgICAv
LyBUaGUgcmVxdWVzdCBmb3IgUkVNT1RFX0lNQUdFX1VSTCB3aWxsIGJlIGZldGNoZWQgaW4gU1cu
Ci0gICAgICAgICAgICAgICAgICAnLi9kdW1teT9tb2RlPW5vLWNvcnMmdXJsPScgKworICAgICAg
ICAgICAgICAgICAgJy4vc2FtcGxlP21vZGU9bm8tY29ycyZ1cmw9JyArCiAgICAgICAgICAgICAg
ICAgICBlbmNvZGVVUklDb21wb25lbnQoUkVNT1RFX0lNQUdFX1VSTCkpLAogICAgICAgICAgICAg
ICAnRGlzYWxsb3dlZCBzY29wZSBpbWFnZSByZXNvdXJjZSB3aGljaCB3YXMgZmV0Y2hlZCB2aWEg
U1cgJyArCiAgICAgICAgICAgICAgICdzaG91bGQgbm90IGJlIGxvYWRlZC4nKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWhhbmRsZWQuaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWhhbmRsZWQuaHR0cHMuaHRtbAppbmRleCA4OWYz
ZDc5YTY4MWEyMmNmZDY4ODliM2MwNjAzZjczODhkNDYwNDcyLi44ZDM5YjY1YmI2MjhiOGRjZGEw
N2M4MDQxNjI1ODNjODA5ODZhNmMzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRj
aC1ldmVudC1oYW5kbGVkLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gt
ZXZlbnQtaGFuZGxlZC5odHRwcy5odG1sCkBAIC00MCw3ICs0MCw3IEBAIHByb21pc2VfdGVzdChh
c3luYyAodCkgPT4gewogICAgICcgbmF2aWdhdGlvbiByZXF1ZXN0Jyk7CiAKIHByb21pc2VfdGVz
dChhc3luYyAodCkgPT4gewotICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdkdW1teS50eHQ/
cmVzcG9uZFdpdGgtbm90LWNhbGxlZCcpOworICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdz
YW1wbGUudHh0P3Jlc3BvbmRXaXRoLW5vdC1jYWxsZWQnKTsKICAgY29uc3QgbWVzc2FnZSA9IGF3
YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAgYXNzZXJ0X2VxdWFscyhtZXNz
YWdlLCAnUkVTT0xWRUQnKTsKIH0sICdGZXRjaEV2ZW50LmhhbmRsZWQgc2hvdWxkIHJlc29sdmUg
d2hlbiByZXNwb25kV2l0aCgpIGlzIG5vdCBjYWxsZWQgZm9yIGEnICsKQEAgLTQ4LDcgKzQ4LDcg
QEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAKIHByb21pc2VfdGVzdChhc3luYyAodCkg
PT4gewogICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKAotICAgICAgJ2R1bW15LnR4dD9yZXNw
b25kV2l0aC1ub3QtY2FsbGVkLWFuZC1ldmVudC1jYW5jZWxlZCcpLmNhdGNoKChlKSA9PiB7fSk7
CisgICAgICAnc2FtcGxlLnR4dD9yZXNwb25kV2l0aC1ub3QtY2FsbGVkLWFuZC1ldmVudC1jYW5j
ZWxlZCcpLmNhdGNoKChlKSA9PiB7fSk7CiAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCB3YWl0X2Zv
cl9tZXNzYWdlX2Zyb21fd29ya2VyKCk7CiAgIGFzc2VydF9lcXVhbHMobWVzc2FnZSwgJ1JFSkVD
VEVEJyk7CiB9LCAnRmV0Y2hFdmVudC5oYW5kbGVkIHNob3VsZCByZWplY3Qgd2hlbiByZXNwb25k
V2l0aCgpIGlzIG5vdCBjYWxsZWQgYW5kIHRoZScgKwpAQCAtNTYsNyArNTYsNyBAQCBwcm9taXNl
X3Rlc3QoYXN5bmMgKHQpID0+IHsKIAogcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIGZy
YW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goCi0gICAgICAnZHVtbXkudHh0P3Jlc3BvbmRXaXRoLWNh
bGxlZC1hbmQtcHJvbWlzZS1yZXNvbHZlZCcpOworICAgICAgJ3NhbXBsZS50eHQ/cmVzcG9uZFdp
dGgtY2FsbGVkLWFuZC1wcm9taXNlLXJlc29sdmVkJyk7CiAgIGNvbnN0IG1lc3NhZ2UgPSBhd2Fp
dCB3YWl0X2Zvcl9tZXNzYWdlX2Zyb21fd29ya2VyKCk7CiAgIGFzc2VydF9lcXVhbHMobWVzc2Fn
ZSwgJ1JFU09MVkVEJyk7CiB9LCAnRmV0Y2hFdmVudC5oYW5kbGVkIHNob3VsZCByZXNvbHZlIHdo
ZW4gdGhlIHByb21pc2UgcHJvdmlkZWQnICsKQEAgLTY0LDcgKzY0LDcgQEAgcHJvbWlzZV90ZXN0
KGFzeW5jICh0KSA9PiB7CiAKIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICBmcmFtZS5j
b250ZW50V2luZG93LmZldGNoKAotICAgICAgJ2R1bW15LnR4dD9yZXNwb25kV2l0aC1jYWxsZWQt
YW5kLXByb21pc2UtcmVzb2x2ZWQtdG8taW52YWxpZC1yZXNwb25zZScpCisgICAgICAnc2FtcGxl
LnR4dD9yZXNwb25kV2l0aC1jYWxsZWQtYW5kLXByb21pc2UtcmVzb2x2ZWQtdG8taW52YWxpZC1y
ZXNwb25zZScpCiAgICAgICAuY2F0Y2goKGUpID0+IHt9KTsKICAgY29uc3QgbWVzc2FnZSA9IGF3
YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAgYXNzZXJ0X2VxdWFscyhtZXNz
YWdlLCAnUkVKRUNURUQnKTsKQEAgLTczLDcgKzczLDcgQEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0
KSA9PiB7CiAKIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICBmcmFtZS5jb250ZW50V2lu
ZG93LmZldGNoKAotICAgICAgJ2R1bW15LnR4dD9yZXNwb25kV2l0aC1jYWxsZWQtYW5kLXByb21p
c2UtcmVqZWN0ZWQnKS5jYXRjaCgoZSkgPT4ge30pOworICAgICAgJ3NhbXBsZS50eHQ/cmVzcG9u
ZFdpdGgtY2FsbGVkLWFuZC1wcm9taXNlLXJlamVjdGVkJykuY2F0Y2goKGUpID0+IHt9KTsKICAg
Y29uc3QgbWVzc2FnZSA9IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAg
YXNzZXJ0X2VxdWFscyhtZXNzYWdlLCAnUkVKRUNURUQnKTsKIH0sICdGZXRjaEV2ZW50LmhhbmRs
ZWQgc2hvdWxkIHJlamVjdCB3aGVuIHRoZSBwcm9taXNlIHByb3ZpZGVkIHRvJyArCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWJhY2t3YXJkLW5h
dmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVu
dC1pcy1oaXN0b3J5LWJhY2t3YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjZjU5MjJmMzk2YWZlNGZhNGE0Nzg3OTE3ZmUwYWIz
ZmFhMzZmMGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtaGlzdG9yeS1iYWNrd2FyZC1uYXZpZ2F0
aW9uLW1hbnVhbC5odHRwcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi08IURP
Q1RZUEUgaHRtbD4KLTxib2R5PgotPHA+Q2xpY2sgPGEgaHJlZj0icmVzb3VyY2VzL2luc3RhbGwt
d29ya2VyLmh0bWw/aXNIaXN0b3J5TmF2aWdhdGlvbiZhbXA7c2NyaXB0PWZldGNoLWV2ZW50LXRl
c3Qtd29ya2VyLmpzIj50aGlzIGxpbms8L2E+LgotICAgT25jZSB5b3Ugc2VlICZxdW90O21ldGhv
ZCA9IEdFVCwuLi4mcXVvdDsgaW4gdGhlIHBhZ2UsIGdvIHRvIGFub3RoZXIgcGFnZSwgYW5kIHRo
ZW4gZ28gYmFjayB0byB0aGUgcGFnZSB1c2luZyB0aGUgQmFja3dhcmQgYnV0dG9uLgotICAgWW91
IHNob3VsZCBzZWUgJnF1b3Q7bWV0aG9kID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gdHJ1
ZSZxdW90Oy4KLTwvcD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2ZldGNoLWV2ZW50LWlzLWhpc3RvcnktZm9yd2FyZC1uYXZpZ2F0aW9uLW1hbnVhbC5o
dHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtaGlzdG9yeS1mb3J3
YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDQwMTkzOWIzY2IyZDkxOWExNWZmZDE2ZDM4Y2MzZTBjODY2YjQzZTkuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtaXMtaGlzdG9yeS1mb3J3YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGJvZHk+
Ci08cD5DbGljayA8YSBocmVmPSJyZXNvdXJjZXMvaW5zdGFsbC13b3JrZXIuaHRtbD9pc0hpc3Rv
cnlOYXZpZ2F0aW9uJmFtcDtzY3JpcHQ9ZmV0Y2gtZXZlbnQtdGVzdC13b3JrZXIuanMiPnRoaXMg
bGluazwvYT4uCi0gICBPbmNlIHlvdSBzZWUgJnF1b3Q7bWV0aG9kID0gR0VULC4uLiZxdW90OyBp
biB0aGUgcGFnZSwgZ28gYmFjayB0byB0aGlzIHBhZ2UgdXNpbmcgdGhlIEJhY2t3YXJkIGJ1dHRv
biwgYW5kIHRoZW4gZ28gdG8gdGhlIHNlY29uZCBwYWdlIHVzaW5nIHRoZSBGb3J3YXJkIGJ1dHRv
bi4KLSAgIFlvdSBzaG91bGQgc2VlICZxdW90O21ldGhvZCA9IEdFVCwgaXNIaXN0b3J5TmF2aWdh
dGlvbiA9IHRydWUmcXVvdDsuCi08L3A+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1yZWxvYWQtaWZyYW1lLW5hdmlnYXRpb24t
bWFudWFsLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50
LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NTZkZmI3MmEyMTk1MDBiMDI1Y2Y2ZjViYWM1
OWE4ZGU0MDQ5NTYwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdh
dGlvbi1tYW51YWwuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNCArMCww
IEBACi0KLQotRkFJTCBGZXRjaEV2ZW50I3JlcXVlc3QuaXNSZWxvYWROYXZpZ2F0aW9uIGlzIHRy
dWUgZm9yIG1hbnVhbCByZWxvYWQuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJtZXRob2QgPSBH
RVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNlIiBidXQgZ290ICJtZXRob2QgPSBHRVQsIGlz
UmVsb2FkTmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1uYXZpZ2F0aW9uLW1hbnVhbC5odHRw
cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1u
YXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBjZjFmZWNjZjZlNDQxMmUxMmYyMmE3Y2UxZWJlNTVhNTRiYTc0OGYxLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9jb21t
b24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNl
cy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KLTxib2R5PgotPHNjcmlwdD4KLWNvbnN0
IHdvcmtlciA9ICdyZXNvdXJjZXMvZmV0Y2gtZXZlbnQtdGVzdC13b3JrZXIuanMnOwotCi1wcm9t
aXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKLSAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL3NpbXBs
ZS5odG1sP2lzUmVsb2FkTmF2aWdhdGlvbic7Ci0KLSAgY29uc3QgcmVnID0gYXdhaXQgc2Vydmlj
ZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyLCBzY29wZSk7Ci0gIGF3
YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7Ci0gIGNv
bnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOwotICBhc3NlcnRfZXF1YWxzKGZy
YW1lLmNvbnRlbnREb2N1bWVudC5ib2R5LnRleHRDb250ZW50LAotICAgICAgICAgICAgICAgICdt
ZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNlJyk7Ci0gIGF3YWl0IG5ldyBQ
cm9taXNlKChyZXNvbHZlKSA9PiB7Ci0gICAgZnJhbWUuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcs
IHJlc29sdmUpOwotICAgIGZyYW1lLmNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVyVGV4dCA9Ci0g
ICAgICAnUmVsb2FkIHRoaXMgZnJhbWUgbWFudWFsbHkhJzsKLSAgfSk7Ci0gIGFzc2VydF9lcXVh
bHMoZnJhbWUuY29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRlbnQsCi0gICAgICAnbWV0aG9k
ID0gR0VULCBpc1JlbG9hZE5hdmlnYXRpb24gPSB0cnVlJyk7Ci0gIGZyYW1lLnJlbW92ZSgpOwot
ICBhd2FpdCByZWcudW5yZWdpc3RlcigpOwotfSwgJ0ZldGNoRXZlbnQjcmVxdWVzdC5pc1JlbG9h
ZE5hdmlnYXRpb24gaXMgdHJ1ZSBmb3IgbWFudWFsIHJlbG9hZC4nKTsKLQotPC9zY3JpcHQ+Ci08
L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVu
dC1pcy1yZWxvYWQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMzQ5ZjA3YzM2YzIyNmU3NzMyM2FiZGEwNWVl
ZmVjMjVmYzNiMjFkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1h
bnVhbC5odHRwcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTxib2R5PgotPHA+Q2xpY2sgPGEgaHJlZj0icmVzb3VyY2VzL2luc3RhbGwtd29ya2Vy
Lmh0bWw/aXNSZWxvYWROYXZpZ2F0aW9uJnNjcmlwdD1mZXRjaC1ldmVudC10ZXN0LXdvcmtlci5q
cyI+dGhpcyBsaW5rPC9hPi4KLSAgIE9uY2UgeW91IHNlZSAmcXVvdDttZXRob2QgPSBHRVQsLi4u
JnF1b3Q7IGluIHRoZSBwYWdlLCByZWxvYWQgdGhlIHBhZ2UuCi0gICBZb3Ugd2lsbCBzZWUgJnF1
b3Q7bWV0aG9kID0gR0VULCBpc1JlbG9hZE5hdmlnYXRpb24gPSB0cnVlJnF1b3Q7LgotPC9wPgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZl
bnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggMTgx
OGUwZDMxMDZhYTQ5Y2ZiZDMwZDVhYzA3MTJmZWQzMGU2MzJjNC4uZjZhNGYxYmJlYzY0MDNiM2Zj
YjE0MmU4MjIzNmU2Y2M2NzI0MjdjMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZWZlcnJlci1wb2xpY3kuaHR0cHMtZXhwZWN0ZWQudHh0
CkBAIC0xLDYgKzEsNiBAQAogCiAKIEZBSUwgU2VydmljZSBXb3JrZXIgcmVzcG9uZHMgdG8gZmV0
Y2ggZXZlbnQgd2l0aCB0aGUgcmVmZXJyZXIgcG9saWN5IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogTm90IGFsbG93ZWQgdG8g
cmVxdWVzdCByZXNvdXJjZSIKLVBBU1MgU2VydmljZSBXb3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8g
ZmV0Y2ggd2l0aCB0aGUgZGVmYXVsdCByZWZlcnJlciBwb2xpY3kKLVBBU1MgU2VydmljZSBXb3Jr
ZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgcmVmZXJyZXIgVVJMIHdoZW4gYSBt
ZW1iZXIgb2YgUmVxdWVzdEluaXQgaXMgcHJlc2VudCAtIERlZmF1bHQgUmVmZXJyZXIKK0ZBSUwg
U2VydmljZSBXb3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgZGVmYXVsdCBy
ZWZlcnJlciBwb2xpY3kgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIlJlZmVycmVyUG9saWN5OiBz
dHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luIiBidXQgZ290ICJSZWZlcnJlclBvbGljeTog
bm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUiCitGQUlMIFNlcnZpY2UgV29ya2VyIHNob3VsZCBy
ZXNwb25kIHRvIGZldGNoIHdpdGggdGhlIHJlZmVycmVyIFVSTCB3aGVuIGEgbWVtYmVyIG9mIFJl
cXVlc3RJbml0IGlzIHByZXNlbnQgLSBEZWZhdWx0IFJlZmVycmVyIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkICJSZWZlcnJlcjogaHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NpbXBsZS5odG1sP3JlZmVycmVyUG9saWN5XG5SZWZl
cnJlclBvbGljeTogc3RyaWN0LW9yaWdpbi13aGVuLWNyb3NzLW9yaWdpbiIgYnV0IGdvdCAiUmVm
ZXJyZXI6IGh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zaW1wbGUuaHRtbD9yZWZlcnJlclBvbGljeVxuUmVmZXJyZXJQb2xpY3k6
IG5vLXJlZmVycmVyLXdoZW4tZG93bmdyYWRlIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC1yZWZlcnJlci1wb2xpY3kuaHR0cHMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sCmluZGV4IDgwNGZk
OWI0MjA0YzQyMjRjYjE1MjY3ZTI3OWQ3NGU4NzcwZWY3YzkuLmFmNGIyMGE5YTRhN2I3NjY1MDk5
NDRiNTlkYjMzMmZlNzBlOGNmNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sCkBAIC0yMiw3ICsyMiw3IEBA
IGZ1bmN0aW9uIHJ1bl9yZWZlcnJlcl9wb2xpY3lfdGVzdHMoZnJhbWUsIHJlZmVycmVyLCBocmVm
LCBvcmlnaW4pIHsKICAgICAgICAgICBkb190ZXN0KHJlZmVycmVyLAogICAgICAgICAgICAgcmVz
cG9uc2VfdGV4dCwKICAgICAgICAgICAgICdSZWZlcnJlcjogJyArIGhyZWYgKyAnXG4nICsKLSAg
ICAgICAgICAgICdSZWZlcnJlclBvbGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnLAor
ICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3Jp
Z2luJywKICAgICAgICAgICAgICdTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRj
aCB3aXRoIHRoZSByZWZlcnJlciBVUkwgd2hlbiBhIG1lbWJlciBvZiBSZXF1ZXN0SW5pdCBpcyBw
cmVzZW50Jyk7CiAgICAgICAgICAgdmFyIGh0dHBfdXJsID0gZ2V0X2hvc3RfaW5mbygpWydIVFRQ
X09SSUdJTiddICsgYmFzZV9wYXRoKCkgKwogICAgICAgICAgICAgICAgICAgICAgICAgICcvcmVz
b3VyY2VzL3NpbXBsZS5odG1sP3JlZmVycmVyRnVsbCc7CkBAIC0zNCw3ICszNCw3IEBAIGZ1bmN0
aW9uIHJ1bl9yZWZlcnJlcl9wb2xpY3lfdGVzdHMoZnJhbWUsIHJlZmVycmVyLCBocmVmLCBvcmln
aW4pIHsKICAgICAgICAgICBkb190ZXN0KHJlZmVycmVyLAogICAgICAgICAgICAgcmVzcG9uc2Vf
dGV4dCwKICAgICAgICAgICAgICdSZWZlcnJlcjogXG4nICsKLSAgICAgICAgICAgICdSZWZlcnJl
clBvbGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnLAorICAgICAgICAgICAgJ1JlZmVy
cmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJywKICAgICAgICAgICAg
ICdTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRjaCB3aXRoIG5vIHJlZmVycmVy
IHdoZW4gYSBtZW1iZXIgb2YgUmVxdWVzdEluaXQgaXMgcHJlc2VudCB3aXRoIGFuIEhUVFAgcmVx
dWVzdCcpOwogICAgICAgICAgIHJldHVybiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdyZXNv
dXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJGdWxsJywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7cmVmZXJyZXJQb2xpY3k6ICIiLCByZWZlcnJlcjogcmVmZXJy
ZXJ9KTsKQEAgLTQ0LDcgKzQ0LDcgQEAgZnVuY3Rpb24gcnVuX3JlZmVycmVyX3BvbGljeV90ZXN0
cyhmcmFtZSwgcmVmZXJyZXIsIGhyZWYsIG9yaWdpbikgewogICAgICAgICAgIGRvX3Rlc3QocmVm
ZXJyZXIsCiAgICAgICAgICAgICByZXNwb25zZV90ZXh0LAogICAgICAgICAgICAgJ1JlZmVycmVy
OiAnICsgaHJlZiArICdcbicgKwotICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBuby1yZWZl
cnJlci13aGVuLWRvd25ncmFkZScsCisgICAgICAgICAgICAnUmVmZXJyZXJQb2xpY3k6IHN0cmlj
dC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nLAogICAgICAgICAgICAgJ1NlcnZpY2UgV29ya2Vy
IHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggdGhlIHJlZmVycmVyIHdpdGggIiInKTsKICAg
ICAgICAgICB2YXIgaHR0cF91cmwgPSBnZXRfaG9zdF9pbmZvKClbJ0hUVFBfT1JJR0lOJ10gKyBi
YXNlX3BhdGgoKSArCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy9yZXNvdXJjZXMvc2ltcGxl
Lmh0bWw/cmVmZXJyZXJGdWxsJzsKQEAgLTU2LDcgKzU2LDcgQEAgZnVuY3Rpb24gcnVuX3JlZmVy
cmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgcmVmZXJyZXIsIGhyZWYsIG9yaWdpbikgewogICAgICAg
ICAgIGRvX3Rlc3QocmVmZXJyZXIsCiAgICAgICAgICAgICByZXNwb25zZV90ZXh0LAogICAgICAg
ICAgICAgJ1JlZmVycmVyOiBcbicgKwotICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBuby1y
ZWZlcnJlci13aGVuLWRvd25ncmFkZScsCisgICAgICAgICAgICAnUmVmZXJyZXJQb2xpY3k6IHN0
cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nLAogICAgICAgICAgICAgJ1NlcnZpY2UgV29y
a2VyIHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggbm8gcmVmZXJyZXIgd2l0aCAiIicpOwog
ICAgICAgICAgIHJldHVybiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdyZXNvdXJjZXMvc2lt
cGxlLmh0bWw/cmVmZXJyZXJGdWxsJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7cmVmZXJyZXJQb2xpY3k6ICJvcmlnaW4iLCByZWZlcnJlcjogcmVmZXJyZXJ9
KTsKQEAgLTI1Myw3ICsyNTMsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAg
LnRoZW4oZnVuY3Rpb24oZikgewogICAgICAgICAgIGZyYW1lID0gZjsKICAgICAgICAgICB0ZXN0
KCgpID0+IHsKLSAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudERvY3VtZW50
LmJvZHkudGV4dENvbnRlbnQsICdSZWZlcnJlclBvbGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3du
Z3JhZGUnKTsKKyAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudERvY3VtZW50
LmJvZHkudGV4dENvbnRlbnQsICdSZWZlcnJlclBvbGljeTogc3RyaWN0LW9yaWdpbi13aGVuLWNy
b3NzLW9yaWdpbicpOwogICAgICAgICAgIH0sICdTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9u
ZCB0byBmZXRjaCB3aXRoIHRoZSBkZWZhdWx0IHJlZmVycmVyIHBvbGljeScpOwogICAgICAgICAg
IC8vIEZpcnN0LCBydW4gdGhlIHJlZmVycmVyIHBvbGljeSB0ZXN0cyB3aXRob3V0IHBhc3Npbmcg
YSByZWZlcnJlciBpbiBSZXF1ZXN0SW5pdC4KICAgICAgICAgICByZXR1cm4gcnVuX3JlZmVycmVy
X3BvbGljeV90ZXN0cyhmcmFtZSwgdW5kZWZpbmVkLCBmcmFtZS5jb250ZW50RG9jdW1lbnQubG9j
YXRpb24uaHJlZiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdp
dGhpbi1zdy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGlu
LXN3Lmh0dHBzLmh0bWwKaW5kZXggZjVhNjBjMzA2MDk2MWEyYjE2NzRjODk1OWM1ZDRhMGFmN2I1
NDUyYS4uMGI1MmIxODMwNWZhYTFlMzZlYTY4NzNlZDUzNDkxM2FkYjZlNWM3NSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGluLXN3Lmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGluLXN3Lmh0dHBzLmh0bWwKQEAg
LTI4LDEyICsyOCwxMiBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAKICAgY29uc3QgaWZy
YW1lID0gYXdhaXQgcmVnaXN0ZXJTd0FuZE9wZW5GcmFtZSh0KTsKICAgY29uc3QgZmV0Y2hUZXh0
ID0KLSAgICAgIGF3YWl0IGlmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdkdW1teS50eHQnKS50
aGVuKHIgPT4gci50ZXh0KCkpOworICAgICAgYXdhaXQgaWZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0
Y2goJ3NhbXBsZS50eHQnKS50aGVuKHIgPT4gci50ZXh0KCkpOwogCiAgIGNvbnN0IGNhY2hlID0g
YXdhaXQgaWZyYW1lLmNvbnRlbnRXaW5kb3cuY2FjaGVzLm9wZW4oJ3Rlc3QnKTsKLSAgYXdhaXQg
Y2FjaGUuYWRkKCdkdW1teS50eHQnKTsKKyAgYXdhaXQgY2FjaGUuYWRkKCdzYW1wbGUudHh0Jyk7
CiAKLSAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5tYXRjaCgnZHVtbXkudHh0Jyk7Cisg
IGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2FjaGUubWF0Y2goJ3NhbXBsZS50eHQnKTsKICAgY29u
c3QgY2FjaGVUZXh0ID0gYXdhaXQgKHJlc3BvbnNlID8gcmVzcG9uc2UudGV4dCgpIDogJ2NhY2hl
IG1hdGNoIGZhaWxlZCcpOwogICBhc3NlcnRfZXF1YWxzKGZldGNoVGV4dCwgJ2ludGVyY2VwdGVk
JywgJ2ZldGNoIGludGVyY2VwdGVkJyk7CiAgIGFzc2VydF9lcXVhbHMoY2FjaGVUZXh0LCAnaW50
ZXJjZXB0ZWQnLCAnY2FjaGUuYWRkIGludGVyY2VwdGVkJyk7CkBAIC00Miw4ICs0Miw4IEBAIHBy
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgY29u
c3QgaWZyYW1lID0gYXdhaXQgcmVnaXN0ZXJTd0FuZE9wZW5GcmFtZSh0KTsKICAgY29uc3QgW2Zl
dGNoVGV4dCwgY2FjaGVUZXh0XSA9IGF3YWl0IFByb21pc2UuYWxsKFsKLSAgICBpZnJhbWUuY29u
dGVudFdpbmRvdy5mZXRjaCgnZHVtbXkudHh0LWlubmVyLWZldGNoJykudGhlbihyID0+IHIudGV4
dCgpKSwKLSAgICBpZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCgnZHVtbXkudHh0LWlubmVyLWNh
Y2hlJykudGhlbihyID0+IHIudGV4dCgpKQorICAgIGlmcmFtZS5jb250ZW50V2luZG93LmZldGNo
KCdzYW1wbGUudHh0LWlubmVyLWZldGNoJykudGhlbihyID0+IHIudGV4dCgpKSwKKyAgICBpZnJh
bWUuY29udGVudFdpbmRvdy5mZXRjaCgnc2FtcGxlLnR4dC1pbm5lci1jYWNoZScpLnRoZW4ociA9
PiByLnRleHQoKSkKICAgXSk7CiAgIGFzc2VydF9lcXVhbHMoZmV0Y2hUZXh0LCAnSGVsbG8gd29y
bGRcbicsICdmZXRjaCB3aXRoaW4gU1cgbm90IGludGVyY2VwdGVkJyk7CiAgIGFzc2VydF9lcXVh
bHMoY2FjaGVUZXh0LCAnSGVsbG8gd29ybGRcbicsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1ldmVudC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNmZmYTVlNWQxMDFhYWFhMDQ2NDFm
NTNlZDNkODQ3ZjlhOTIxYzIyMC4uNWQyYjlhNDMyZGEwMzQ1ZjkwMzA3N2YwMGI2ZWYwYTYwZmVl
MmRiNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0cHMtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50Lmh0dHBzLWV4cGVj
dGVkLnR4dApAQCAtMjEsNiArMjEsMTYgQEAgUEFTUyBTZXJ2aWNlIFdvcmtlciByZXNwb25kcyB0
byBmZXRjaCBldmVudCB3aXRoIHRoZSBjb3JyZWN0IGludGVncml0eV9tZXRhZGF0YQogUEFTUyBG
ZXRjaEV2ZW50I2JvZHkgaXMgYSBzdHJpbmcKIEZBSUwgRmV0Y2hFdmVudCNib2R5IGlzIGEgUmVh
ZGFibGVTdHJlYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IFJlYWRhYmxlU3RyZWFtIHVwbG9hZGluZyBpcyBu
b3Qgc3VwcG9ydGVkIgogUEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBzdHJpbmcgYW5kIGlzIHBh
c3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrCitGQUlMIEZldGNoRXZlbnQjYm9keSBpcyBhIFJlYWRh
YmxlU3RyZWFtIGFuZCBpcyBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFjayBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogUmVhZGFibGVTdHJlYW0gdXBsb2FkaW5nIGlzIG5vdCBzdXBwb3J0ZWQiCitGQUlMIEZldGNo
RXZlbnQjYm9keSBpcyBhIG5vbmUgVWludDhBcnJheSBSZWFkYWJsZVN0cmVhbSBhbmQgaXMgcGFz
c2VkIHRvIGEgc2VydmljZSB3b3JrZXIgcHJvbWlzZV9yZWplY3RzX2pzOiBmdW5jdGlvbiAiZnVu
Y3Rpb24gKCkgeyB0aHJvdyBlIH0iIHRocmV3IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IFJl
YWRhYmxlU3RyZWFtIHVwbG9hZGluZyBpcyBub3Qgc3VwcG9ydGVkIiAoIk5vdFN1cHBvcnRlZEVy
cm9yIikgZXhwZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigp
IHsKKyAgICBbbmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitQQVNTIEZldGNoRXZlbnQj
Ym9keSBpcyBhIHN0cmluZywgdXNlZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sKK0ZB
SUwgRmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0sIHVzZWQgYW5kIHBhc3NlZCB0
byBuZXR3b3JrIGZhbGxiYWNrIHByb21pc2VfcmVqZWN0c19qczogZnVuY3Rpb24gImZ1bmN0aW9u
ICgpIHsgdGhyb3cgZSB9IiB0aHJldyBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBSZWFkYWJs
ZVN0cmVhbSB1cGxvYWRpbmcgaXMgbm90IHN1cHBvcnRlZCIgKCJOb3RTdXBwb3J0ZWRFcnJvciIp
IGV4cGVjdGVkIGluc3RhbmNlIG9mIGZ1bmN0aW9uICJmdW5jdGlvbiBUeXBlRXJyb3IoKSB7Cisg
ICAgW25hdGl2ZSBjb2RlXQorfSIgKCJUeXBlRXJyb3IiKQorUEFTUyBGZXRjaEV2ZW50I2JvZHkg
aXMgYSBzdHJpbmcsIGNsb25lZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sKK1BBU1Mg
RmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0sIGNsb25lZCBhbmQgcGFzc2VkIHRv
IG5ldHdvcmsgZmFsbGJhY2sKIFBBU1MgRmV0Y2hFdmVudCNib2R5IGlzIGEgYmxvYgogUEFTUyBG
ZXRjaEV2ZW50I2JvZHkgaXMgYSBibG9iIGFuZCBpcyBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFj
awogUEFTUyBTZXJ2aWNlIFdvcmtlciByZXNwb25kcyB0byBmZXRjaCBldmVudCB3aXRoIHRoZSBj
b3JyZWN0IGtlZXBhbGl2ZSB2YWx1ZQpAQCAtMzUsNSArNDUsOCBAQCBGQUlMIEZldGNoRXZlbnQj
cmVxdWVzdC5pc0hpc3RvcnlOYXZpZ2F0aW9uIGlzIGZhbHNlICh3aXRoIGxvY2F0aW9uLnJlbG9h
ZCkgYXNzZQogRkFJTCBGZXRjaEV2ZW50I3JlcXVlc3QuaXNIaXN0b3J5TmF2aWdhdGlvbiBpcyB0
cnVlICh3aXRoIGhpc3RvcnkuZ28oLTIpKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAibWV0aG9k
ID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gZmFsc2UiIGJ1dCBnb3QgIm1ldGhvZCA9IEdF
VCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKIEZBSUwgRmV0Y2hFdmVudCNyZXF1
ZXN0LmlzSGlzdG9yeU5hdmlnYXRpb24gaXMgdHJ1ZSAod2l0aCBoaXN0b3J5LmdvKDIpKSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAibWV0aG9kID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0g
ZmFsc2UiIGJ1dCBnb3QgIm1ldGhvZCA9IEdFVCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHVuZGVm
aW5lZCIKIEZBSUwgRmV0Y2hFdmVudCNyZXF1ZXN0LmlzSGlzdG9yeU5hdmlnYXRpb24gaXMgdHJ1
ZSAoUE9TVCArIGhpc3RvcnkuZ28oLTEpKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAibWV0aG9k
ID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gZmFsc2UiIGJ1dCBnb3QgIm1ldGhvZCA9IEdF
VCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKK1BBU1MgWEhSIHVwbG9hZCBwcm9n
cmVzcyBldmVudHMgZm9yIHJlc3BvbnNlIGNvbWluZyBmcm9tIFNXCitQQVNTIFhIUiB1cGxvYWQg
cHJvZ3Jlc3MgZXZlbnRzIGZvciBuZXR3b3JrIGZhbGxiYWNrCitQQVNTIEZldGNoIHdpdGggUE9T
VCB3aXRoIHRleHQgb24gc3cgNDIxIHJlc3BvbnNlIHNob3VsZCBub3QgYmUgcmV0cmllZC4KIFBB
U1MgcmVzdG9yZSBnbG9iYWwgc3RhdGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50Lmh0
dHBzLmh0bWwKaW5kZXggNDhmNzFlNDZjYjIyMTM2OTU4ZjYzYWVkZDNmZjE2NzU4YTVkZTU4MS4u
NzcxZjFlMzE5Y2E0N2U2Y2ZlNjBkYjgzZmM3ZDQyYzJjNTVjYjY0OSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC5odHRwcy5odG1sCkBAIC0xNyw2ICsxNyw4IEBAIHByb21pc2VfdGVz
dChhc3luYyB0ID0+IHsKICAgICBjb25zdCByZWdpc3RyYXRpb24gPQogICAgICAgICBhd2FpdCBz
ZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXIsIHNjb3BlKTsK
ICAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2Fj
dGl2YXRlZCcpOworCisgICAgLy8gVGhpcyB3aWxsIGhhcHBlbiBhZnRlciBhbGwgb3RoZXIgdGVz
dHMKICAgICBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAgICAgIHJldHVybiByZWdpc3RyYXRpb24u
dW5yZWdpc3RlcigpOwogICAgICAgfSwgJ3Jlc3RvcmUgZ2xvYmFsIHN0YXRlJyk7CkBAIC00ODAs
NiArNDgyLDE2NCBAQCBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAgICAgIH0pOwogICB9LCAnRmV0
Y2hFdmVudCNib2R5IGlzIGEgc3RyaW5nIGFuZCBpcyBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFj
aycpOwogCisvLyBUZXN0IHRoYXQgdGhlIHJlcXVlc3QgYm9keSBpcyBzZW50IHRvIG5ldHdvcmsg
dXBvbiBuZXR3b3JrIGZhbGxiYWNrLAorLy8gZm9yIGEgUmVhZGFibGVTdHJlYW0gYm9keS4KK3By
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBycyA9IG5ldyBSZWFkYWJsZVN0cmVh
bSh7c3RhcnQoYykgeworICAgICAgYy5lbnF1ZXVlKCdpIGEnKTsKKyAgICAgIGMuZW5xdWV1ZSgn
bSB0aGUgcmVxdWVzdCcpOworICAgICAgdC5zdGVwX3RpbWVvdXQodC5zdGVwX2Z1bmMoKCkgPT4g
eworICAgICAgICBjLmVucXVldWUoJyBib2R5Jyk7CisgICAgICAgIGMuY2xvc2UoKTsKKyAgICAg
IH0sIDEwKSk7CisgICAgfX0pOworICAgIC8vIFNldCBwYWdlX3VybCB0byAiP2lnbm9yZSIgc28g
dGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gbmV0d29yaworICAgIC8vIGZvciB0aGUg
bWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4IHRvIGF2b2lkIGNvbGxpZGlu
ZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAgY29uc3QgcGFnZV91cmwgPSAncmVzb3Vy
Y2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxsYmFjay1zdHJpbmcnOworICAgIGNvbnN0
IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91cmwpOworICAgIHQuYWRkX2NsZWFudXAo
KCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisgICAgLy8gQWRkICI/aWdub3JlIiBzbyB0aGUg
c2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBlY2hvLWNvbnRlbnQucHkuCisgICAgY29uc3Qg
ZWNob191cmwgPSAnL2ZldGNoL2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P2lnbm9yZSc7
CisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVj
aG9fdXJsLCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiBycy5waXBl
VGhyb3VnaChuZXcgVGV4dEVuY29kZXJTdHJlYW0oKSkKKyAgICB9KTsKKyAgICBjb25zdCB0ZXh0
ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgIGFzc2VydF9lcXVhbHModGV4dCwKKyAgICAg
ICAgJ2kgYW0gdGhlIHJlcXVlc3QgYm9keScsCisgICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFj
ayByZXF1ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNo
RXZlbnQjYm9keSBpcyBhIFJlYWRhYmxlU3RyZWFtIGFuZCBpcyBwYXNzZWQgdG8gbmV0d29yayBm
YWxsYmFjaycpOworCisgIC8vIFRlc3QgdGhhdCB0aGUgcmVxdWVzdCBib2R5IGlzIHNlbnQgdG8g
bmV0d29yayB1cG9uIG5ldHdvcmsgZmFsbGJhY2ssCisvLyBmb3IgYSBSZWFkYWJsZVN0cmVhbSBi
b2R5LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHJzID0gbmV3IFJlYWRh
YmxlU3RyZWFtKHtzdGFydChjKSB7CisgICAgICBjLmVucXVldWUoJ2kgYScpOworICAgICAgYy5l
bnF1ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7CisgICAgICB0LnN0ZXBfdGltZW91dCh0LnN0ZXBfZnVu
YygoKSA9PiB7CisgICAgICAgIGMuZW5xdWV1ZSgnIGJvZHknKTsKKyAgICAgICAgYy5jbG9zZSgp
OworICAgICAgfSwgMTApKTsKKyAgICB9fSk7CisgICAgLy8gU2V0IHBhZ2VfdXJsIHRvICI/aWdu
b3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBuZXR3b3JrCisgICAgLy8g
Zm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBhZGQgYSBzdWZmaXggdG8gYXZvaWQg
Y29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4KKyAgICBjb25zdCBwYWdlX3VybCA9
ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5LWZhbGxiYWNrLXN0cmluZyc7Cisg
ICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRf
Y2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICAvLyBBZGQgIj9pZ25vcmUi
IHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIGVjaG8tY29udGVudC5weS4KKyAg
ICBjb25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHk/
aWdub3JlJzsKKyAgICBjb25zdCB3ID0gZnJhbWUuY29udGVudFdpbmRvdzsKKyAgICBhd2FpdCBw
cm9taXNlX3JlamVjdHNfanModCwgdy5UeXBlRXJyb3IsICB3LmZldGNoKGVjaG9fdXJsLCB7Cisg
ICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiBycworICAgIH0pKTsKKyAgfSwg
J0ZldGNoRXZlbnQjYm9keSBpcyBhIG5vbmUgVWludDhBcnJheSBSZWFkYWJsZVN0cmVhbSBhbmQg
aXMgcGFzc2VkIHRvIGEgc2VydmljZSB3b3JrZXInKTsKKworLy8gVGVzdCB0aGF0IHRoZSByZXF1
ZXN0IGJvZHkgaXMgc2VudCB0byBuZXR3b3JrIHVwb24gbmV0d29yayBmYWxsYmFjayBldmVuIHdo
ZW4KKy8vIHRoZSByZXF1ZXN0IGJvZHkgaXMgdXNlZCBpbiB0aGUgc2VydmljZSB3b3JrZXIsIGZv
ciBhIHN0cmluZyBib2R5LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIC8vIFNldCBw
YWdlX3VybCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8g
bmV0d29yaworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEg
c3VmZml4IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAg
Y29uc3QgcGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxs
YmFjay1zdHJpbmcnOworCisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdl
X3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAg
ICAvLyBBZGQgIj91c2UtYW5kLWlnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJh
Y2sgdG8gZWNoby1jb250ZW50LnB5LgorICAgIGNvbnN0IGVjaG9fdXJsID0gJy9mZXRjaC9hcGkv
cmVzb3VyY2VzL2VjaG8tY29udGVudC5weT91c2UtYW5kLWlnbm9yZSc7CisgICAgY29uc3QgcmVz
cG9uc2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVjaG9fdXJsLCB7CisgICAg
ICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAnaSBhbSB0aGUgcmVxdWVzdCBib2R5
JworICAgIH0pOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7CisgICAg
YXNzZXJ0X2VxdWFscygKKyAgICAgICAgdGV4dCwKKyAgICAgICAgJ2kgYW0gdGhlIHJlcXVlc3Qg
Ym9keScsCisgICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFjayByZXF1ZXN0IHNob3VsZCBpbmNs
dWRlIHRoZSByZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNoRXZlbnQjYm9keSBpcyBhIHN0cmlu
ZywgdXNlZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2snKTsKKworLy8gV2hlbiB0aGUg
c3RyZWFtaW5nIGJvZHkgaXMgdXNlZCBpbiB0aGUgc2VydmljZSB3b3JrZXIsIG5ldHdvcmsgZmFs
bGJhY2sKKy8vIGZhaWxzLgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHJz
ID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtzdGFydChjKSB7CisgICAgICBjLmVucXVldWUoJ2kgYScp
OworICAgICAgYy5lbnF1ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7CisgICAgICB0LnN0ZXBfdGltZW91
dCh0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgICAgIGMuZW5xdWV1ZSgnIGJvZHknKTsKKyAgICAg
ICAgYy5jbG9zZSgpOworICAgICAgfSwgMTApKTsKKyAgICB9fSk7CisgICAgLy8gU2V0IHBhZ2Vf
dXJsIHRvICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBuZXR3
b3JrCisgICAgLy8gZm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBhZGQgYSBzdWZm
aXggdG8gYXZvaWQgY29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4KKyAgICBjb25z
dCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5LWZhbGxiYWNr
LXN0cmluZyc7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3VybCk7
CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICBjb25z
dCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHk/dXNlLWFu
ZC1pZ25vcmUnOworICAgIGNvbnN0IHcgPSBmcmFtZS5jb250ZW50V2luZG93OworICAgIGF3YWl0
IHByb21pc2VfcmVqZWN0c19qcyh0LCB3LlR5cGVFcnJvciwgdy5mZXRjaChlY2hvX3VybCwgewor
ICAgICAgICBtZXRob2Q6ICdQT1NUJywKKyAgICAgICAgYm9keTogcnMucGlwZVRocm91Z2gobmV3
IFRleHRFbmNvZGVyU3RyZWFtKCkpCisgICAgfSkpOworICB9LCAnRmV0Y2hFdmVudCNib2R5IGlz
IGEgUmVhZGFibGVTdHJlYW0sIHVzZWQgYW5kIHBhc3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrJyk7
CisKKy8vIFRlc3QgdGhhdCB0aGUgcmVxdWVzdCBib2R5IGlzIHNlbnQgdG8gbmV0d29yayB1cG9u
IG5ldHdvcmsgZmFsbGJhY2sgZXZlbiB3aGVuCisvLyB0aGUgcmVxdWVzdCBib2R5IGlzIHVzZWQg
YnkgY2xvbmUoKSBpbiB0aGUgc2VydmljZSB3b3JrZXIsIGZvciBhIHN0cmluZyBib2R5LgorcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIC8vIFNldCBwYWdlX3VybCB0byAiP2lnbm9yZSIg
c28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gbmV0d29yaworICAgIC8vIGZvciB0
aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4IHRvIGF2b2lkIGNvbGxp
ZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAgY29uc3QgcGFnZV91cmwgPSAncmVz
b3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxsYmFjay1zdHJpbmcnOworCisgICAg
Y29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRfY2xl
YW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICAvLyBBZGQgIj9jbG9uZS1hbmQt
aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0bworICAgIC8vIGVjaG8t
Y29udGVudC5weS4KKyAgICBjb25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9l
Y2hvLWNvbnRlbnQucHk/Y2xvbmUtYW5kLWlnbm9yZSc7CisgICAgY29uc3QgcmVzcG9uc2UgPSBh
d2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVjaG9fdXJsLCB7CisgICAgICAgIG1ldGhv
ZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAnaSBhbSB0aGUgcmVxdWVzdCBib2R5JworICAgIH0p
OworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7CisgICAgYXNzZXJ0X2Vx
dWFscygKKyAgICAgICAgdGV4dCwKKyAgICAgICAgJ2kgYW0gdGhlIHJlcXVlc3QgYm9keScsCisg
ICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFjayByZXF1ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSBy
ZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNoRXZlbnQjYm9keSBpcyBhIHN0cmluZywgY2xvbmVk
IGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFjaycpOworCisvLyBXaGVuIHRoZSBzdHJlYW1p
bmcgYm9keSBpcyB1c2VkIGJ5IGNsb25lKCkgaW4gdGhlIHNlcnZpY2Ugd29ya2VyLCBuZXR3b3Jr
CisvLyBmYWxsYmFjayBmYWlscy4KK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25z
dCBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoYykgeworICAgICAgYy5lbnF1ZXVlKCdp
IGEnKTsKKyAgICAgIGMuZW5xdWV1ZSgnbSB0aGUgcmVxdWVzdCcpOworICAgICAgdC5zdGVwX3Rp
bWVvdXQodC5zdGVwX2Z1bmMoKCkgPT4geworICAgICAgICBjLmVucXVldWUoJyBib2R5Jyk7Cisg
ICAgICAgIGMuY2xvc2UoKTsKKyAgICAgIH0sIDEwKSk7CisgICAgfX0pOworICAgIC8vIFNldCBw
YWdlX3VybCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8g
bmV0d29yaworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEg
c3VmZml4IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAg
Y29uc3QgcGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxs
YmFjay1zdHJpbmcnOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91
cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisgICAg
Ly8gQWRkICI/Y2xvbmUtYW5kLWlnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJh
Y2sgdG8KKyAgICAvLyBlY2hvLWNvbnRlbnQucHkuCisgICAgY29uc3QgZWNob191cmwgPSAnL2Zl
dGNoL2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P2Nsb25lLWFuZC1pZ25vcmUnOworICAg
IGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaChlY2hvX3Vy
bCwgeworICAgICAgICBtZXRob2Q6ICdQT1NUJywKKyAgICAgICAgYm9keTogJ2kgYW0gdGhlIHJl
cXVlc3QgYm9keScKKyAgICB9KTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4
dCgpOworICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAgIHRleHQsCisgICAgICAgICdpIGFtIHRo
ZSByZXF1ZXN0IGJvZHknLAorICAgICAgICAndGhlIG5ldHdvcmsgZmFsbGJhY2sgcmVxdWVzdCBz
aG91bGQgaW5jbHVkZSB0aGUgcmVxdWVzdCBib2R5Jyk7CisgIH0sICdGZXRjaEV2ZW50I2JvZHkg
aXMgYSBSZWFkYWJsZVN0cmVhbSwgY2xvbmVkIGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFj
aycpOworCiAvLyBUZXN0IHRoYXQgdGhlIHNlcnZpY2Ugd29ya2VyIGNhbiByZWFkIEZldGNoRXZl
bnQjYm9keSB3aGVuIGl0IGlzIGEgYmxvYi4KIC8vIEl0IHJlc3BvbmRzIHdpdGggcmVxdWVzdCBi
b2R5IGl0IHJlYWQuCiBwcm9taXNlX3Rlc3QodCA9PiB7CkBAIC04NTEsNSArMTAxMSw3NCBAQCBw
cm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKICAgICBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRl
bnREb2N1bWVudC5ib2R5LnRleHRDb250ZW50LAogICAgICAgICAgICAgICAgICAgJ21ldGhvZCA9
IFBPU1QsIGlzSGlzdG9yeU5hdmlnYXRpb24gPSB0cnVlJyk7CiAgIH0sICdGZXRjaEV2ZW50I3Jl
cXVlc3QuaXNIaXN0b3J5TmF2aWdhdGlvbiBpcyB0cnVlIChQT1NUICsgaGlzdG9yeS5nbygtMSkp
Jyk7CisKKy8vIFdoZW4gc2VydmljZSB3b3JrZXIgcmVzcG9uZHMgd2l0aCBhIFJlc3BvbnNlLCBu
byBYSFIgdXBsb2FkIHByb2dyZXNzCisvLyBldmVudHMgYXJlIGRlbGl2ZXJlZC4KK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvc2ltcGxl
Lmh0bWw/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktc3RyaW5nJzsKKyAgICBjb25zdCBmcmFtZSA9
IGF3YWl0IHdpdGhfaWZyYW1lKHBhZ2VfdXJsKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsg
ZnJhbWUucmVtb3ZlKCk7IH0pOworCisgICAgY29uc3QgeGhyID0gbmV3IGZyYW1lLmNvbnRlbnRX
aW5kb3cuWE1MSHR0cFJlcXVlc3QoKTsKKyAgICB4aHIub3BlbignUE9TVCcsICdzaW1wbGUuaHRt
bD9yZXF1ZXN0LWJvZHknKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dy
ZXNzJywgdC51bnJlYWNoZWRfZnVuYygncHJvZ3Jlc3MnKSk7CisgICAgeGhyLnVwbG9hZC5hZGRF
dmVudExpc3RlbmVyKCdlcnJvcicsIHQudW5yZWFjaGVkX2Z1bmMoJ2Vycm9yJykpOworICAgIHho
ci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB0LnVucmVhY2hlZF9mdW5jKCdhYm9y
dCcpKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ3RpbWVvdXQnLCB0LnVucmVh
Y2hlZF9mdW5jKCd0aW1lb3V0JykpOworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcign
bG9hZCcsIHQudW5yZWFjaGVkX2Z1bmMoJ2xvYWQnKSk7CisgICAgeGhyLnVwbG9hZC5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkZW5kJywgdC51bnJlYWNoZWRfZnVuYygnbG9hZGVuZCcpKTsKKyAgICB4
aHIuc2VuZCgnaSBhbSB0aGUgcmVxdWVzdCBib2R5Jyk7CisKKyAgICBhd2FpdCBuZXcgUHJvbWlz
ZSgocmVzb2x2ZSkgPT4geGhyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCByZXNvbHZlKSk7Cisg
IH0sICdYSFIgdXBsb2FkIHByb2dyZXNzIGV2ZW50cyBmb3IgcmVzcG9uc2UgY29taW5nIGZyb20g
U1cnKTsKKworLy8gVXBsb2FkIHByb2dyZXNzIGV2ZW50cyBzaG91bGQgYmUgZGVsaXZlcmVkIGZv
ciB0aGUgbmV0d29yayBmYWxsYmFjayBjYXNlLgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewor
ICAgIGNvbnN0IHBhZ2VfdXJsID0gJ3Jlc291cmNlcy9zaW1wbGUuaHRtbD9pZ25vcmUtZm9yLXJl
cXVlc3QtYm9keS1zdHJpbmcnOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUo
cGFnZV91cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7
CisKKyAgICBsZXQgcHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICBsZXQgbG9hZCA9IGZhbHNlOworICAg
IGxldCBsb2FkZW5kID0gZmFsc2U7CisKKyAgICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29udGVu
dFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICAgIHhoci5vcGVuKCdQT1NUJywgJy9mZXRjaC9h
cGkvcmVzb3VyY2VzL2VjaG8tY29udGVudC5weT9pZ25vcmUnKTsKKyAgICB4aHIudXBsb2FkLmFk
ZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgKCkgPT4gcHJvZ3Jlc3MgPSB0cnVlKTsKKyAgICB4
aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgdC51bnJlYWNoZWRfZnVuYygnZXJy
b3InKSk7CisgICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIHQudW5yZWFj
aGVkX2Z1bmMoJ2Fib3J0JykpOworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcigndGlt
ZW91dCcsIHQudW5yZWFjaGVkX2Z1bmMoJ3RpbWVvdXQnKSk7CisgICAgeGhyLnVwbG9hZC5hZGRF
dmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4gbG9hZCA9IHRydWUpOworICAgIHhoci51cGxvYWQu
YWRkRXZlbnRMaXN0ZW5lcignbG9hZGVuZCcsICgpID0+IGxvYWRlbmQgPSB0cnVlKTsKKyAgICB4
aHIuc2VuZCgnaSBhbSB0aGUgcmVxdWVzdCBib2R5Jyk7CisKKyAgICBhd2FpdCBuZXcgUHJvbWlz
ZSgocmVzb2x2ZSkgPT4geGhyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCByZXNvbHZlKSk7Cisg
ICAgYXNzZXJ0X3RydWUocHJvZ3Jlc3MsICdwcm9ncmVzcycpOworICAgIGFzc2VydF90cnVlKGxv
YWQsICdsb2FkJyk7CisgICAgYXNzZXJ0X3RydWUobG9hZGVuZCwgJ2xvYWRlbmQnKTsKKyAgfSwg
J1hIUiB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzIGZvciBuZXR3b3JrIGZhbGxiYWNrJyk7CisKK3By
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICAvLyBTZXQgcGFnZV91cmwgdG8gIj9pZ25vcmUi
IHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIG5ldHdvcmsKKyAgICAvLyBmb3Ig
dGhlIG1haW4gcmVzb3VyY2UgcmVxdWVzdCwgYW5kIGFkZCBhIHN1ZmZpeCB0byBhdm9pZCBjb2xs
aWRpbmcKKyAgICAvLyB3aXRoIG90aGVyIHRlc3RzLgorICAgIGNvbnN0IHBhZ2VfdXJsID0gJ3Jl
c291cmNlcy8/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktZmFsbGJhY2stc3RyaW5nJzsKKworICAg
IGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91cmwpOworICAgIHQuYWRkX2Ns
ZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisgICAgLy8gQWRkICI/Y2xvbmUtYW5k
LWlnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8KKyAgICAvLyBlY2hv
LWNvbnRlbnQucHkuCisgICAgY29uc3QgZWNob191cmwgPSAnL2ZldGNoL2FwaS9yZXNvdXJjZXMv
ZWNoby1jb250ZW50LnB5P3N0YXR1cz00MjEnOworICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQg
ZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaChlY2hvX3VybCwgeworICAgICAgICBtZXRob2Q6ICdQ
T1NUJywKKyAgICAgICAgYm9keTogJ3RleHQgYm9keScKKyAgICB9KTsKKyAgICBhc3NlcnRfZXF1
YWxzKHJlc3BvbnNlLnN0YXR1cywgNDIxKTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9u
c2UudGV4dCgpOworICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAgIHRleHQsCisgICAgICAgICd0
ZXh0IGJvZHkuIFJlcXVlc3Qgd2FzIHNlbnQgMSB0aW1lcy4nLAorICAgICAgICAndGhlIG5ldHdv
cmsgZmFsbGJhY2sgcmVxdWVzdCBzaG91bGQgaW5jbHVkZSB0aGUgcmVxdWVzdCBib2R5Jyk7Cisg
IH0sICdGZXRjaCB3aXRoIFBPU1Qgd2l0aCB0ZXh0IG9uIHN3IDQyMSByZXNwb25zZSBzaG91bGQg
bm90IGJlIHJldHJpZWQuJyk7CiA8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLmh0dHBzLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC5odHRwcy5odG1sCmluZGV4
IGEwOGUwYzc0ODgxMzY0ZjdmZDI5ZDNlNmFjMzMyYTdlMWQ5NGJmN2EuLjQ2N2E2NmNlZTQ2NGU2
ODcyMzhjMjVkYTJmYjE3Y2IwMTUwMWZiMGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwuaHR0cHMuaHRtbApAQCAtNzAsMTMgKzcw
LDEzIEBAIGNvbnN0IGNzc0ZpbGUgPSAnZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwtc3R5bGUu
Y3NzJzsKIAogYmFzZV91cmxfdGVzdCh7CiAgIGZyYW1lUGF0aDogU0NPUEUgKyAnP2ZldGNoJywK
LSAgZXhwZWN0SW1hZ2VSZXF1ZXN0UGF0aDogJ3Jlc291cmNlcy9kdW1teS5wbmcnLAorICBleHBl
Y3RJbWFnZVJlcXVlc3RQYXRoOiAncmVzb3VyY2VzL3NhbXBsZS5wbmcnLAogICBleHBlY3RJbWFn
ZVJlcXVlc3RSZWZlcnJlcjogYHJlc291cmNlcy8ke2Nzc0ZpbGV9P2ZldGNoYCwKICAgZGVzY3Jp
cHRpb246ICdiYXNlIFVSTCB3aGVuIHNlcnZpY2Ugd29ya2VyIGRvZXMgcmVzcG9uZFdpdGgoZmV0
Y2gocmVzcG9uc2VVcmwpKS4nfSk7CiAKIGJhc2VfdXJsX3Rlc3QoewogICBmcmFtZVBhdGg6IFND
T1BFICsgJz9uZXdSZXNwb25zZScsCi0gIGV4cGVjdEltYWdlUmVxdWVzdFBhdGg6ICdyZXNvdXJj
ZXMvcmVxdWVzdC11cmwtcGF0aC9kdW1teS5wbmcnLAorICBleHBlY3RJbWFnZVJlcXVlc3RQYXRo
OiAncmVzb3VyY2VzL3JlcXVlc3QtdXJsLXBhdGgvc2FtcGxlLnBuZycsCiAgIGV4cGVjdEltYWdl
UmVxdWVzdFJlZmVycmVyOiBgcmVzb3VyY2VzL3JlcXVlc3QtdXJsLXBhdGgvJHtjc3NGaWxlfT9u
ZXdSZXNwb25zZWAsCiAgIGRlc2NyaXB0aW9uOiAnYmFzZSBVUkwgd2hlbiBzZXJ2aWNlIHdvcmtl
ciBkb2VzIHJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgpKS4nfSk7CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWltYWdlcy5odHRwcy5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwKaW5kZXgg
OTU4ZGUxYWY4NWY0ZWU2YmE1OGI0N2RlMzg5NzFmOWZmMmFhMmJhMC4uNTg2ZGVhMjYxMzVmYzUz
NWJmODEyZDg2Yzk4NTQ1NDFkYWFiYmMzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwKQEAgLTksOSArOSw5IEBAIHZh
ciBTQ09QRSA9ICdyZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtaWZyYW1lLmh0dHBz
Lmh0bWwnOwogdmFyIFNDUklQVCA9ICdyZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMt
d29ya2VyLmpzJzsKIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CiB2YXIgTE9DQUxf
VVJMID0KLSAgaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291
cmNlcy9kdW1teT90ZXN0JzsKKyAgaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0
aCgpICsgJ3Jlc291cmNlcy9zYW1wbGU/dGVzdCc7CiB2YXIgUkVNT1RFX1VSTCA9Ci0gIGhvc3Rf
aW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL2R1
bW15P3Rlc3QnOworICBob3N0X2luZm9bJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIGJhc2VfcGF0
aCgpICsgJ3Jlc291cmNlcy9zYW1wbGU/dGVzdCc7CiAKIGZ1bmN0aW9uIGNzc19pbWFnZV90ZXN0
KGV4cGVjdGVkX3Jlc3VsdHMsIGZyYW1lLCB1cmwsIHR5cGUsCiAgICAgICAgICAgICAgICAgICAg
ICAgICBleHBlY3RlZF9tb2RlLCBleHBlY3RlZF9jcmVkZW50aWFscykgewpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5odHRwcy5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5odHRwcy5odG1sCmluZGV4IDU3
ZmI4ZWI0Yzk1ZDU0YjIwZDY3NDcyODI3MGUxNDBkYjBmNmI0NzMuLjVjZTAxNWI0MjFmY2FmNzM3
Nzc5MjZiNmNiMWYxYTJhYTBhMWQzMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLXJlcXVlc3QtcmVkaXJlY3QuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1yZXF1ZXN0LXJlZGlyZWN0Lmh0dHBzLmh0bWwKQEAgLTYzLDcgKzYzLDcgQEAgcHJvbWlz
ZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICB2YXIgSU1BR0VfVVJMID0gYmFzZV9wYXRoKCkgKyAn
cmVzb3VyY2VzL3NxdWFyZS5wbmcnOwogICAgIHZhciBBVURJT19VUkwgPSBnZXRBdWRpb1VSSSgi
L21lZGlhL3NvdW5kXzUiKTsKICAgICB2YXIgWEhSX1VSTCA9IGJhc2VfcGF0aCgpICsgJ3Jlc291
cmNlcy9zaW1wbGUudHh0JzsKLSAgICB2YXIgSFRNTF9VUkwgPSBiYXNlX3BhdGgoKSArICdyZXNv
dXJjZXMvZHVtbXkuaHRtbCc7CisgICAgdmFyIEhUTUxfVVJMID0gYmFzZV9wYXRoKCkgKyAncmVz
b3VyY2VzL3NhbXBsZS5odG1sJzsKIAogICAgIHZhciBSRURJUkVDVF9UT19JTUFHRV9VUkwgPSBS
RURJUkVDVF9VUkwgKyBlbmNvZGVVUklDb21wb25lbnQoSU1BR0VfVVJMKTsKICAgICB2YXIgUkVE
SVJFQ1RfVE9fQVVESU9fVVJMID0gUkVESVJFQ1RfVVJMICsgZW5jb2RlVVJJQ29tcG9uZW50KEFV
RElPX1VSTCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJl
c291cmNlcy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1
ZXN0LXJlc291cmNlcy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNzI0NDlmYTNkZDZmNWQzYmE1
ODFmMmFjZTY4NTllY2U4YTg1MmVlZS4uMjFhMjkwMTBjNDU0ZmE5MjcwN2EzZDcwYzk0YmJhMjZk
NWI4ZDY0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZXNv
dXJjZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJl
cXVlc3QtcmVzb3VyY2VzLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw2NSArMSw2NSBAQAogCiBQ
QVNTIFZlcmlmeSBGZXRjaEV2ZW50IGZvciByZXNvdXJjZXMuCi1QQVNTIEltYWdlIGxvYWQgKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXk/dGVzdDEgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgSW1hZ2UgbG9hZCAodXJs
Omh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0MiBjcm9zc19vcmlnaW46KQotUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MyBjcm9zc19vcmlnaW46KQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBz
Oi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9kdW1teT90ZXN0NCBjcm9zc19vcmlnaW46KQotUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6
Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2R1bW15P3Rlc3Q1IGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCi1QQVNTIEltYWdlIGxvYWQgKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXk/dGVzdDYgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1Mg
SW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NyBjcm9zc19vcmlnaW46KQotUEFTUyBJ
bWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q4IGNyb3NzX29yaWdpbjphbm9ueW1vdXMp
Ci1QQVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDkgY3Jvc3Nfb3JpZ2luOnVz
ZS1jcmVkZW50aWFscykKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5
NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDEw
IGNyb3NzX29yaWdpbjopCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Qx
MSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8v
bG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9k
dW1teT90ZXN0MTIgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgU2NyaXB0IGxv
YWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDEzIGNyb3NzX29yaWdpbjopCi1QQVNTIFNjcmlwdCBs
b2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QxNCBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFT
UyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTUgY3Jvc3Nfb3JpZ2luOnVzZS1j
cmVkZW50aWFscykKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDE2IGNyb3Nz
X29yaWdpbjopCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QxNyBjcm9zc19v
cmlnaW46YW5vbnltb3VzKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0
NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTgg
Y3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczov
LzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZHVtbXk/dGVzdDE5IGNyb3NzX29yaWdpbjopCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly8x
MjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1
bW15P3Rlc3QyMCBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MjEgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLUZBSUwgRm9u
dEZhY2UgbG9hZCAodXJsOiBodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDIyKSBhc3NlcnRfZXF1YWxzOiBtb2Rl
IG9mIG11c3QgYmUgY29ycy4gZXhwZWN0ZWQgImNvcnMiIGJ1dCBnb3QgIm5vLWNvcnMiCi1GQUlM
IEZvbnRGYWNlIGxvYWQgKHVybDogaHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyMykgYXNzZXJ0X2VxdWFsczog
bW9kZSBvZiBtdXN0IGJlIGNvcnMuIGV4cGVjdGVkICJjb3JzIiBidXQgZ290ICJuby1jb3JzIgot
UEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MjQpCi1QQVNTIFNjcmlwdCBs
b2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyNSkKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDI2KQotUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
MjcpCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyOCkKLVBBU1MgU2Ny
aXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDI5KQotUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MzApCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Qz
MSkKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDMyKQotUEFTUyBDU1MgbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzMpCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1
bW15P3Rlc3QzNCkKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM1KQotRkFJ
TCBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzYgbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50
aWFsczpvbWl0KSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBz
Oi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9kdW1teT90ZXN0MzYgbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50aWFsczpvbWl0KSBtdXN0IGJl
IGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDM3IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4p
IGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhv
c3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rl
c3QzNyBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKSBtdXN0IGJlIGVt
cHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZHVtbXk/dGVzdDM4IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6aW5jbHVkZSkgYXNzZXJ0
X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM4IG1v
ZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6aW5jbHVkZSkgbXVzdCBiZSBlbXB0eS4gZXhwZWN0
ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Qz
OSBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6b21pdCkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRp
b24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM5IG1vZGU6bm8tY29ycyBjcmVkZW50
aWFsczpvbWl0KSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZB
SUwgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQwIG1vZGU6bm8tY29ycyBjcmVkZW50aWFs
czpzYW1lLW9yaWdpbikgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZHVtbXk/dGVzdDQwIG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikg
bXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3Q0MSBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkg
YXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9z
dDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVz
dDQxIG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBtdXN0IGJlIGVtcHR5LiBleHBl
Y3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9z
dDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVz
dDQyIG1vZGU6Y29ycyBjcmVkZW50aWFsczpvbWl0KSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlv
biBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDIgbW9kZTpjb3JzIGNyZWRlbnRpYWxz
Om9taXQpIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBm
ZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDMgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUt
b3JpZ2luKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8v
bG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9k
dW1teT90ZXN0NDMgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKSBtdXN0IGJlIGVt
cHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZHVtbXk/dGVzdDQ0IG1vZGU6Y29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBhc3NlcnRfZXF1YWxz
OiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDQgbW9kZTpjb3Jz
IGNyZWRlbnRpYWxzOmluY2x1ZGUpIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0
IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDUgbW9kZTpuby1jb3Jz
IGNyZWRlbnRpYWxzOm9taXQpIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1
cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3Q0NSBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6b21pdCkgbXVz
dCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6
aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3Q0NiBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4p
IGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4w
LjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rl
c3Q0NiBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4pIG11c3QgYmUgZW1wdHku
IGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vMTI3
LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1t
eT90ZXN0NDcgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpIGFzc2VydF9lcXVhbHM6
IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0NyBtb2RlOm5vLWNv
cnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBi
dXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0OCBtb2RlOmNvcnMg
Y3JlZGVudGlhbHM6b21pdCkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVy
bDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXk/dGVzdDQ4IG1vZGU6Y29ycyBjcmVkZW50aWFsczpvbWl0KSBtdXN0IGJl
IGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRw
czovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDQ5IG1vZGU6Y29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikgYXNzZXJ0
X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ5IG1v
ZGU6Y29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQg
ImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1MCBt
b2RlOmNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24g
b2YgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDUwIG1vZGU6Y29ycyBjcmVkZW50aWFsczpp
bmNsdWRlKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLVBBU1Mg
QXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTEgY3Jvc3Nfb3JpZ2luOikKLVBBU1Mg
QXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTIgY3Jvc3Nfb3JpZ2luOmFub255bW91
cykKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTMgY3Jvc3Nfb3JpZ2lu
OnVzZS1jcmVkZW50aWFscykKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4x
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
NTQgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4x
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
NTUgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8v
MTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9k
dW1teT90ZXN0NTYgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgVmlkZW8gbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTcgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgVmlkZW8gbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTggY3Jvc3Nfb3JpZ2luOmFub255bW91cykKLVBBU1Mg
VmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTkgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVk
ZW50aWFscykKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NjAgY3Jvc3Nf
b3JpZ2luOikKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NjEgY3Jvc3Nf
b3JpZ2luOmFub255bW91cykKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4x
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
NjIgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKK1BBU1MgSW1hZ2UgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGU/dGVzdDEgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgSW1hZ2UgbG9hZCAodXJsOmh0
dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGU/dGVzdDIgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2FtcGxlP3Rlc3QzIGNyb3NzX29yaWdpbjopCitQQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6
Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3NhbXBsZT90ZXN0NCBjcm9zc19vcmlnaW46KQorUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6
Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3NhbXBsZT90ZXN0NSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQorUEFTUyBJbWFnZSBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0NiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFT
UyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NyBjcm9zc19vcmlnaW46KQorUEFT
UyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0OCBjcm9zc19vcmlnaW46YW5vbnlt
b3VzKQorUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0OSBjcm9zc19vcmln
aW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/
dGVzdDEwIGNyb3NzX29yaWdpbjopCitQQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2Nh
bGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBs
ZT90ZXN0MTEgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2FtcGxlP3Rlc3QxMiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBT
Y3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDEzIGNyb3NzX29yaWdpbjopCitQQVNT
IFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MTQgY3Jvc3Nfb3JpZ2luOmFub255
bW91cykKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QxNSBjcm9zc19v
cmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/
dGVzdDE2IGNyb3NzX29yaWdpbjopCitQQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhv
c3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90
ZXN0MTcgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3QxOCBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBDU1MgbG9h
ZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDE5IGNyb3NzX29yaWdpbjopCitQQVNTIENTUyBsb2Fk
ICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MjAgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1Mg
Q1NTIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyMSBjcm9zc19vcmlnaW46dXNlLWNyZWRl
bnRpYWxzKQorRkFJTCBGb250RmFjZSBsb2FkICh1cmw6IGh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDIyKSBh
c3NlcnRfZXF1YWxzOiBtb2RlIG9mIG11c3QgYmUgY29ycy4gZXhwZWN0ZWQgImNvcnMiIGJ1dCBn
b3QgIm5vLWNvcnMiCitGQUlMIEZvbnRGYWNlIGxvYWQgKHVybDogaHR0cHM6Ly8xMjcuMC4wLjE6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0
MjMpIGFzc2VydF9lcXVhbHM6IG1vZGUgb2YgbXVzdCBiZSBjb3JzLiBleHBlY3RlZCAiY29ycyIg
YnV0IGdvdCAibm8tY29ycyIKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9z
dDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rl
c3QyNCkKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNSkKK1BBU1Mg
U2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNikKK1BBU1MgU2NyaXB0IGxvYWQg
KHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNykKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3QyOCkKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5
NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Qy
OSkKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzMCkKK1BBU1MgQ1NTIGxv
YWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzMSkKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3QzMikKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzMykK
K1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzNCkKK1BBU1MgQ1NTIGxvYWQg
KHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzNSkKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovL2xvY2Fs
aG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxl
P3Rlc3QzNiBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOm9taXQpCitQQVNTIGZldGNoICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0MzcgbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50aWFsczpzYW1l
LW9yaWdpbikKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzOCBtb2RlOnNhbWUt
b3JpZ2luIGNyZWRlbnRpYWxzOmluY2x1ZGUpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9sb2Nh
bGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBs
ZT90ZXN0MzkgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOm9taXQpCitQQVNTIGZldGNoICh1cmw6
aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3NhbXBsZT90ZXN0NDAgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2lu
KQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQxIG1vZGU6bm8tY29ycyBjcmVk
ZW50aWFsczppbmNsdWRlKQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQyIG1v
ZGU6Y29ycyBjcmVkZW50aWFsczpvbWl0KQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/
dGVzdDQzIG1vZGU6Y29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikKK1BBU1MgZmV0Y2ggKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0NCBtb2RlOmNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkKK1BB
U1MgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0NSBtb2RlOm5vLWNvcnMgY3JlZGVudGlh
bHM6b21pdCkKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0NiBtb2RlOm5vLWNv
cnMgY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4pCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBs
ZT90ZXN0NDcgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpCitQQVNTIGZldGNoICh1
cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0NDggbW9kZTpjb3JzIGNyZWRlbnRpYWxzOm9taXQpCitQQVNT
IGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDkgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNh
bWUtb3JpZ2luKQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDUwIG1vZGU6Y29y
cyBjcmVkZW50aWFsczppbmNsdWRlKQorUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2Nh
bGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBs
ZT90ZXN0NTEgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9j
YWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1w
bGU/dGVzdDUyIGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNTIEF1ZGlvIGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2FtcGxlP3Rlc3Q1MyBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBB
dWRpbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NTQgY3Jvc3Nfb3JpZ2luOikKK1BBU1Mg
QXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDU1IGNyb3NzX29yaWdpbjphbm9ueW1v
dXMpCitQQVNTIEF1ZGlvIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q1NiBjcm9zc19vcmln
aW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhv
c3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90
ZXN0NTcgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/
dGVzdDU4IGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNTIFZpZGVvIGxvYWQgKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2FtcGxlP3Rlc3Q1OSBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBWaWRl
byBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NjAgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgVmlk
ZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDYxIGNyb3NzX29yaWdpbjphbm9ueW1vdXMp
CitQQVNTIFZpZGVvIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q2MiBjcm9zc19vcmlnaW46
dXNlLWNyZWRlbnRpYWxzKQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1y
ZXF1ZXN0LXJlc291cmNlcy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVx
dWVzdC1yZXNvdXJjZXMuaHR0cHMuaHRtbAppbmRleCBmZTIyN2Q5Y2UyZjQ5NDNlYzhhMmFhOTM2
ODgyZjdiNDZkYWNhMjhmLi5iNDY4MGMzY2NkNThkOWQ3ZGVmOWQ2OWZmMWQxMDQ4YTZhZTAyOTA1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5o
dHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2Vz
Lmh0dHBzLmh0bWwKQEAgLTExNyw3ICsxMTcsNyBAQCBmdW5jdGlvbiBmZXRjaF90ZXN0KGZyYW1l
LCB1cmwsIG1vZGUsIGNyZWRlbnRpYWxzLAogICAgICAgY3JlZGVudGlhbHM6IGV4cGVjdGVkX2Ny
ZWRlbnRpYWxzLAogICAgICAgcmVkaXJlY3Q6ICdmb2xsb3cnLAogICAgICAgaW50ZWdyaXR5OiAn
JywKLSAgICAgIGRlc3RpbmF0aW9uOiAnZW1wdHknLAorICAgICAgZGVzdGluYXRpb246ICcnLAog
ICAgICAgbWVzc2FnZTogYGZldGNoICh1cmw6JHthY3R1YWxfdXJsfSBtb2RlOiR7bW9kZX0gYCAr
CiAgICAgICAgICAgICAgICBgY3JlZGVudGlhbHM6JHtjcmVkZW50aWFsc30pYAogICAgIH07CkBA
IC0xNjIsOSArMTYyLDkgQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICBjb25zdCBTQ1JJ
UFQgPSAncmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLXdvcmtlci5qcyc7CiAgIGNv
bnN0IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKICAgY29uc3QgTE9DQUxfVVJMID0KLSAg
ICAgIGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArICdyZXNvdXJjZXMv
ZHVtbXk/dGVzdCc7CisgICAgICBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRo
KCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0JzsKICAgY29uc3QgUkVNT1RFX1VSTCA9Ci0gICAg
ICBob3N0X2luZm9bJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291
cmNlcy9kdW1teT90ZXN0JzsKKyAgICAgIGhvc3RfaW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTidd
ICsgYmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0JzsKIAogICBjb25zdCByZWdp
c3RyYXRpb24gPQogICAgICAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVn
aXN0ZXIodCwgU0NSSVBULCBTQ09QRSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGJkZTEwNDAxZDk3NWRjZDMzNTk2Y2MwZTczMzhk
NjM1Zjg0YjdmNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJl
cXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDMgQEAKKworRkFJTCBWZXJpZnkgc3luY2hyb25vdXMgWE1MSHR0cFJlcXVlc3QgYWx3YXlzIHRo
cm93cyBhIE5ldHdvcmtFcnJvciBmb3IgUmVhZGFibGVTdHJlYW0gZXJyb3JzIGFzc2VydF90aHJv
d3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gZnJhbWUuY29udGVudFdpbmRvdy5wZXJmb3JtU3luY1hI
Uigibm9uLWV4aXN0ZW50LXN0cmVhbS0xLnR4dCIpIiBkaWQgbm90IHRocm93CisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMu
d2luZG93Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVy
cm9yLmh0dHBzLndpbmRvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2
NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRvdy5odG1sCkBAIC0wLDAgKzEg
QEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVj
dHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5
bmMtZXJyb3IuaHR0cHMud2luZG93LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVz
dC14aHItc3luYy1lcnJvci5odHRwcy53aW5kb3cuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTZjMDIxMzkyODY2
OWQyMTA4OTk4MjczMGMwMzM0Y2RlOGMyMGY2YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LmpzCkBA
IC0wLDAgKzEsMTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1yZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1
Yi5qcworCisidXNlIHN0cmljdCI7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29u
c3QgdXJsID0gInJlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLXdvcmtlci5q
cyI7CisgIGNvbnN0IHNjb3BlID0gInJlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWlm
cmFtZS5odG1sIjsKKworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtl
cl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB1cmwsIHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51
cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKworICBhd2FpdCB3YWl0X2Zvcl9z
dGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworICBjb25zdCBm
cmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiBm
cmFtZS5yZW1vdmUoKSk7CisKKyAgYXNzZXJ0X3Rocm93c19kb20oIk5ldHdvcmtFcnJvciIsIGZy
YW1lLmNvbnRlbnRXaW5kb3cuRE9NRXhjZXB0aW9uLCAoKSA9PiBmcmFtZS5jb250ZW50V2luZG93
LnBlcmZvcm1TeW5jWEhSKCJub24tZXhpc3RlbnQtc3RyZWFtLTEudHh0IikpOworICBhc3NlcnRf
dGhyb3dzX2RvbSgiTmV0d29ya0Vycm9yIiwgZnJhbWUuY29udGVudFdpbmRvdy5ET01FeGNlcHRp
b24sICgpID0+IGZyYW1lLmNvbnRlbnRXaW5kb3cucGVyZm9ybVN5bmNYSFIoIm5vbi1leGlzdGVu
dC1zdHJlYW0tMi50eHQiKSk7CisgIGFzc2VydF90aHJvd3NfZG9tKCJOZXR3b3JrRXJyb3IiLCBm
cmFtZS5jb250ZW50V2luZG93LkRPTUV4Y2VwdGlvbiwgKCkgPT4gZnJhbWUuY29udGVudFdpbmRv
dy5wZXJmb3JtU3luY1hIUigibm9uLWV4aXN0ZW50LXN0cmVhbS0zLnR4dCIpKTsKK30sICJWZXJp
Znkgc3luY2hyb25vdXMgWE1MSHR0cFJlcXVlc3QgYWx3YXlzIHRocm93cyBhIE5ldHdvcmtFcnJv
ciBmb3IgUmVhZGFibGVTdHJlYW0gZXJyb3JzIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3Rvcmlj
YWwuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIwYjNkZGZiZjdiODgzMDI2YjcwNjkyY2YwZjkw
N2RjOTNmNWFkMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3Jp
Y2FsLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDUgQEAKKy8vIE1FVEE6IGdsb2JhbD1zZXJ2aWNl
d29ya2VyCisKK3Rlc3QoKHQpID0+IHsKKyAgYXNzZXJ0X2ZhbHNlKCd0YXJnZXRDbGllbnRJZCcg
aW4gRmV0Y2hFdmVudC5wcm90b3R5cGUpCit9LCAndGFyZ2V0Q2xpZW50SWQgc2hvdWxkIG5vdCBi
ZSBvbiBGZXRjaEV2ZW50Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3Jp
Y2FsLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ4OTkzOTg3YmVjZTgwZGZmMmQxMzJhMWQ4MmU2MWExZmViOTg3OTEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5zZXJ2aWNl
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworRkFJTCB0YXJnZXRDbGllbnRJ
ZCBzaG91bGQgbm90IGJlIG9uIEZldGNoRXZlbnQgYXNzZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxz
ZSBnb3QgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3JpY2FsLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3JpY2Fs
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNi
M2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsx
IEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1
Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtbW9kdWxlLXNjcmlw
dHMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1vZHVsZS1z
Y3JpcHRzLmh0dHBzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MjRmOTdkODRjMDIwYzNmZjM0ZmNiODAwYjZmY2RmYTZkNzRmNTdiMS4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQt
bW9kdWxlLXNjcmlwdHMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSAr
MCwwIEBACi0KLVBBU1MgU3RhdGljIGltcG9ydC4KLVBBU1MgTmVzdGVkIHN0YXRpYyBpbXBvcnQu
Ci1GQUlMIFN0YXRpYyBpbXBvcnQgYW5kIHRoZW4gZHluYW1pYyBpbXBvcnQuIGFzc2VydF9hcnJh
eV9lcXVhbHM6IHZhbHVlIGlzICJGYWlsZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6IFR5cGVFcnJv
cjogRHluYW1pYy1pbXBvcnQgaXMgbm90IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBvciBTZXJ2aWNl
V29ya2VycyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlMIER5bmFtaWMgaW1wb3J0LiBhc3NlcnRfYXJy
YXlfZXF1YWxzOiB2YWx1ZSBpcyAiRmFpbGVkIHRvIGRvIGR5bmFtaWMgaW1wb3J0OiBUeXBlRXJy
b3I6IER5bmFtaWMtaW1wb3J0IGlzIG5vdCBhdmFpbGFibGUgaW4gV29ya2xldHMgb3IgU2Vydmlj
ZVdvcmtlcnMiLCBleHBlY3RlZCBhcnJheQotRkFJTCBOZXN0ZWQgZHluYW1pYyBpbXBvcnQuIGFz
c2VydF9hcnJheV9lcXVhbHM6IHZhbHVlIGlzICJGYWlsZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6
IFR5cGVFcnJvcjogRHluYW1pYy1pbXBvcnQgaXMgbm90IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBv
ciBTZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlMIER5bmFtaWMgaW1wb3J0IGFu
ZCB0aGVuIHN0YXRpYyBpbXBvcnQuIGFzc2VydF9hcnJheV9lcXVhbHM6IHZhbHVlIGlzICJGYWls
ZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6IFR5cGVFcnJvcjogRHluYW1pYy1pbXBvcnQgaXMgbm90
IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBvciBTZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVkIGFycmF5
Ci1GQUlMIGV2YWwoaW1wb3J0KCkpLiBhc3NlcnRfYXJyYXlfZXF1YWxzOiB2YWx1ZSBpcyAiRmFp
bGVkIHRvIGRvIGR5bmFtaWMgaW1wb3J0OiBUeXBlRXJyb3I6IER5bmFtaWMtaW1wb3J0IGlzIG5v
dCBhdmFpbGFibGUgaW4gV29ya2xldHMgb3IgU2VydmljZVdvcmtlcnMiLCBleHBlY3RlZCBhcnJh
eQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtbW9kdWxlLXNjcmlwdHMu
aHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tb2R1bGUtc2NyaXB0cy5odHRw
cy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3YmNhOGRlNjRmNWJjOTY2NDkx
MWJkMWM1ZGM4ODM1Njc2ODFhZmI4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tb2R1bGUtc2NyaXB0cy5odHRw
cy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08dGl0bGU+VGVzdHMgZm9yIG1vZHVsZSBpbXBvcnQ6IFNl
cnZpY2VXb3JrZXI8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Mu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpz
Ij48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIvd29ya2Vycy9tb2R1bGVzL3Jlc291cmNlcy9pbXBv
cnQtdGVzdC1jYXNlcy5qcyI+PC9zY3JpcHQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci1mdW5jdGlvbiBp
bXBvcnRfdGVzdCh0ZXN0Q2FzZSkgewotICBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gICAg
Y29uc3QgbXNnUHJvbWlzZSA9IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gewotICAgICAgbmF2aWdh
dG9yLnNlcnZpY2VXb3JrZXIub25tZXNzYWdlID0gcmVzb2x2ZTsKLSAgICB9KTsKLSAgICBhd2Fp
dCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHRlc3RDYXNlLnNjcmlwdFVSTCk7Ci0gICAg
dC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHRlc3RDYXNl
LnNjcmlwdFVSTCkpOwotICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IG5hdmlnYXRvci5z
ZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKAotICAgICAgdGVzdENhc2Uuc2NyaXB0VVJMLAotICAgICAg
eyBzY29wZTogdGVzdENhc2Uuc2NyaXB0VVJMLCB0eXBlOiAnbW9kdWxlJyB9KTsKLSAgICByZWdp
c3RyYXRpb24uaW5zdGFsbGluZy5wb3N0TWVzc2FnZSgKLSAgICAgICdTZW5kIG1lc3NhZ2UgZm9y
IHRlc3RzIGZyb20gbWFpbiBzY3JpcHQuJyk7Ci0gICAgY29uc3QgbXNnRXZlbnQgPSBhd2FpdCBt
c2dQcm9taXNlOwotICAgIGFzc2VydF9hcnJheV9lcXVhbHMobXNnRXZlbnQuZGF0YSwgdGVzdENh
c2UuZXhwZWN0YXRpb24pOwotICB9LCB0ZXN0Q2FzZS5kZXNjcmlwdGlvbik7Ci19Ci0KLXRlc3RD
YXNlcy5mb3JFYWNoKGltcG9ydF90ZXN0KTsKLTwvc2NyaXB0PgotPC9ib2R5PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdp
bi5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2EyY2U0MDQ5YWJlZjU4ZTdiNDMwMGY0
YzRmYjYyNjM3ZTk3NWZkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2lt
cG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwz
IEBACisKK0ZBSUwgaW1wb3J0U2NyaXB0cygpIHN1cHBvcnRzIGNyb3NzLW9yaWdpbiByZXF1ZXN0
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IE5ldHdvcmtFcnJvcjogQSBzZXJ2ZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGhvc3Ru
YW1lIGNvdWxkIG5vdCBiZSBmb3VuZC4iCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzcz
NzA4YTlmYmNlMzJhNmIxN2YyMmQ4OGI5ZmI2ZWJjMzU1MzcxMAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy5odG1s
CkBAIC0wLDAgKzEsMTggQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hhcnNldD0idXRmLTgi
PgorPHRpdGxlPlRlc3RzIGZvciBpbXBvcnRTY3JpcHRzOiBjcm9zcy1vcmlnaW48L3RpdGxlPgor
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxib2R5Pgor
PHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBzY29wZSA9ICdy
ZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luJzsKKyAgICBhd2FpdCBzZXJ2aWNl
X3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKKyAgICBsZXQgcmVnID0gYXdhaXQgbmF2aWdh
dG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoCisgICAgICAncmVzb3VyY2VzL2ltcG9ydC1zY3Jp
cHRzLWNyb3NzLW9yaWdpbi13b3JrZXIuc3ViLmpzJywgeyBzY29wZTogc2NvcGUgfSk7CisgICAg
dC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICAgIGFzc2VydF9ub3RfZXF1
YWxzKHJlZy5pbnN0YWxsaW5nLCBudWxsLCAnd29ya2VyIGlzIGluc3RhbGxpbmcnKTsKKyAgfSwg
J2ltcG9ydFNjcmlwdHMoKSBzdXBwb3J0cyBjcm9zcy1vcmlnaW4gcmVxdWVzdHMnKTsKKzwvc2Ny
aXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1w
cmVsb2FkL3Jlc291cmNlcy9jaHVua2VkLWVuY29kaW5nLXNjb3BlLnB5IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvbmF2aWdhdGlvbi1wcmVsb2FkL3Jlc291cmNlcy9jaHVua2VkLWVuY29kaW5nLXNjb3Bl
LnB5CmluZGV4IDkxMmY0M2QwMDQwMjI3OGQ1ODViZDEyM2RlNWZlMTFkMTBhYjFjMDQuLjY1OWM0
ZDhjZGYyNGU0ODE0MDhkOWNlYWNmYWQ5Y2ExZDU1MzczYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL25hdmlnYXRpb24tcHJlbG9hZC9yZXNvdXJjZXMvY2h1bmtlZC1lbmNvZGluZy1z
Y29wZS5weQorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXByZWxvYWQvcmVzb3Vy
Y2VzL2NodW5rZWQtZW5jb2Rpbmctc2NvcGUucHkKQEAgLTE0LDcgKzE0LDYgQEAgZGVmIG1haW4o
cmVxdWVzdCwgcmVzcG9uc2UpOgogICAgICAgICAgICAgcmVzcG9uc2Uud3JpdGVyLndyaXRlKHUi
JXNcbiVzXG4iICUgKGxlbihzdHIoaWR4KSksIGlkeCkpCiAgICAgICAgIGVsc2U6CiAgICAgICAg
ICAgICByZXNwb25zZS53cml0ZXIud3JpdGUodSIlc1xyXG4lc1xyXG4iICUgKGxlbihzdHIoaWR4
KSksIGlkeCkpCi0gICAgICAgIHJlc3BvbnNlLndyaXRlci5mbHVzaCgpCiAgICAgICAgIHRpbWUu
c2xlZXAoMC4wMDEpCiAKICAgICByZXNwb25zZS53cml0ZXIud3JpdGUodSIwXHJcblxyXG4iKQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC1yZXNvbHV0
aW9uLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVk
aXJlY3QtcmVzb2x1dGlvbi5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyZWI4M2Y0
ZjZlOGU4ZGJiYmNlOWQ0ZDYyZjBlNTZjYTBhYmQxYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVzb2x1dGlvbi5odHRwcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw1IEBACisKK1BBU1MgdGVzdCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVj
dAorUEFTUyB0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJlZGlyZWN0IHdpdGggQ2FjaGVTdG9yYWdlCitQ
QVNTIHRlc3QgcmVsYXRpdmUgb3BhcXVlcmVkaXJlY3Qgd2l0aCBjbG9uZQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJlc29sdXRpb24uaHR0cHMu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVzb2x1dGlvbi5o
dHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU5ZTFjYWZlYzM0ODRhODdmYmUxZjRiYTMxY2RiMmU3ZDNm
Yjk2MGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXJl
ZGlyZWN0LXJlc29sdXRpb24uaHR0cHMuaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURPQ1RZUEUg
aHRtbD4KKzx0aXRsZT5TZXJ2aWNlIFdvcmtlcjogTmF2aWdhdGlvbiBSZWRpcmVjdCBSZXNvbHV0
aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3Jp
cHQ+Cis8Ym9keT4KKzxzY3JpcHQ+CisKK2Z1bmN0aW9uIG1ha2VfYWJzb2x1dGUodXJsKSB7Cisg
IHJldHVybiBuZXcgVVJMKHVybCwgbG9jYXRpb24pLnRvU3RyaW5nKCk7Cit9CisKK2NvbnN0IHNj
cmlwdCA9ICdyZXNvdXJjZXMvZmV0Y2gtcmV3cml0ZS13b3JrZXIuanMnOworCitmdW5jdGlvbiBy
ZWRpcmVjdF9yZXN1bHRfdGVzdChzY29wZSwgZXhwZWN0ZWRfdXJsLCBkZXNjcmlwdGlvbikgewor
ICBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdh
aXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIoCisgICAgICAgICAgdCwg
c2NyaXB0LCBzY29wZSk7CisgICAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsKKyAgICAgICAgcmV0
dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOworICAgICAgfSkKKyAgICAg
IGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0aXZh
dGVkJyk7CisKKyAgICAgIC8vIFRoZSBuYXZpZ2F0aW9uIHRvIHxzY29wZXwgd2lsbCBiZSByZXNv
bHZlZCBieSBhIGZldGNoIHRvIHxyZWRpcmVjdF91cmx8CisgICAgICAvLyB3aGljaCByZXR1cm5z
IGEgcmVsYXRpdmUgTG9jYXRpb24gaGVhZGVyLiBJZiBpdCBpcyByZXNvbHZlZCByZWxhdGl2ZSB0
bworICAgICAgLy8gfHNjb3BlfCwgdGhlIHJlc3VsdCB3aWxsIGJlIG5hdmlnYXRlLXJlZGlyZWN0
LXJlc29sdXRpb24vYmxhbmsuaHRtbC4gSWYKKyAgICAgIC8vIHJlbGF0aXZlIHRvIHxyZWRpcmVj
dF91cmx8LCBpdCB3aWxsIGJlIHJlc291cmNlcy9ibGFuay5odG1sLiBUaGUgbGF0dGVyCisgICAg
ICAvLyBpcyBjb3JyZWN0LgorICAgICAgY29uc3QgaWZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUo
c2NvcGUpOworICAgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGlmcmFtZS5yZW1vdmUoKTsgfSk7
CisgICAgICBhc3NlcnRfZXF1YWxzKGlmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWYs
CisgICAgICAgICAgICAgICAgICAgIG1ha2VfYWJzb2x1dGUoZXhwZWN0ZWRfdXJsKSk7CisgIH0s
IGRlc2NyaXB0aW9uKTsKK30KKworLy8gfHJlZGlyZWN0X3VybHwgc2VydmVzIGEgcmVsYXRpdmUg
cmVkaXJlY3QgdG8gcmVzb3VyY2VzL2JsYW5rLmh0bWwuCitjb25zdCByZWRpcmVjdF91cmwgPSAn
cmVzb3VyY2VzL3JlZGlyZWN0LnB5P1JlZGlyZWN0PWJsYW5rLmh0bWwnOworCisvLyB8c2NvcGVf
YmFzZXwgZG9lcyBub3QgZXhpc3QgYnV0IHdpbGwgYmUgcmVwbGFjZWQgd2l0aCBhIGZldGNoIG9m
CisvLyB8cmVkaXJlY3RfdXJsfCBieSBmZXRjaC1yZXdyaXRlLXdvcmtlci5qcy4KK2NvbnN0IHNj
b3BlX2Jhc2UgPSAncmVzb3VyY2VzL3N1YmRpci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJlc29sdXRp
b24/JyArCisgICAgJ3JlZGlyZWN0LW1vZGU9bWFudWFsJnVybD0nICsKKyAgICBlbmNvZGVVUklD
b21wb25lbnQobWFrZV9hYnNvbHV0ZShyZWRpcmVjdF91cmwpKTsKKworLy8gV2hlbiB0aGUgU2Vy
dmljZSBXb3JrZXIgZm9yd2FyZHMgdGhlIHJlc3VsdCBvZiB8cmVkaXJlY3RfdXJsfCBhcyBhbgor
Ly8gb3BhcXVlcmVkaXJlY3QgcmVzcG9uc2UsIHRoZSByZWRpcmVjdCB1c2VzIHRoZSByZXNwb25z
ZSdzIFVSTCBsaXN0IGFzIHRoZQorLy8gYmFzZSBVUkwsIG5vdCB0aGUgcmVxdWVzdC4KK3JlZGly
ZWN0X3Jlc3VsdF90ZXN0KHNjb3BlX2Jhc2UsICdyZXNvdXJjZXMvYmxhbmsuaHRtbCcsCisgICAg
ICAgICAgICAgICAgICAgICAndGVzdCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVjdCcpOworCisvLyBU
aGUgcmVzcG9uc2UncyBiYXNlIFVSTCBzaG91bGQgYmUgcHJlc2VydmVkIGFjcm9zcyBDYWNoZVN0
b3JhZ2UgYW5kIGNsb25lLgorcmVkaXJlY3RfcmVzdWx0X3Rlc3Qoc2NvcGVfYmFzZSArICcmY2Fj
aGU9MScsICdyZXNvdXJjZXMvYmxhbmsuaHRtbCcsCisgICAgICAgICAgICAgICAgICAgICAndGVz
dCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVjdCB3aXRoIENhY2hlU3RvcmFnZScpOworcmVkaXJlY3Rf
cmVzdWx0X3Rlc3Qoc2NvcGVfYmFzZSArICcmY2xvbmU9MScsICdyZXNvdXJjZXMvYmxhbmsuaHRt
bCcsCisgICAgICAgICAgICAgICAgICAgICAndGVzdCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVjdCB3
aXRoIGNsb25lJyk7CisKKzwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDY0ZTdl
MjVjMjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUuLjU1ODk4MDVkOGQwMjU1MDFhZDlk
NWI4MjgzODRiOWQ5MWM1OTE1ZGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmln
YXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9u
YXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZB
SUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyBhc3NlcnRfdW5y
ZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZXhwZWN0
ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAwIFJlYWNoZWQgdW5yZWFjaGFibGUg
Y29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIGFz
c2VydF9ncmVhdGVyX3RoYW46IGV4cGVjdGVkIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAwIGJ1dCBn
b3QgMAogUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5l
dHdvcmsgZmFsbGJhY2sKIFBBU1MgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9u
IHRpbWluZyByZWRpcmVjdAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0
aW9uLXRpbWluZy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1p
bmcuaHR0cHMuaHRtbAppbmRleCAxM2I5ZWU0NzViMTg5YWYxMTIxYTY2MGZhOTRmODhjMmI1NjU0
MTIzLi42YjUxYTVjMmRhMjEzZWIyN2NmMGQ5ZmQ0MDFiN2M0OWI1MzQ5OTUwIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLmh0bWwKQEAgLTMyLDgxICsz
Miw0NSBAQCBmdW5jdGlvbiBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFtZSwgdXJsKSB7CiAKIGNvbnN0
IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL25hdmlnYXRpb24tdGltaW5nLXdvcmtlci5qcyc7CiAK
LXByb21pc2VfdGVzdCh0ID0+IHsKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICAgIGNv
bnN0IHNjb3BlID0gJ3Jlc291cmNlcy9lbXB0eS5odG1sJzsKLSAgICBsZXQgZnJhbWU7CisgICAg
Y29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRf
cmVnaXN0ZXIodCwgd29ya2VyX3VybCwgc2NvcGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4g
cmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwg
cmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKyAgICBjb25zdCBmcmFtZSA9
IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IGZyYW1l
LnJlbW92ZSgpKTsKIAotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9y
ZWdpc3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSkKLSAgICAgIC50aGVuKHIgPT4gewotICAgICAg
ICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgci5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7Ci0g
ICAgICB9KQotICAgICAgLnRoZW4oKCkgPT4gd2l0aF9pZnJhbWUoc2NvcGUpKQotICAgICAgLnRo
ZW4oZiA9PiB7Ci0gICAgICAgIGZyYW1lID0gZjsKLSAgICAgICAgcmV0dXJuIG5hdmlnYXRlX2lu
X2ZyYW1lKGZyYW1lLCAncmVzb3VyY2VzL2VtcHR5Lmh0bWwnKTsKLSAgICAgIH0pCi0gICAgICAu
dGhlbih0aW1pbmcgPT4gewotICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy53b3Jr
ZXJTdGFydCwgMCk7Ci0gICAgICAgIHZlcmlmeSh0aW1pbmcpOwotICAgICAgfSkKLSAgICAgIC5j
YXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4oKCkgPT4gewotICAgICAg
ICBpZiAoZnJhbWUpCi0gICAgICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgICAgcmV0dXJu
IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICAgICAgfSk7CisgICAgY29u
c3QgdGltaW5nID0gYXdhaXQgbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsIHNjb3BlKTsKKyAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy53b3JrZXJTdGFydCwgMCk7CisgICAgdmVyaWZ5KHRp
bWluZyk7CiB9LCAnU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZycp
OwogCi1wcm9taXNlX3Rlc3QodCA9PiB7Citwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKICAg
ICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvZW1wdHkuaHRtbD9uZXR3b3JrLWZhbGxiYWNrJzsK
LSAgICBsZXQgZnJhbWU7CisgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93
b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyX3VybCwgc2NvcGUpOworICAg
IHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgICAgYXdh
aXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQn
KTsKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgICB0LmFk
ZF9jbGVhbnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKIAotICAgIHJldHVybiBzZXJ2aWNlX3dv
cmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSkKLSAgICAg
IC50aGVuKHIgPT4gewotICAgICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgci5pbnN0YWxs
aW5nLCAnYWN0aXZhdGVkJyk7Ci0gICAgICB9KQotICAgICAgLnRoZW4oKCkgPT4gd2l0aF9pZnJh
bWUoc2NvcGUpKQotICAgICAgLnRoZW4oZiA9PiB7Ci0gICAgICAgIGZyYW1lID0gZjsKLSAgICAg
ICAgcmV0dXJuIG5hdmlnYXRlX2luX2ZyYW1lKGZyYW1lLCAncmVzb3VyY2VzL2VtcHR5Lmh0bWw/
bmV0d29yay1mYWxsYmFjaycpOwotICAgICAgfSkKLSAgICAgIC50aGVuKHRpbWluZyA9PiB7Ci0g
ICAgICAgIHZlcmlmeSh0aW1pbmcpOwotICAgICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRf
cmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4oKCkgPT4gewotICAgICAgICBpZiAoZnJhbWUpCi0g
ICAgICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgICAgcmV0dXJuIHNlcnZpY2Vfd29ya2Vy
X3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICAgICAgfSk7CisgICAgY29uc3QgdGltaW5nID0gYXdh
aXQgbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsIHNjb3BlKTsKKyAgICB2ZXJpZnkodGltaW5nKTsK
IH0sICdTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIG5ldHdvcmsg
ZmFsbGJhY2snKTsKIAotcHJvbWlzZV90ZXN0KHQgPT4geworcHJvbWlzZV90ZXN0KGFzeW5jICh0
KSA9PiB7CiAgICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL3JlZGlyZWN0LnB5P1JlZGlyZWN0
PWVtcHR5Lmh0bWwnOwotICAgIGxldCBmcmFtZTsKKyAgICBjb25zdCByZWdpc3RyYXRpb24gPSBh
d2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJfdXJs
LCBzY29wZSk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3Rl
cigpKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGlu
ZywgJ2FjdGl2YXRlZCcpOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2Nv
cGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gZnJhbWUucmVtb3ZlKCkpOwogCi0gICAgcmV0
dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlcl91cmws
IHNjb3BlKQotICAgICAgLnRoZW4ociA9PiB7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0
ZSh0LCByLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICAgIH0pCi0gICAgICAudGhlbigo
KSA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJh
bWUgPSBmOwotICAgICAgICByZXR1cm4gbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsICdyZXNvdXJj
ZXMvcmVkaXJlY3QucHk/UmVkaXJlY3Q9ZW1wdHkuaHRtbCcpOwotICAgICAgfSkKLSAgICAgIC50
aGVuKHRpbWluZyA9PiB7Ci0gICAgICAgIHZlcmlmeSh0aW1pbmcpOwotICAgICAgICAvLyBBZGRp
dGlvbmFsIGNoZWNrcyBmb3IgcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLgotICAgICAgICBhc3NlcnRf
dHJ1ZSh0aW1pbmcucmVkaXJlY3RTdGFydCA8PSB0aW1pbmcucmVkaXJlY3RFbmQsCi0gICAgICAg
ICAgICAnRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCA8PSByZWRpcmVjdEVuZCcpOwotICAgICAgICBh
c3NlcnRfdHJ1ZSh0aW1pbmcucmVkaXJlY3RFbmQgPD0gdGltaW5nLmZldGNoU3RhcnQsCi0gICAg
ICAgICAgICAnRXhwZWN0ZWQgcmVkaXJlY3RFbmQgPD0gZmV0Y2hTdGFydCcpOwotICAgICAgfSkK
LSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4oKCkgPT4g
ewotICAgICAgICBpZiAoZnJhbWUpCi0gICAgICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAg
ICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICAgICAgfSk7
CisgICAgY29uc3QgdGltaW5nID0gYXdhaXQgbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsIHNjb3Bl
KTsKKyAgICB2ZXJpZnkodGltaW5nKTsKKyAgICAvLyBBZGRpdGlvbmFsIGNoZWNrcyBmb3IgcmVk
aXJlY3RlZCBuYXZpZ2F0aW9uLgorICAgIGFzc2VydF90cnVlKHRpbWluZy5yZWRpcmVjdFN0YXJ0
IDw9IHRpbWluZy5yZWRpcmVjdEVuZCwKKyAgICAgICAgJ0V4cGVjdGVkIHJlZGlyZWN0U3RhcnQg
PD0gcmVkaXJlY3RFbmQnKTsKKyAgICBhc3NlcnRfdHJ1ZSh0aW1pbmcucmVkaXJlY3RFbmQgPD0g
dGltaW5nLmZldGNoU3RhcnQsCisgICAgICAgICdFeHBlY3RlZCByZWRpcmVjdEVuZCA8PSBmZXRj
aFN0YXJ0Jyk7CiB9LCAnU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWlu
ZyByZWRpcmVjdCcpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9u
ZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOWY5MjkxMTI0YzgwNzAzYmYzZTFjYTI2MWYzYWI2ODdhNDg2ZmQ0NAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKKworCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwg
bWVzc2FnZSA9IG51bGwKKworVElNRU9VVCBOZXN0ZWQgYmxvYiBVUkwgd29ya2VycyBzaG91bGQg
YmUgaW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4gVGVzdCB0aW1lZCBvdXQKK05PVFJV
TiBOZXN0ZWQgd29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJMIHdvcmtlciBzaG91bGQgYmUg
aW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4KK05PVFJVTiBOZXN0ZWQgYmxvYiBVUkwg
d29ya2VyIGNyZWF0ZWQgZnJvbSBhIHdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYnkgYSBz
ZXJ2aWNlIHdvcmtlci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmVzdGVkLWJs
b2ItdXJsLXdvcmtlcnMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25lc3RlZC1ibG9i
LXVybC13b3JrZXJzLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI2OWNiYjcwMWZhYmMyZmFhNzQ2
ZjZlZDQ3ZmJhOGZhOWQ0MjNjOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPlNlcnZpY2UgV29ya2Vy
OiBuZXN0ZWQgYmxvYiBVUkwgd29ya2VyIGNsaWVudHM8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxib2R5PgorPHNjcmlwdD4KKworY29u
c3QgU0NSSVBUID0gJ3Jlc291cmNlcy9zaW1wbGUtaW50ZXJjZXB0LXdvcmtlci5qcyc7Citjb25z
dCBTQ09QRSA9ICdyZXNvdXJjZXMvJzsKK2NvbnN0IFJFU09VUkNFID0gJ3Jlc291cmNlcy9zaW1w
bGUudHh0JzsKKworcHJvbWlzZV90ZXN0KCh0KSA9PiB7CisgIHJldHVybiBydW5UZXN0KHQsICdy
ZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHRtbCcpOworfSwgJ05lc3RlZCBibG9i
IFVSTCB3b3JrZXJzIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLicp
OworCitwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNl
cy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRtbCcpOworfSwg
J05lc3RlZCB3b3JrZXIgY3JlYXRlZCBmcm9tIGEgYmxvYiBVUkwgd29ya2VyIHNob3VsZCBiZSBp
bnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLicpOworCitwcm9taXNlX3Rlc3QoKHQpID0+
IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vy
LWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbCcpOworfSwgJ05lc3RlZCBibG9iIFVSTCB3b3JrZXIg
Y3JlYXRlZCBmcm9tIGEgd29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ug
d29ya2VyLicpOworCithc3luYyBmdW5jdGlvbiBydW5UZXN0KHQsIGlmcmFtZV91cmwpIHsKKyAg
Y29uc3QgcmVnID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIo
dCwgU0NSSVBULCBTQ09QRSk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiByZWcudW5yZWdpc3Rlcigp
KTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQn
KTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKGlmcmFtZV91cmwpOworICB0
LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3ZlKCkpOworICBhc3NlcnRfbm90X2VxdWFscyhm
cmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCisg
ICAgICAgICAgICAgICAgICAgIG51bGwsICdmcmFtZSBzaG91bGQgYmUgY29udHJvbGxlZCcpOwor
CisgIGNvbnN0IHJlc3BvbnNlX3RleHQgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNo
X2luX3dvcmtlcihSRVNPVVJDRSk7CisgIGFzc2VydF9lcXVhbHMocmVzcG9uc2VfdGV4dCwgJ2lu
dGVyY2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyJywKKyAgICAgICAgICAgICAgICAnZmV0Y2goKSBz
aG91bGQgYmUgaW50ZXJjZXB0ZWQuJyk7Cit9CisKKzwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQtaW4tbW9kdWxlLmFueS5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQtaW4tbW9kdWxlLmFueS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC1p
bi1tb2R1bGUuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQtaW4tbW9kdWxlLmFueS5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LWluLW1vZHVsZS5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjdj
MmVmMzdiOGI5MzhkZjliOGNjYWUxMjUxMWRmYmU1OGQ4ZTY5NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LWluLW1vZHVsZS5hbnkuanMKQEAg
LTAsMCArMSw3IEBACisvLyBNRVRBOiBnbG9iYWw9c2VydmljZXdvcmtlci1tb2R1bGUKKworLy8g
VGhpcyBpcyBpbXBvcnRlZCB0byBlbnN1cmUgaW1wb3J0KCcuL2Jhc2ljLW1vZHVsZS0yLmpzJykg
ZmFpbHMgZXZlbiBpZgorLy8gaXQgaGFzIGJlZW4gcHJldmlvdXNseSBzdGF0aWNhbGx5IGltcG9y
dGVkLgoraW1wb3J0ICcuL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUtMi5qcyc7CisKK2ltcG9ydCAn
Li9yZXNvdXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMnOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQtaW4tbW9kdWxlLmFueS53b3JrZXIuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LWluLW1vZHVsZS5hbnkud29ya2VyLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LWlu
LW1vZHVsZS5hbnkud29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMg
cmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxh
dGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1YjM3MGI3MDk0YmY4Zjky
Y2MzNDc2OTNjOWFjNWExZmE2NjQ4NDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9uby1keW5hbWljLWltcG9ydC5hbnkuanMKQEAgLTAsMCArMSwzIEBACisvLyBNRVRBOiBn
bG9iYWw9c2VydmljZXdvcmtlcgorCitpbXBvcnRTY3JpcHRzKCdyZXNvdXJjZXMvbm8tZHluYW1p
Yy1pbXBvcnQuanMnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMt
aW1wb3J0LmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L25vLWR5bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5jNzEwOWRiMzQ4MGY2ZTkzMGY2NzQ2YTA4NDczNzE1ODU0MjdmZWFjCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3
b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorCitQQVNTIE1vZHVsZSBVUkwKK1BB
U1MgQW5vdGhlciBtb2R1bGUgVVJMCitQQVNTIE1vZHVsZSBkYXRhOiBVUkwKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNld29y
a2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1
NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1w
b3J0LmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUg
aXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVt
cGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcGVyZm9ybWFuY2UtdGltZWxpbmUuaHR0cHMuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3BlcmZvcm1hbmNlLXRpbWVsaW5lLmh0dHBzLmh0bWwKaW5kZXggMWZlMTlk
YTUzYmU2YzQ2MGNhZTVmMDY5Nzk0YmJkZWUzZjRhMGRhOC4uZTU2ZTZmZTQxNmZmMjE1MzQxYmE5
YjZkZjA4OGYxMTFmOTY0NTYyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcGVyZm9y
bWFuY2UtdGltZWxpbmUuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9wZXJmb3Jt
YW5jZS10aW1lbGluZS5odHRwcy5odG1sCkBAIC0xMiw3ICsxMiw3IEBAIHNlcnZpY2Vfd29ya2Vy
X3Rlc3QoCiAvLyBpcyBpbmNsdWRlZCBpbiB0aGUgUGVyZm9ybWFuY2UgQVBJJ3MgdGltaW5nIGlu
Zm9ybWF0aW9uLgogcHJvbWlzZV90ZXN0KHQgPT4gewogICBsZXQgc2NyaXB0ID0gJ3Jlc291cmNl
cy9lbXB0eS1idXQtc2xvdy13b3JrZXIuanMnOwotICBsZXQgc2NvcGUgPSAncmVzb3VyY2VzL2R1
bW15LnR4dD9zbG93LXN3LXRpbWluZyc7CisgIGxldCBzY29wZSA9ICdyZXNvdXJjZXMvc2FtcGxl
LnR4dD9zbG93LXN3LXRpbWluZyc7CiAgIGxldCB1cmwgPSBuZXcgVVJMKHNjb3BlLCB3aW5kb3cu
bG9jYXRpb24pLmhyZWY7CiAgIGxldCBzbG93VVJMID0gdXJsICsgJyZzbG93JzsKICAgbGV0IGZy
YW1lOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVkaXJlY3RlZC1yZXNwb25zZS5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNl
Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBmOGEyNTM1OTBlMTk5Y2VjYjFkMGM2NjI3ZmExMjZm
Y2NjZWI0MWIzLi4zYWZkNzJiYTdmNWJmMDFjNzdiNjNlMmEwOGYxOTVlM2ZjYjExMmUzIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtMTQsNiArMTQsMTIgQEAgUEFTUyBtb2RlOiAibWFudWFsIiwgbm8g
bW9kZSBjaGFuZ2UKIFBBU1MgbW9kZTogImZvbGxvdyIsIGdlbmVyYXRlZCByZWRpcmVjdCByZXNw
b25zZQogUEFTUyBtb2RlOiAiZXJyb3IiLCBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UKIFBB
U1MgbW9kZTogIm1hbnVhbCIsIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZQorUEFTUyBtb2Rl
OiAiZm9sbG93IiwgbWFudWFsbHktZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlCitQQVNTIG1v
ZGU6ICJlcnJvciIsIG1hbnVhbGx5LWdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZQorUEFTUyBt
b2RlOiAibWFudWFsIiwgbWFudWFsbHktZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlCitQQVNT
IG1vZGU6ICJmb2xsb3ciLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UKK1BB
U1MgbW9kZTogImVycm9yIiwgZ2VuZXJhdGVkIHJlbGF0aXZlIHJlZGlyZWN0IHJlc3BvbnNlCitG
QUlMIG1vZGU6ICJtYW51YWwiLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2Ug
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBUaGUgVVJMIGNhbuKAmXQgYmUgc2hvd24iCiBQQVNTIEZldGNoIHNob3VsZCBmb2xs
b3cgdGhlIHJlZGlyZWN0IHJlc3BvbnNlIDIwIHRpbWVzCiBQQVNTIEZldGNoIHNob3VsZCBub3Qg
Zm9sbG93IHRoZSByZWRpcmVjdCByZXNwb25zZSAyMSB0aW1lcy4KIFBBU1MgVGhlIFVSTCBmb3Ig
dGhlIHNlcnZpY2Ugd29ya2VyIHJlZGlyZWN0ZWQgcmVxdWVzdCBzaG91bGQgYmUgcHJvcGFnYXRl
ZCB0byByZXNwb25zZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQt
cmVzcG9uc2UuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQtcmVzcG9u
c2UuaHR0cHMuaHRtbAppbmRleCA3MjYyYWYzNmFiYTY5Nzc2MzhjY2NjMzQxZDY5MzU5NzljYzg2
YWY2Li43MWIzNWQwZTEyMDUwNjIzZDY1MGNhODIyYzc4MDAzN2Q4MjU4NDIyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBzLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVkaXJlY3RlZC1yZXNwb25zZS5odHRwcy5odG1sCkBAIC0yNjcs
NyArMjY3LDcgQEAgcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKIHByb21pc2Vf
dGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAgICAgLnRoZW4oKCkgPT4gewogICAgICAgY29u
c3QgdXJsID0gaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0aCgpICsKLSAgICAg
ICAgICAgICAgICAgICdkdW1teT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJM
KSArCisgICAgICAgICAgICAgICAgICAnc2FtcGxlP3VybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50
KFRBUkdFVF9VUkwpICsKICAgICAgICAgICAgICAgICAgICcmb3JpZ2luYWwtcmVkaXJlY3QtbW9k
ZT1mb2xsb3cmc3c9Z2VuJzsKICAgICAgIHJldHVybiByZWRpcmVjdGVkX3Rlc3Qoe3VybDogdXJs
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2hfb3B0aW9uOiB7cmVkaXJlY3Q6
ICdmb2xsb3cnfSwKQEAgLTI4MSw3ICsyODEsNyBAQCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9h
bmRfY2xlYW4oKQogcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKICAgICAudGhl
bigoKSA9PiB7CiAgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsg
YmFzZV9wYXRoKCkgKwotICAgICAgICAgICAgICAgICAgJ2R1bW15P3VybD0nICsgZW5jb2RlVVJJ
Q29tcG9uZW50KFRBUkdFVF9VUkwpICsKKyAgICAgICAgICAgICAgICAgICdzYW1wbGU/dXJsPScg
KyBlbmNvZGVVUklDb21wb25lbnQoVEFSR0VUX1VSTCkgKwogICAgICAgICAgICAgICAgICAgJyZv
cmlnaW5hbC1yZWRpcmVjdC1tb2RlPWVycm9yJnN3PWdlbic7CiAgICAgICByZXR1cm4gcHJvbWlz
ZV9yZWplY3RzX2pzKAogICAgICAgICAgIHQsIGZyYW1lLmNvbnRlbnRXaW5kb3cuVHlwZUVycm9y
LApAQCAtMjk2LDggKzI5Niw4IEBAIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigp
CiBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQogICAgIC50aGVuKCgpID0+IHsK
ICAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgo
KSArCi0gICAgICAgICAgICAgICAgICAnZHVtbXk/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQo
VEFSR0VUX1VSTCkgKwotICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2Rl
PWZvbGxvdyZzdz1nZW4nOworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9JyArIGVuY29k
ZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisgICAgICAgICAgICAgICAgICAnJm9yaWdpbmFs
LXJlZGlyZWN0LW1vZGU9bWFudWFsJnN3PWdlbic7CiAgICAgICByZXR1cm4gcmVkaXJlY3RlZF90
ZXN0KHt1cmw6IHVybCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZldGNoX29wdGlv
bjoge3JlZGlyZWN0OiAnbWFudWFsJ30sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
ZXRjaF9tZXRob2Q6IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2gsCkBAIC0zMDcsNiArMzA3LDEw
MiBAQCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQogICAgIH0pLAogICAnbW9k
ZTogIm1hbnVhbCIsIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZScpOwogCisvLyA9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisvLyBUZXN0
cyBmb3IgcmVxdWVzdHMgdGhhdCBhcmUgaW4tc2NvcGUgb2YgdGhlIHNlcnZpY2Ugd29ya2VyLiBU
aGUgc2VydmljZQorLy8gd29ya2VyIHJldHVybnMgYSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9u
c2UgbWFudWFsbHkgd2l0aCB0aGUgUmVzcG9uc2UKKy8vIGNvbnN0cnVjdG9yLgorLy8gPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorcHJvbWlz
ZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9PiB7CisgICAgICBj
b25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKworICAg
ICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRf
VVJMKSArCisgICAgICAgICAgICAgICAgICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1vZGU9Zm9sbG93
JnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJuIHJlZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmws
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9vcHRpb246IHtyZWRpcmVjdDog
J2ZvbGxvdyd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2hfbWV0aG9kOiBm
cmFtZS5jb250ZW50V2luZG93LmZldGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZXhwZWN0ZWRfdHlwZTogJ2Jhc2ljJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4
cGVjdGVkX3JlZGlyZWN0ZWQ6IHRydWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl
eHBlY3RlZF9pbnRlcmNlcHRlZF91cmxzOiBbdXJsLCBUQVJHRVRfVVJMXX0pCisgICAgfSksCisg
ICdtb2RlOiAiZm9sbG93IiwgbWFudWFsbHktZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlJyk7
CisKK3Byb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCisgICAgLnRoZW4oKCkgPT4g
eworICAgICAgY29uc3QgdXJsID0gaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0
aCgpICsKKyAgICAgICAgICAgICAgICAgICdzYW1wbGU/dXJsPScgKyBlbmNvZGVVUklDb21wb25l
bnQoVEFSR0VUX1VSTCkgKworICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1t
b2RlPWVycm9yJnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19q
cygKKyAgICAgICAgICB0LCBmcmFtZS5jb250ZW50V2luZG93LlR5cGVFcnJvciwKKyAgICAgICAg
ICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKHVybCwge3JlZGlyZWN0OiAnZXJyb3InfSksCisg
ICAgICAgICAgJ1RoZSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UgZnJvbSB0aGUgc2Vydmlj
ZSB3b3JrZXIgc2hvdWxkICcgKworICAgICAgICAgICdiZSB0cmVhdGVkIGFzIGFuIGVycm9yIHdo
ZW4gdGhlIHJlZGlyZWN0IGZsYWcgb2YgcmVxdWVzdCB3YXMnICsKKyAgICAgICAgICAnIFwnZXJy
b3JcJy4nKQorICAgICAgICAudGhlbigoKSA9PiBjaGVja19pbnRlcmNlcHRlZF91cmxzKFt1cmxd
KSk7CisgICAgfSksCisgICdtb2RlOiAiZXJyb3IiLCBtYW51YWxseS1nZW5lcmF0ZWQgcmVkaXJl
Y3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAg
ICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJ
TiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9JyArIGVu
Y29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisgICAgICAgICAgICAgICAgICAnJm9yaWdp
bmFsLXJlZGlyZWN0LW1vZGU9bWFudWFsJnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJuIHJl
ZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
ZXRjaF9vcHRpb246IHtyZWRpcmVjdDogJ21hbnVhbCd9LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZmV0Y2hfbWV0aG9kOiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfdHlwZTogJ29wYXF1ZXJlZGlyZWN0JywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkX3JlZGlyZWN0ZWQ6IGZhbHNl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfaW50ZXJjZXB0ZWRfdXJs
czogW3VybF19KQorICAgIH0pLAorICAnbW9kZTogIm1hbnVhbCIsIG1hbnVhbGx5LWdlbmVyYXRl
ZCByZWRpcmVjdCByZXNwb25zZScpOworCisvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09CisvLyBUZXN0cyBmb3IgcmVxdWVzdHMgdGhhdCBh
cmUgaW4tc2NvcGUgb2YgdGhlIHNlcnZpY2Ugd29ya2VyLiBUaGUgc2VydmljZQorLy8gd29ya2Vy
IHJldHVybnMgYSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2Ugd2l0aCBhIHJlbGF0aXZlIGxv
Y2F0aW9uIGhlYWRlci4KKy8vIEdlbmVyYXRlZCByZXNwb25zZXMgZG8gbm90IGhhdmUgVVJMcywg
c28gdGhpcyBzaG91bGQgZmFpbCB0byByZXNvbHZlLgorLy8gPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorcHJvbWlzZV90ZXN0KHQgPT4gc2V0
dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0
X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAg
J3NhbXBsZT91cmw9YmxhbmsuaHRtbCcgKworICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1y
ZWRpcmVjdC1tb2RlPWZvbGxvdyZzdz1nZW4tbWFudWFsJzsKKyAgICAgIHJldHVybiBwcm9taXNl
X3JlamVjdHNfanMoCisgICAgICAgICAgdCwgZnJhbWUuY29udGVudFdpbmRvdy5UeXBlRXJyb3Is
CisgICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCh1cmwsIHtyZWRpcmVjdDogJ2Zv
bGxvdyd9KSwKKyAgICAgICAgICAnRm9sbG93aW5nIHRoZSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVz
cG9uc2UgZnJvbSB0aGUgc2VydmljZSB3b3JrZXIgJysKKyAgICAgICAgICAnc2hvdWxkIHJlc3Vs
dCBmYWlsLicpCisgICAgICAgIC50aGVuKCgpID0+IGNoZWNrX2ludGVyY2VwdGVkX3VybHMoW3Vy
bF0pKTsKKyAgICB9KSwKKyAgJ21vZGU6ICJmb2xsb3ciLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVk
aXJlY3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkK
KyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09S
SUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9Ymxh
bmsuaHRtbCcgKworICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWVy
cm9yJnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAg
ICAgICAgICB0LCBmcmFtZS5jb250ZW50V2luZG93LlR5cGVFcnJvciwKKyAgICAgICAgICBmcmFt
ZS5jb250ZW50V2luZG93LmZldGNoKHVybCwge3JlZGlyZWN0OiAnZXJyb3InfSksCisgICAgICAg
ICAgJ1RoZSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UgZnJvbSB0aGUgc2VydmljZSB3b3Jr
ZXIgc2hvdWxkICcgKworICAgICAgICAgICdiZSB0cmVhdGVkIGFzIGFuIGVycm9yIHdoZW4gdGhl
IHJlZGlyZWN0IGZsYWcgb2YgcmVxdWVzdCB3YXMnICsKKyAgICAgICAgICAnIFwnZXJyb3JcJy4n
KQorICAgICAgICAudGhlbigoKSA9PiBjaGVja19pbnRlcmNlcHRlZF91cmxzKFt1cmxdKSk7Cisg
ICAgfSksCisgICdtb2RlOiAiZXJyb3IiLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVz
cG9uc2UnKTsKKworcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhl
bigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsg
YmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9YmxhbmsuaHRtbCcg
KworICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPW1hbnVhbCZzdz1n
ZW4tbWFudWFsJzsKKyAgICAgIHJldHVybiByZWRpcmVjdGVkX3Rlc3Qoe3VybDogdXJsLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2hfb3B0aW9uOiB7cmVkaXJlY3Q6ICdtYW51
YWwnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZldGNoX21ldGhvZDogZnJhbWUu
Y29udGVudFdpbmRvdy5mZXRjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVj
dGVkX3R5cGU6ICdvcGFxdWVyZWRpcmVjdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBleHBlY3RlZF9yZWRpcmVjdGVkOiBmYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGV4cGVjdGVkX2ludGVyY2VwdGVkX3VybHM6IFt1cmxdfSkKKyAgICB9KSwKKyAgJ21vZGU6
ICJtYW51YWwiLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UnKTsKKwogLy8g
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQog
Ly8gVGVzdHMgZm9yIHJlcXVlc3RzIHRoYXQgYXJlIGluLXNjb3BlIG9mIHRoZSBzZXJ2aWNlIHdv
cmtlci4gVGhlIHNlcnZpY2UKIC8vIHdvcmtlciByZXR1cm5zIGEgZ2VuZXJhdGVkIHJlZGlyZWN0
IHJlc3BvbnNlLiBBbmQgdGhlIGZldGNoIGZvbGxvd3MgdGhlCkBAIC0zMTksNyArNDE1LDcgQEAg
cHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKICAgICAgIC8vIFNvIGZldGNoIGNh
biBmb2xsb3cgdGhlIHJlZGlyZWN0IHJlc3BvbnNlIDIwIHRpbWVzLgogICAgICAgbGV0IHVybHMg
PSBbVEFSR0VUX1VSTF07CiAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDIwOyArK2kpIHsKLSAg
ICAgICAgdXJscy51bnNoaWZ0KGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyAnL2R1bW15P3N3
PWdlbiZ1cmw9JyArCisgICAgICAgIHVybHMudW5zaGlmdChob3N0X2luZm9bJ0hUVFBTX09SSUdJ
TiddICsgJy9zYW1wbGU/c3c9Z2VuJnVybD0nICsKICAgICAgICAgICAgICAgICAgICAgZW5jb2Rl
VVJJQ29tcG9uZW50KHVybHNbMF0pKTsKIAogICAgICAgfQpAQCAtMzM5LDcgKzQzNSw3IEBAIHBy
b21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAgICAgICAvLyBuZXR3b3JrIGVycm9y
LiIgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtcmVkaXJlY3QtZmV0Y2gKICAg
ICAgIC8vIFNvIGZldGNoIGNhbid0IGZvbGxvdyB0aGUgcmVkaXJlY3QgcmVzcG9uc2UgMjEgdGlt
ZXMuCiAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDIxOyArK2kpIHsKLSAgICAgICAgdXJscy51
bnNoaWZ0KGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyAnL2R1bW15P3N3PWdlbiZ1cmw9JyAr
CisgICAgICAgIHVybHMudW5zaGlmdChob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgJy9zYW1w
bGU/c3c9Z2VuJnVybD0nICsKICAgICAgICAgICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50
KHVybHNbMF0pKTsKIAogICAgICAgfQpAQCAtMzYwLDcgKzQ1Niw3IEBAIHByb21pc2VfdGVzdCh0
ID0+IHNldHVwX2FuZF9jbGVhbigpCiAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09CiBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xl
YW4oKQogICAgIC50aGVuKCgpID0+IHsKLSAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRU
UFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArICdkdW1teT91cmw9JyArCisgICAgICBjb25zdCB1
cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKyAnc2FtcGxlP3Vy
bD0nICsKICAgICAgICAgICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSAr
JyZzdz1mZXRjaC11cmwnOwogICAgICAgcmV0dXJuIHJlZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmws
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9vcHRpb246IHt9LApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItcG9saWN5LWhlYWRlci5odHRwcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBz
LWV4cGVjdGVkLnR4dAppbmRleCBlYjYzNmYwZDA0OWFmZTllZDQ1MDMyMTYwNzJjOWViN2IxM2Q0
NWRhLi5hMmQ0NzM2N2QzMTVhZjczOTI0NGUxMDJlMjliYWJjNzk3MzIxZWMyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDUgQEAKIAotUEFTUyBJbml0aWFsaXplIGdsb2JhbCBz
dGF0ZSAoc2VydmljZSB3b3JrZXIgcmVnaXN0cmF0aW9uKQogUEFTUyBSZWZlcnJlciBmb3IgYSBt
YWluIHJlc291cmNlIHJlZGlyZWN0ZWQgd2l0aCByZWZlcnJlci1wb2xpY3kgKG9yaWdpbikgc2hv
dWxkIG9ubHkgaGF2ZSBvcmlnaW4uCitQQVNTIFJlZmVycmVyIGZvciBhIG1haW4gcmVzb3VyY2Ug
cmVkaXJlY3RlZCB3aXRoIGEgbW9kdWxlIHNjcmlwdCB3aXRoIHJlZmVycmVyLXBvbGljeSAob3Jp
Z2luKSBzaG91bGQgb25seSBoYXZlIG9yaWdpbi4KIFBBU1MgUmVmZXJyZXIgZm9yIGZldGNoIHJl
cXVlc3RzIGluaXRpYXRlZCBmcm9tIGEgc2VydmljZSB3b3JrZXIgd2l0aCByZWZlcnJlci1wb2xp
Y3kgKG9yaWdpbikgc2hvdWxkIG9ubHkgaGF2ZSBvcmlnaW4uCi1QQVNTIFJlbW92ZSByZWdpc3Ry
YXRpb24gYXMgYSBjbGVhbnVwCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVy
cmVyLXBvbGljeS1oZWFkZXIuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVy
LXBvbGljeS1oZWFkZXIuaHR0cHMuaHRtbAppbmRleCAwNWQ3NzNlMzE0NGRjYTJjNzYzOWU0ZWY1
MjBhNTVkMGVhY2Y2NzVkLi43ODQzNDNlNmQ4ZjFmYzg2NGFmOTE0NTUzOWQzZjNmMmYwZDNiMjYx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0
dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItcG9saWN5LWhlYWRlci5o
dHRwcy5odG1sCkBAIC0xMywxMSArMTMsOSBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAg
ICAgY29uc3QgcmVnaXN0cmF0aW9uID0KICAgICAgICAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5y
ZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgU0NSSVBULCBTQ09QRSk7CiAgICAgYXdhaXQgd2FpdF9m
b3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICBw
cm9taXNlX3Rlc3QoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSwKKyAgICB0LmFkZF9j
bGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCksCiAgICAgICAgICAgICAgICAg
ICdSZW1vdmUgcmVnaXN0cmF0aW9uIGFzIGEgY2xlYW51cCcpOwotfSwgJ0luaXRpYWxpemUgZ2xv
YmFsIHN0YXRlIChzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24pJyk7CiAKLXByb21pc2VfdGVz
dChhc3luYyB0ID0+IHsKICAgICBjb25zdCBmdWxsX3Njb3BlX3VybCA9IG5ldyBVUkwoU0NPUEUs
IGxvY2F0aW9uLmhyZWYpOwogICAgIGNvbnN0IHJlZGlyZWN0X3RvID0gYCR7ZnVsbF9zY29wZV91
cmwuaHJlZn0/aWdub3JlPXRydWVgOwogICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJh
bWUoCkBAIC0zMCw2ICsyOCwzMCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgICAnc2hv
dWxkIG9ubHkgaGF2ZSBvcmlnaW4uJyk7CiAKIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
ICBjb25zdCByZWdpc3RyYXRpb24gPQorICAgICAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJl
Z2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BFLCBge3R5cGU6ICdtb2R1bGUnfWAp
OworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAn
YWN0aXZhdGVkJyk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdp
c3RlcigpLAorICAgICAgICAgICAgICAgICAnUmVtb3ZlIHJlZ2lzdHJhdGlvbiBhcyBhIGNsZWFu
dXAnKTsKKworICAgIGNvbnN0IGZ1bGxfc2NvcGVfdXJsID0gbmV3IFVSTChTQ09QRSwgbG9jYXRp
b24uaHJlZik7CisgICAgY29uc3QgcmVkaXJlY3RfdG8gPSBgJHtmdWxsX3Njb3BlX3VybC5ocmVm
fT9pZ25vcmU9dHJ1ZWA7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZSgKKyAg
ICAgICAgYCR7U0NPUEV9P3BpcGU9c3RhdHVzKDMwMil8aGVhZGVyKExvY2F0aW9uLCR7cmVkaXJl
Y3RfdG99KXxgICsKKyAgICAgICAgJ2hlYWRlcihSZWZlcnJlci1Qb2xpY3ksb3JpZ2luKScpOwor
ICAgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudERvY3VtZW50LnJlZmVycmVyLAorICAgICAg
ICAgICAgICAgICAgZnVsbF9zY29wZV91cmwub3JpZ2luICsgJy8nKTsKKyAgICB0LmFkZF9jbGVh
bnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKK30sICdSZWZlcnJlciBmb3IgYSBtYWluIHJlc291
cmNlIHJlZGlyZWN0ZWQgd2l0aCBhIG1vZHVsZSBzY3JpcHQgd2l0aCByZWZlcnJlci1wb2xpY3kg
KG9yaWdpbikgJyArCisgICAnc2hvdWxkIG9ubHkgaGF2ZSBvcmlnaW4uJyk7CisKK3Byb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCByZWdpc3RyYXRpb24gPQorICAgICAgICBhd2Fp
dCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BF
KTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywg
J2FjdGl2YXRlZCcpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVn
aXN0ZXIoKSwKKyAgICAgICAgICAgICAgICAgJ1JlbW92ZSByZWdpc3RyYXRpb24gYXMgYSBjbGVh
bnVwJyk7CisKICAgICBjb25zdCBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CiAgICAgY29u
c3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShTQ09QRSk7CiAgICAgY29uc3QgY2hhbm5lbCA9
IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVm
ZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZmVycmVyLXRvcGxldmVsLXNjcmlwdC1mZXRjaC5odHRwcy1leHBlY3RlZC50
eHQKaW5kZXggNGYyNzFjZjdmODllOTNiNmQ5MDAyN2IwOGExYjdlMzZjMzVmZTM2NC4uOTZhNzZk
OTZiMmY4NTJiZDBjM2Y3YzE5NzY5OTk4Zjc4OWI4ZGM4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2gu
aHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNCBAQAogCiBQQVNTIFJlZmVycmVyIG9mIHRo
ZSB0b3AtbGV2ZWwgc2NyaXB0IGZldGNoIHNob3VsZCBiZSB0aGUgZG9jdW1lbnQgVVJMCitQQVNT
IFJlZmVycmVyIG9mIHRoZSBtb2R1bGUgc2NyaXB0IGZldGNoIHNob3VsZCBiZSB0aGUgZG9jdW1l
bnQgVVJMCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXRvcGxldmVs
LXNjcmlwdC1mZXRjaC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9w
bGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwKaW5kZXggMWE5YmNmMzIzZDBiOWI5OTMwYzcw
ZmQ4Y2FiZTBjYTU2NTNhMjJlYy4uNjVjNjBhMTFkYjIwYWFiY2U3NjZiNGI0MTRhMzVjYjNkZGZm
ZDQ2NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2Ny
aXB0LWZldGNoLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9w
bGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwKQEAgLTM5LDQgKzM5LDI2IEBAIHByb21pc2Vf
dGVzdChhc3luYyAodCkgPT4gewogICBhc3NlcnRfZXF1YWxzKHVwZGF0ZV9oZWFkZXJzWyJyZWZl
cmVyIl0sIGV4cGVjdGVkX3JlZmVycmVyLCAicmVmZXJyZXIgb2YgdXBkYXRlKCkiKTsKIH0sICJS
ZWZlcnJlciBvZiB0aGUgdG9wLWxldmVsIHNjcmlwdCBmZXRjaCBzaG91bGQgYmUgdGhlIGRvY3Vt
ZW50IFVSTCIpOwogCitwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NyaXB0
ID0gInJlc291cmNlcy90ZXN0LXJlcXVlc3QtaGVhZGVycy13b3JrZXIucHkiOworICBjb25zdCBz
Y29wZSA9ICJyZXNvdXJjZXMvYmxhbmsuaHRtbCI7CisgIGNvbnN0IGhvc3RfaW5mbyA9IGdldF9o
b3N0X2luZm8oKTsKKworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtl
cl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAgICB0LCBzY3JpcHQsIHNjb3BlLCB7dHlwZTog
J21vZHVsZSd9KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lz
dGVyKHQsIHNjb3BlKSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7CisKKyAgY29uc3QgZXhwZWN0ZWRfcmVmZXJyZXIgPSBo
b3N0X2luZm9bIkhUVFBTX09SSUdJTiJdICsgbG9jYXRpb24ucGF0aG5hbWU7CisKKyAgLy8gQ2hl
Y2sgcmVmZXJyZXIgZm9yIHJlZ2lzdGVyKCkuCisgIGNvbnN0IHJlZ2lzdGVyX2hlYWRlcnMgPSBh
d2FpdCBnZXRfdG9wbGV2ZWxfc2NyaXB0X2hlYWRlcnMocmVnaXN0cmF0aW9uLmFjdGl2ZSk7Cisg
IGFzc2VydF9lcXVhbHMocmVnaXN0ZXJfaGVhZGVyc1sicmVmZXJlciJdLCBleHBlY3RlZF9yZWZl
cnJlciwgInJlZmVycmVyIG9mIHJlZ2lzdGVyKCkiKTsKKworICAvLyBDaGVjayByZWZlcnJlciBm
b3IgdXBkYXRlKCkuCisgIGF3YWl0IHJlZ2lzdHJhdGlvbi51cGRhdGUoKTsKKyAgYXdhaXQgd2Fp
dF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICJpbnN0YWxsZWQiKTsKKyAg
Y29uc3QgdXBkYXRlX2hlYWRlcnMgPSBhd2FpdCBnZXRfdG9wbGV2ZWxfc2NyaXB0X2hlYWRlcnMo
cmVnaXN0cmF0aW9uLndhaXRpbmcpOworICBhc3NlcnRfZXF1YWxzKHVwZGF0ZV9oZWFkZXJzWyJy
ZWZlcmVyIl0sIGV4cGVjdGVkX3JlZmVycmVyLCAicmVmZXJyZXIgb2YgdXBkYXRlKCkiKTsKK30s
ICJSZWZlcnJlciBvZiB0aGUgbW9kdWxlIHNjcmlwdCBmZXRjaCBzaG91bGQgYmUgdGhlIGRvY3Vt
ZW50IFVSTCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdp
c3RyYXRpb24tYmFzaWMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlv
bi1iYXNpYy5odHRwcy5odG1sCmluZGV4IDE0MTFhNWQ0OGNkNjliMDVkMjc3ZjVjZjAwYTFjM2My
ZmZmODgzODUuLjc1OWI0MjQ0YTI2OWI4YzM2NGU2ZDBkN2ViNDljNDJmMGJhOWExODAgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1iYXNpYy5odHRwcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1iYXNpYy5odHRwcy5odG1sCkBAIC0z
LDcgKzMsMzcgQEAKIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1iYXNpYy5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0PgotcmVnaXN0cmF0aW9uX3Rlc3RzX2Jhc2ljKChzY3JpcHQsIG9w
dGlvbnMpID0+IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdCwgb3B0aW9u
cyksIHRydWUpOworY29uc3Qgc2NyaXB0ID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24td29ya2Vy
LmpzJzsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jl
c291cmNlcy9yZWdpc3RyYXRpb24vbm9ybWFsJzsKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdh
aXQgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7c2NvcGV9KTsKKyAg
dC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgYXNzZXJ0
X3RydWUoCisgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbiwKKyAgICAnU3VjY2Vzc2Z1bGx5IHJlZ2lzdGVyZWQuJyk7Cit9LCAnUmVnaXN0ZXJpbmcg
bm9ybWFsIHNjb3BlJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICBjb25zdCBz
Y29wZSA9ICdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uL3Njb3BlLXdpdGgtZnJhZ21lbnQjcmVmJzsK
KyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVn
aXN0ZXIoc2NyaXB0LCB7c2NvcGV9KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRp
b24udW5yZWdpc3RlcigpKTsKKyAgYXNzZXJ0X3RydWUoCisgICAgcmVnaXN0cmF0aW9uIGluc3Rh
bmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwKKyAgICAnU3VjY2Vzc2Z1bGx5IHJlZ2lz
dGVyZWQuJyk7CisgIGFzc2VydF9lcXVhbHMoCisgICAgcmVnaXN0cmF0aW9uLnNjb3BlLAorICAg
IG5vcm1hbGl6ZVVSTCgncmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi9zY29wZS13aXRoLWZyYWdtZW50
JyksCisgICAgJ0EgZnJhZ21lbnQgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBzY29wZScpOworfSwg
J1JlZ2lzdGVyaW5nIHNjb3BlIHdpdGggZnJhZ21lbnQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5j
ICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy8nOworICBjb25zdCByZWdpc3Ry
YXRpb24gPSBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQsIHtz
Y29wZX0pCisgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7
CisgIGFzc2VydF90cnVlKAorICAgIHJlZ2lzdHJhdGlvbiBpbnN0YW5jZW9mIFNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb24sCisgICAgJ1N1Y2Nlc3NmdWxseSByZWdpc3RlcmVkLicpOworfSwgJ1Jl
Z2lzdGVyaW5nIHNhbWUgc2NvcGUgYXMgdGhlIHNjcmlwdCBkaXJlY3RvcnknKTsKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjaGVkdWxlLWpv
Yi5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2No
ZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBiMTY5YmNmMWRjODYwNDg1NTExY2Q3
ZTRmYWUzMDYzYWJkMmQyOWQzLi45MjUxYjQ3M2UxNTEyMGYyYjZlOTFiOTZhNzYyNWIwNDg2MDcy
MWVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUt
am9iLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRp
b24tc2NoZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDUgQEAKIAotRkFJ
TCBkaWZmZXJlbnQgc2NyaXB0VVJMIGFuZCB1cGRhdGVWaWFDYWNoZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IG51bGwgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncmVnaXN0cmF0aW9uLmluc3RhbGxpbmcuc2NyaXB0
VVJMJykiCi1GQUlMIGRpZmZlcmVudCB0eXBlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJp
bmcpICJjbGFzc2ljIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBkaWZmZXJl
bnQgc2NyaXB0VVJMCitQQVNTIGRpZmZlcmVudCB1cGRhdGVWaWFDYWNoZQorUEFTUyBkaWZmZXJl
bnQgdHlwZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2No
ZWR1bGUtam9iLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2No
ZWR1bGUtam9iLmh0dHBzLmh0bWwKaW5kZXggMTg1ODllMGFhMGIzMmUxMzA5MzRhNjViMWIwNjVk
NWM3Zjc5ZTM2ZS4uMjVkNzU4ZWU4ZjBlMjY0NTkyMThjNzM1OWZhZjdkMzg2NmIzMTNjZiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjaGVkdWxlLWpvYi5odHRw
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY2hlZHVsZS1qb2Iu
aHR0cHMuaHRtbApAQCAtMSw5ICsxLDExIEBACiA8IURPQ1RZUEUgaHRtbD4KIDxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4KKzxtZXRhIG5hbWU9dGltZW91dCBjb250ZW50PWxvbmc+CiA8dGl0bGU+U2Vy
dmljZSBXb3JrZXI6IFNjaGVkdWxlIEpvYiBhbGdvcml0aG08L3RpdGxlPgogPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291
cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogLy8gVGVzdHMg
Zm9yIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNzY2hlZHVsZS1qb2ItYWxn
b3JpdGhtCiAvLyBOb24tZXF1aXZhbGVudCByZWdpc3RlciBqb2JzIHNob3VsZCBub3QgYmUgY29h
bGVzY2VkLgpAQCAtMjEsNyArMjMsMjUgQEAgZnVuY3Rpb24gYWJzb2x1dGVfdXJsKHVybCkgewog
ICByZXR1cm4gbmV3IFVSTCh1cmwsIHNlbGYubG9jYXRpb24pLnRvU3RyaW5nKCk7CiB9CiAKLS8v
IFRlc3Qgc2NyaXB0VVJMIGFuZCB1cGRhdGVWaWFDYWNoZS4KKy8vIFRlc3QgdGhhdCBhIGNoYW5n
ZSB0byBgc2NyaXB0YCBzdGFydHMgYSBuZXcgcmVnaXN0ZXIgam9iLgorcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBhd2FpdCBjbGVhbnVwKCk7CisgIHQuYWRkX2NsZWFudXAoY2xlYW51cCk7
CisKKyAgLy8gTWFrZSBhIHJlZ2lzdHJhdGlvbi4KKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdh
aXQKKyAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtzY29w
ZX0pOworCisgIC8vIFNjaGVkdWxlIHR3byBtb3JlIHJlZ2lzdGVyIGpvYnMuCisgIG5hdmlnYXRv
ci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtzY29wZX0pOworICBhd2FpdCBuYXZp
Z2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQyLCB7c2NvcGV9KTsKKworICAvLyBU
aGUgam9icyBzaG91bGQgbm90IGhhdmUgYmVlbiBjb2FsZXNjZWQuCisgIGNvbnN0IHdvcmtlciA9
IGdldF9uZXdlc3Rfd29ya2VyKHJlZ2lzdHJhdGlvbik7CisgIGFzc2VydF9lcXVhbHMod29ya2Vy
LnNjcmlwdFVSTCwgYWJzb2x1dGVfdXJsKHNjcmlwdDIpKTsKK30sICdkaWZmZXJlbnQgc2NyaXB0
VVJMJyk7CisKKy8vIFRlc3QgdGhhdCBhIGNoYW5nZSB0byBgdXBkYXRlVmlhQ2FjaGVgIHN0YXJ0
cyBhIG5ldyByZWdpc3RlciBqb2IuCiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgIGF3YWl0
IGNsZWFudXAoKTsKICAgdC5hZGRfY2xlYW51cChjbGVhbnVwKTsKQEAgLTMxLDM3ICs1MSw1NyBA
QCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgICAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtl
ci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9KTsKICAgYXNzZXJ0X2VxdWFscyhyZWdpc3RyYXRp
b24udXBkYXRlVmlhQ2FjaGUsICdpbXBvcnRzJyk7CiAKLSAgLy8gU2NoZWR1bGUgc2V2ZXJhbCBy
ZWdpc3RlciBqb2JzLgorICAvLyBTY2hlZHVsZSB0d28gbW9yZSByZWdpc3RlciBqb2JzLgogICBu
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9KTsKLSAgbmF2
aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0Miwge3Njb3BlfSk7Ci0gIGF3YWl0
IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzY29wZSwgdXBkYXRlVmlhQ2FjaGU6ICdub25l
J30pOworICBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7
c2NvcGUsCisgICAgICB1cGRhdGVWaWFDYWNoZTogJ25vbmUnfSk7CiAKLSAgLy8gTm9uZSBvZiB0
aGUgY2hhbmdlcyBzaG91bGQgaGF2ZSBiZWVuIGNvYWxlc2NlZC4KLSAgYXNzZXJ0X2VxdWFscyhy
ZWdpc3RyYXRpb24uaW5zdGFsbGluZy5zY3JpcHRVUkwsIGFic29sdXRlX3VybChzY3JpcHQyKSk7
CisgIC8vIFRoZSBqb2JzIHNob3VsZCBub3QgaGF2ZSBiZWVuIGNvYWxlc2NlZC4KICAgYXNzZXJ0
X2VxdWFscyhyZWdpc3RyYXRpb24udXBkYXRlVmlhQ2FjaGUsICdub25lJyk7Ci19LCAnZGlmZmVy
ZW50IHNjcmlwdFVSTCBhbmQgdXBkYXRlVmlhQ2FjaGUnKTsKK30sICdkaWZmZXJlbnQgdXBkYXRl
VmlhQ2FjaGUnKTsKIAotLy8gVGVzdCB8dHlwZXwgaW4gYW5vdGhlciB0ZXN0IGNhc2UgYmVjYXVz
ZSBtb3N0IGJyb3dzZXJzIGRvbid0IHN1cHBvcnQgaXQuCisvLyBUZXN0IHRoYXQgYSBjaGFuZ2Ug
dG8gYHR5cGVgIHN0YXJ0cyBhIG5ldyByZWdpc3RlciBqb2IuCiBwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7Ci0gIGNvbnN0IHNjcmlwdDEgPSAncmVzb3VyY2VzL2VtcHR5LmpzJzsKLSAgY29uc3Qg
c2NyaXB0MiA9ICdyZXNvdXJjZXMvZW1wdHkuanM/Y2hhbmdlJzsKLQogICBhd2FpdCBjbGVhbnVw
KCk7CiAgIHQuYWRkX2NsZWFudXAoY2xlYW51cCk7CiAKKyAgY29uc3Qgc2NyaXB0Rm9yVHlwZUNo
ZWNrID0gJ3Jlc291cmNlcy90eXBlLWNoZWNrLXdvcmtlci5qcyc7CiAgIC8vIENoZWNrIGRlZmF1
bHRzLgogICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdAotICAgICAgbmF2aWdhdG9yLnNlcnZp
Y2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0MSwge3Njb3BlfSk7Ci0gIGFzc2VydF9lcXVhbHMocmVn
aXN0cmF0aW9uLmluc3RhbGxpbmcudHlwZSwgJ2NsYXNzaWMnKTsKKyAgICAgIG5hdmlnYXRvci5z
ZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdEZvclR5cGVDaGVjaywge3Njb3BlfSk7CiAKLSAg
Ly8gU2NoZWR1bGUgc2V2ZXJhbCByZWdpc3RlciBqb2JzLgotICBuYXZpZ2F0b3Iuc2VydmljZVdv
cmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9KTsKLSAgbmF2aWdhdG9yLnNlcnZpY2VXb3Jr
ZXIucmVnaXN0ZXIoc2NyaXB0Miwge3Njb3BlfSk7Ci0gIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNl
V29ya2VyLnJlZ2lzdGVyKHNjcmlwdDIsIHtzY29wZSwgdHlwZTogJ21vZHVsZSd9KTsKKyAgbGV0
IHdvcmtlcl90eXBlID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICBuYXZp
Z2F0b3Iuc2VydmljZVdvcmtlci5vbm1lc3NhZ2UgPSAoZXZlbnQpID0+IHsKKyAgICAgIHJlc29s
dmUoZXZlbnQuZGF0YSk7CisgICAgfTsKKyAgICAvLyBUaGUgam9icyBzaG91bGQgbm90IGhhdmUg
YmVlbiBjb2FsZXNjZWQuIGdldF9uZXdlc3Rfd29ya2VyKCkgaGVscHMgdGhlCisgICAgLy8gdGVz
dCBmYWlsIHdpdGggc3RhYmxlIG91dHB1dCBvbiBicm93ZXJzIHRoYXQgaW5jb3JyZWN0bHkgY29h
bGVzY2UKKyAgICAvLyByZWdpc3RlciBqb2JzLCBzaW5jZSB0aGVuIHNvbWV0aW1lcyByZWdpc3Ry
YXRpb24gaXMgbm90IGEgbmV3IHdvcmtlciBhcworICAgIC8vIGV4cGVjdGVkLgorICAgIGNvbnN0
IHdvcmtlciA9IGdldF9uZXdlc3Rfd29ya2VyKHJlZ2lzdHJhdGlvbik7CisgICAgLy8gVGhlIGFy
Z3VtZW50IG9mIHBvc3RNZXNzYWdlIGRvZXNuJ3QgbWF0dGVyIGZvciB0aGlzIGNhc2UuCisgICAg
d29ya2VyLnBvc3RNZXNzYWdlKCcnKTsKKyAgfSk7CisKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJf
dHlwZSwgJ2NsYXNzaWMnKTsKKworICAvLyBTY2hlZHVsZSB0d28gbW9yZSByZWdpc3RlciBqb2Jz
LgorICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHRGb3JUeXBlQ2hlY2ss
IHtzY29wZX0pOworICBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3Jp
cHRGb3JUeXBlQ2hlY2ssIHtzY29wZSwgdHlwZTogJ21vZHVsZSd9KTsKKworICB3b3JrZXJfdHlw
ZSA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CisgICAgbmF2aWdhdG9yLnNlcnZp
Y2VXb3JrZXIub25tZXNzYWdlID0gKGV2ZW50KSA9PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRh
dGEpOworICAgIH07CisgICAgLy8gVGhlIGpvYnMgc2hvdWxkIG5vdCBoYXZlIGJlZW4gY29hbGVz
Y2VkLiBnZXRfbmV3ZXN0X3dvcmtlcigpIGhlbHBzIHRoZQorICAgIC8vIHRlc3QgZmFpbCB3aXRo
IHN0YWJsZSBvdXRwdXQgb24gYnJvd2VycyB0aGF0IGluY29ycmVjdGx5IGNvYWxlc2NlCisgICAg
Ly8gcmVnaXN0ZXIgam9icywgc2luY2UgdGhlbiBzb21ldGltZXMgcmVnaXN0cmF0aW9uIGlzIG5v
dCBhIG5ldyB3b3JrZXIgYXMKKyAgICAvLyBleHBlY3RlZC4KKyAgICBjb25zdCB3b3JrZXIgPSBn
ZXRfbmV3ZXN0X3dvcmtlcihyZWdpc3RyYXRpb24pOworICAgIC8vIFRoZSBhcmd1bWVudCBvZiBw
b3N0TWVzc2FnZSBkb2Vzbid0IG1hdHRlciBmb3IgdGhpcyBjYXNlLgorICAgIHdvcmtlci5wb3N0
TWVzc2FnZSgnJyk7CisgIH0pOwogCi0gIC8vIE5vbmUgb2YgdGhlIGNoYW5nZXMgc2hvdWxkIGhh
dmUgYmVlbiBjb2FsZXNjZWQuCi0gIGFzc2VydF9lcXVhbHMocmVnaXN0cmF0aW9uLmluc3RhbGxp
bmcuc2NyaXB0VVJMLCBhYnNvbHV0ZV91cmwoc2NyaXB0MikpOwotICBhc3NlcnRfZXF1YWxzKHJl
Z2lzdHJhdGlvbi5pbnN0YWxsaW5nLnR5cGUsICdtb2R1bGUnKTsKKyAgYXNzZXJ0X2VxdWFscyh3
b3JrZXJfdHlwZSwgJ21vZHVsZScpOwogfSwgJ2RpZmZlcmVudCB0eXBlJyk7CiA8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1bGUt
c3RhdGljLWltcG9ydC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdp
c3RyYXRpb24tc2NvcGUtbW9kdWxlLXN0YXRpYy1pbXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjNlYjU5MzI5YzA4NTg0MGI5NTUxOGM2ZGUxYjgwZGM2NTFiZmM5MTIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NvcGUtbW9kdWxl
LXN0YXRpYy1pbXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorCitQQVNT
IGltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMgd29ya3Mgd2hlbiB1c2VkIGFzIHRvcC1sZXZlbAor
UEFTUyBzdGF0aWMgaW1wb3J0cyB0byBvdXRzaWRlIHBhdGggcmVzdHJpY3Rpb24gc2hvdWxkIGJl
IGFsbG93ZWQKK1BBU1Mgc3RhdGljIGltcG9ydHMgcmVkaXJlY3RpbmcgdG8gb3V0c2lkZSBwYXRo
IHJlc3RyaWN0aW9uIHNob3VsZCBiZSBhbGxvd2VkCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjb3BlLW1vZHVsZS1zdGF0aWMtaW1w
b3J0Lmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWM3NTI5NWFlZDFjZDk0YzEzNDlkYzI1MDEwODAx
NTM0YmQ5ODY0NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJh
dGlvbi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy5odG1sCkBAIC0wLDAgKzEsNDEg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPlNlcnZpY2UgV29ya2VyOiBTdGF0aWMgaW1wb3J0
cyBmcm9tIG1vZHVsZSB0b3AtbGV2ZWwgc2NyaXB0cyBzaG91bGRuJ3QgYmUgYWZmZWN0ZWQgYnkg
dGhlIHNlcnZpY2Ugd29ya2VyIHNjcmlwdCBwYXRoIHJlc3RyaWN0aW9uPC90aXRsZT4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorLy8g
aHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI3BhdGgtcmVzdHJpY3Rpb24KKy8v
IGlzIGFwcGxpZWQgdG8gdG9wLWxldmVsIHNjcmlwdHMgaW4KKy8vIGh0dHBzOi8vdzNjLmdpdGh1
Yi5pby9TZXJ2aWNlV29ya2VyLyN1cGRhdGUtYWxnb3JpdGhtCisvLyBidXQgbm90IHRvIHN1Ym1v
ZHVsZXMgaW1wb3J0ZWQgZnJvbSB0b3AtbGV2ZWwgc2NyaXB0cy4KK2FzeW5jIGZ1bmN0aW9uIHJ1
blRlc3QodCwgc2NyaXB0LCBzY29wZSkgeworICBjb25zdCBzY3JpcHRfdXJsID0gbmV3IFVSTChz
Y3JpcHQsIGxvY2F0aW9uLmhyZWYpOworICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVy
KHQsIHNjb3BlKTsKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQKKyAgICAgIG5hdmlnYXRv
ci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdCwge3R5cGU6ICdtb2R1bGUnfSk7CisgIHQu
YWRkX2NsZWFudXAoXyA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgY29uc3QgbXNn
ID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgcmVnaXN0cmF0aW9uLmluc3Rh
bGxpbmcucG9zdE1lc3NhZ2UoJ3BpbmcnKTsKKyAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5v
bm1lc3NhZ2UgPSByZXNvbHZlOworICB9KTsKKyAgYXNzZXJ0X2VxdWFscyhtc2cuZGF0YSwgJ3Bv
bmcnKTsKK30KKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGF3YWl0IHJ1blRlc3Qo
dCwKKyAgICAgICAgJ3Jlc291cmNlcy9zY29wZTIvaW1wb3J0ZWQtbW9kdWxlLXNjcmlwdC5qcycs
CisgICAgICAgICdyZXNvdXJjZXMvc2NvcGUyLycpOworICB9LCAnaW1wb3J0ZWQtbW9kdWxlLXNj
cmlwdC5qcyB3b3JrcyB3aGVuIHVzZWQgYXMgdG9wLWxldmVsJyk7CisKK3Byb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKKyAgICBhd2FpdCBydW5UZXN0KHQsCisgICAgICAgICdyZXNvdXJjZXMvc2Nv
cGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXNjb3BlMi5qcycsCisgICAgICAgICdyZXNvdXJj
ZXMvc2NvcGUxLycpOworICB9LCAnc3RhdGljIGltcG9ydHMgdG8gb3V0c2lkZSBwYXRoIHJlc3Ry
aWN0aW9uIHNob3VsZCBiZSBhbGxvd2VkJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsK
KyAgICBhd2FpdCBydW5UZXN0KHQsCisgICAgICAgJ3Jlc291cmNlcy9zY29wZTEvbW9kdWxlLXdv
cmtlci1pbXBvcnRpbmctcmVkaXJlY3QtdG8tc2NvcGUyLmpzJywKKyAgICAgICAncmVzb3VyY2Vz
L3Njb3BlMS8nKTsKKyAgfSwgJ3N0YXRpYyBpbXBvcnRzIHJlZGlyZWN0aW5nIHRvIG91dHNpZGUg
cGF0aCByZXN0cmljdGlvbiBzaG91bGQgYmUgYWxsb3dlZCcpOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0LW1vZHVsZS5odHRwcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0LW1vZHVs
ZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTk2NjU3Y2ViODdhNGM2NWZkZGE1MmMz
MWVkYmZmYzI0ZjlhOGI1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
Z2lzdHJhdGlvbi1zY3JpcHQtbW9kdWxlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEy
IEBACisKK1BBU1MgUmVnaXN0ZXJpbmcgaW52YWxpZCBjaHVua2VkIGVuY29kaW5nIHNjcmlwdAor
UEFTUyBSZWdpc3RlcmluZyBpbnZhbGlkIGNodW5rZWQgZW5jb2Rpbmcgc2NyaXB0IHdpdGggZmx1
c2gKK1BBU1MgUmVnaXN0ZXJpbmcgc2NyaXB0IGluY2x1ZGluZyBwYXJzZSBlcnJvcgorUEFTUyBS
ZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIHVuZGVmaW5lZCBlcnJvcgorUEFTUyBSZWdpc3Rl
cmluZyBzY3JpcHQgaW5jbHVkaW5nIHVuY2F1Z2h0IGV4Y2VwdGlvbgorRkFJTCBSZWdpc3Rlcmlu
ZyBzY3JpcHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQgYXNzZXJ0X3VucmVhY2hlZDogU2hvdWxkIGhh
dmUgcmVqZWN0ZWQ6IFJlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQg
c2hvdWxkIGZhaWwuIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBSZWdpc3RlcmluZyBz
Y3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlhdGlvbiBlcnJvcgorUEFTUyBSZWdpc3RlcmluZyBz
Y3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlhdGlvbiBlcnJvciBhbmQgdG9wLWxldmVsIGF3YWl0
CitQQVNTIFJlZ2lzdGVyaW5nIG5vbi1leGlzdGVudCBzY3JpcHQKK1BBU1MgUmVnaXN0ZXJpbmcg
c2NyaXB0IGluY2x1ZGluZyBjYXVnaHQgZXhjZXB0aW9uCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQtbW9kdWxlLmh0dHBzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0LW1vZHVsZS5odHRwcy5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjllMzlhMWY3NWIyN2RlNDkyZDVlYjM4NDJhYWEyNTRkMmY2NjI2ODcKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0LW1vZHVsZS5odHRw
cy5odG1sCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPlNlcnZpY2Ug
V29ya2VyOiBSZWdpc3RyYXRpb24gKG1vZHVsZSBzY3JpcHQpPC90aXRsZT4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK3Jl
Z2lzdHJhdGlvbl90ZXN0c19zY3JpcHQoCisgICAgKHNjcmlwdCwgb3B0aW9ucykgPT4gbmF2aWdh
dG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoCisgICAgICAgIHNjcmlwdCwKKyAgICAgICAgT2Jq
ZWN0LmFzc2lnbih7dHlwZTogJ21vZHVsZSd9LCBvcHRpb25zKSksCisgICAgJ21vZHVsZScpOwor
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2Ny
aXB0Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0Lmh0
dHBzLmh0bWwKaW5kZXggZjcwYjllNjc2MjYwNjM3YzVkMTBiYjhiMzZlNmJhY2I2ZjViM2I2Yi4u
ZjFlNTFmZDI2NWUyMTI3MTUzNzc2OTM0M2UwZTNlMDUwMzJlNzZiNyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjcmlwdC5odHRwcy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQuaHR0cHMuaHRtbApAQCAtNSw1ICs1LDgg
QEAKIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMiPjwv
c2NyaXB0PgogPHNjcmlwdD4KLXJlZ2lzdHJhdGlvbl90ZXN0c19zY3JpcHQoKHNjcmlwdCwgb3B0
aW9ucykgPT4gbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCBvcHRpb25z
KSk7CityZWdpc3RyYXRpb25fdGVzdHNfc2NyaXB0KAorICAgIChzY3JpcHQsIG9wdGlvbnMpID0+
IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdCwgb3B0aW9ucyksCisgICAg
J2NsYXNzaWMnCispOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZWdpc3RyYXRpb24tdXBkYXRldmlhY2FjaGUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1sCmluZGV4IGI3YjJiNDBkNzU2
YTIxZGMxNzg3MzBkYmJkN2ZhNTYxYWM5ZjcyM2EuLmIyZjZiYmM2Zjg0OWM3ZTgwNTFmMWFlZGM5
ZjQ3NmM0N2Q1YTM5YTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlv
bi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lz
dHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1sCkBAIC0xNDUsNyArMTQ1LDcgQEAKICAg
ICAgICAgfQogCiAgICAgICAgIC8vIFdhaXQgZm9yIGFsbCByZWdpc3RyYXRpb24gcmVsYXRlZCB0
YXNrcyBvbiB8ZnJhbWV8IHRvIGNvbXBsZXRlLgotICAgICAgICBhd2FpdCB3YWl0X2Zvcl9hY3Rp
dmF0aW9uX29uX2R1bW15X3Njb3BlKHQsIGZyYW1lLmNvbnRlbnRXaW5kb3cpOworICAgICAgICBh
d2FpdCB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX3NhbXBsZV9zY29wZSh0LCBmcmFtZS5jb250ZW50
V2luZG93KTsKICAgICAgICAgLy8gVGhlIHVwZGF0ZVZpYUNhY2hlIGNoYW5nZSBzaG91bGQgaGF2
ZSBiZWVuIHByb3BhZ2F0ZWQgdG8gYWxsCiAgICAgICAgIC8vIGNvcnJlc3BvbmRpbmcgSlMgcmVn
aXN0cmF0aW9uIG9iamVjdHMuCiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVnX2luX2ZyYW1lLnVw
ZGF0ZVZpYUNhY2hlLCBleHBlY3RlZF91cGRhdGVWaWFDYWNoZSwgInJlZ19pbl9mcmFtZS51cGRh
dGVWaWFDYWNoZSB1cGRhdGVkIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZS10aW1pbmcuc3ViLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZS10
aW1pbmcuc3ViLmh0dHBzLmh0bWwKaW5kZXggMmEzNjYwODdjZDM1ZTc5M2E5NTQ0ZTk3MzI3YmIz
ZjVlZDdiMzA5MS4uOTgwOGFlNWFlMWJlZDA2ZjUzMDMyNDBiNzcyZTRlYWQwZDMxNzEzNyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2UtdGltaW5nLnN1Yi5odHRwcy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlLXRpbWluZy5zdWIuaHR0cHMuaHRtbApA
QCAtNCwxMzggKzQsMTQ3IEBACiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5z
dWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIGZ1bmN0aW9uIHJlc291cmNlVXJsKHBhdGgpIHsK
LSAgICByZXR1cm4gImh0dHBzOi8ve3tob3N0fX06e3twb3J0c1todHRwc11bMF19fSIgKyBiYXNl
X3BhdGgoKSArIHBhdGg7CisgIHJldHVybiAiaHR0cHM6Ly97e2hvc3R9fTp7e3BvcnRzW2h0dHBz
XVswXX19IiArIGJhc2VfcGF0aCgpICsgcGF0aDsKIH0KIAogZnVuY3Rpb24gY3Jvc3NPcmlnaW5V
cmwocGF0aCkgewotICAgIHJldHVybiAiaHR0cHM6Ly97e2hvc3RzW2FsdF1bXX19Ont7cG9ydHNb
aHR0cHNdWzBdfX0iICsgYmFzZV9wYXRoKCkgKyBwYXRoOworICByZXR1cm4gImh0dHBzOi8ve3to
b3N0c1thbHRdW119fTp7e3BvcnRzW2h0dHBzXVswXX19IiArIGJhc2VfcGF0aCgpICsgcGF0aDsK
IH0KIAorLy8gVmVyaWZ5IGV4aXN0YW5jZSBvZiBhIFBlcmZvcm1hbmNlRW50cnkgYW5kIHRoZSBv
cmRlciBiZXR3ZWVuIHRoZSB0aW1pbmdzLgorLy8KKy8vIHxvcHRpb25zfCBoYXMgdGhlc2UgcHJv
cGVydGllczoKKy8vIHBlcmZvcm1hbmNlOiBQZXJmb3JtYW5jZSBpbnRlcmZhY2UgdG8gdmVyaWZ5
IGV4aXN0YW5jZSBvZiB0aGUgZW50cnkuCisvLyByZXNvdXJjZTogdGhlIHBhdGggdG8gdGhlIHJl
c291cmNlLgorLy8gbW9kZTogJ2Nyb3NzLW9yaWdpbicgdG8gbG9hZCB0aGUgcmVzb3VyY2UgZnJv
bSB0aGlyZC1wYXJ0eSBvcmlnaW4uCisvLyBkZXNjcmlwdGlvbjogdGhlIGRlc2NyaXB0aW9uIHBh
c3NlZCB0byBlYWNoIGFzc2VydGlvbi4KKy8vIHNob3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeTog
bm8gZW50cnkgaXMgZXhwZWN0ZWQgdG8gYmUgcmVjb3JkZWQgd2hlbiBpdCdzCisvLyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRydWUuCiBmdW5jdGlvbiB2ZXJpZnkob3B0aW9ucykgewot
ICAgIGNvbnN0IHVybCA9IG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9yaWdpbicgPyBjcm9zc09y
aWdpblVybChvcHRpb25zLnJlc291cmNlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6IHJlc291cmNlVXJsKG9wdGlvbnMucmVzb3VyY2UpOwotICAgIGNvbnN0IGVudHJ5
TGlzdCA9IG9wdGlvbnMucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSh1cmwsICdyZXNvdXJj
ZScpOwotICAgIGlmIChvcHRpb25zLnNob3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeSkgewotICAg
ICAgICAvLyBUaGUgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWF5IG5vdCBoYXZlIGFuIGVudHJ5IGZv
ciBhIHJlc291cmNlCi0gICAgICAgIC8vIHdoaWNoIGZhaWxlZCB0byBsb2FkLgotICAgICAgICBh
c3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5sZW5ndGgsIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwot
ICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0Lmxlbmd0
aCwgMSwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgY29uc3QgZW50cnkgPSBlbnRyeUxpc3Rb
MF07Ci0gICAgYXNzZXJ0X2VxdWFscyhlbnRyeS5lbnRyeVR5cGUsICdyZXNvdXJjZScsIG9wdGlv
bnMuZGVzY3JpcHRpb24pOwotICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkud29ya2VyU3Rh
cnQsIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1
YWwoZW50cnkud29ya2VyU3RhcnQsIGVudHJ5LnN0YXJ0VGltZSwgb3B0aW9ucy5kZXNjcmlwdGlv
bik7Ci0gICAgYXNzZXJ0X2xlc3NfdGhhbl9lcXVhbChlbnRyeS53b3JrZXJTdGFydCwgZW50cnku
ZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgaWYgKG9wdGlvbnMubW9kZSA9
PT0gJ2Nyb3NzLW9yaWdpbicpIHsKLSAgICAgIGFzc2VydF9lcXVhbHMoZW50cnkucmVzcG9uc2VT
dGFydCwgMCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgICBhc3NlcnRfZ3JlYXRlcl90aGFu
X2VxdWFsKGVudHJ5LnJlc3BvbnNlRW5kLCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2Ny
aXB0aW9uKTsKLSAgICB9IGVsc2UgewotICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChl
bnRyeS5yZXNwb25zZVN0YXJ0LCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9u
KTsKLSAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwoZW50cnkucmVzcG9uc2VFbmQsIGVu
dHJ5LnJlc3BvbnNlU3RhcnQsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIH0KLSAgICBhc3Nl
cnRfZ3JlYXRlcl90aGFuKGVudHJ5LnJlc3BvbnNlRW5kLCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRp
b25zLmRlc2NyaXB0aW9uKTsKLSAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LmR1cmF0aW9u
LCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICBpZiAob3B0aW9ucy5yZXNvdXJjZS5pbmRl
eE9mKCdyZWRpcmVjdC5weScpICE9IC0xKSB7Ci0gICAgICAgIGFzc2VydF9sZXNzX3RoYW5fZXF1
YWwoZW50cnkud29ya2VyU3RhcnQsIGVudHJ5LnJlZGlyZWN0U3RhcnQsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgfSBlbHNlIHsKLSAg
ICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS5yZWRpcmVjdFN0YXJ0LCAwLCBvcHRpb25zLmRlc2Ny
aXB0aW9uKTsKLSAgICB9CisgIGNvbnN0IHVybCA9IG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9y
aWdpbicgPyBjcm9zc09yaWdpblVybChvcHRpb25zLnJlc291cmNlKQorICAgIDogcmVzb3VyY2VV
cmwob3B0aW9ucy5yZXNvdXJjZSk7CisgIGNvbnN0IGVudHJ5TGlzdCA9IG9wdGlvbnMucGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5TmFtZSh1cmwsICdyZXNvdXJjZScpOworICBpZiAob3B0aW9ucy5z
aG91bGRfbm9fcGVyZm9ybWFuY2VfZW50cnkpIHsKKyAgICAvLyBUaGUgcGVyZm9ybWFuY2UgdGlt
ZWxpbmUgbWF5IG5vdCBoYXZlIGFuIGVudHJ5IGZvciBhIHJlc291cmNlCisgICAgLy8gd2hpY2gg
ZmFpbGVkIHRvIGxvYWQuCisgICAgYXNzZXJ0X2VxdWFscyhlbnRyeUxpc3QubGVuZ3RoLCAwLCBv
cHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgICByZXR1cm47CisgIH0KKworICBhc3NlcnRfZXF1YWxz
KGVudHJ5TGlzdC5sZW5ndGgsIDEsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICBjb25zdCBlbnRy
eSA9IGVudHJ5TGlzdFswXTsKKyAgYXNzZXJ0X2VxdWFscyhlbnRyeS5lbnRyeVR5cGUsICdyZXNv
dXJjZScsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworCisgIC8vIHdvcmtlclN0YXJ0IGlzIHJlY29y
ZGVkIGJldHdlZW4gc3RhcnRUaW1lIGFuZCBmZXRjaFN0YXJ0LgorICBhc3NlcnRfZ3JlYXRlcl90
aGFuKGVudHJ5LndvcmtlclN0YXJ0LCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgYXNzZXJ0
X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS53b3JrZXJTdGFydCwgZW50cnkuc3RhcnRUaW1lLCBv
cHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgYXNzZXJ0X2xlc3NfdGhhbl9lcXVhbChlbnRyeS53b3Jr
ZXJTdGFydCwgZW50cnkuZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisKKyAgaWYg
KG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9yaWdpbicpIHsKKyAgICBhc3NlcnRfZXF1YWxzKGVu
dHJ5LnJlc3BvbnNlU3RhcnQsIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICAgIGFzc2VydF9n
cmVhdGVyX3RoYW5fZXF1YWwoZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LmZldGNoU3RhcnQsIG9w
dGlvbnMuZGVzY3JpcHRpb24pOworICB9IGVsc2UgeworICAgIGFzc2VydF9ncmVhdGVyX3RoYW5f
ZXF1YWwoZW50cnkucmVzcG9uc2VTdGFydCwgZW50cnkuZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNj
cmlwdGlvbik7CisgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS5yZXNwb25zZUVu
ZCwgZW50cnkucmVzcG9uc2VTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisgIH0KKworICAv
LyByZXNwb25zZUVuZCBmb2xsb3dzIGZldGNoU3RhcnQuCisgIGFzc2VydF9ncmVhdGVyX3RoYW4o
ZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LmZldGNoU3RhcnQsIG9wdGlvbnMuZGVzY3JpcHRpb24p
OworICAvLyBkdXJhdGlvbiBhbHdheXMgaGFzIHNvbWUgdmFsdWUuCisgIGFzc2VydF9ncmVhdGVy
X3RoYW4oZW50cnkuZHVyYXRpb24sIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworCisgIGlmIChv
cHRpb25zLnJlc291cmNlLmluZGV4T2YoJ3JlZGlyZWN0LnB5JykgIT0gLTEpIHsKKyAgICBhc3Nl
cnRfbGVzc190aGFuX2VxdWFsKGVudHJ5LndvcmtlclN0YXJ0LCBlbnRyeS5yZWRpcmVjdFN0YXJ0
LAorICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisgIH0gZWxzZSB7CisgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeS5yZWRpcmVjdFN0YXJ0LCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgfQog
fQogCi1wcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIGNvbnN0IHdvcmtlcl91cmwgPSAn
cmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy13b3JrZXIuanMnOwotICAgIGNvbnN0IHNjb3BlID0g
J3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1Yi5odG1sJzsKLSAgICBsZXQgcmVn
aXN0cmF0aW9uOworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHdvcmtlcl91
cmwgPSAncmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy13b3JrZXIuanMnOworICBjb25zdCBzY29w
ZSA9ICdyZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLWlmcmFtZS5zdWIuaHRtbCc7CiAKLSAgICBy
ZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyX3Vy
bCwgc2NvcGUpCi0gICAgICAudGhlbihmdW5jdGlvbihyKSB7Ci0gICAgICAgICAgcmVnaXN0cmF0
aW9uID0gcjsKLSAgICAgICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgci5pbnN0YWxsaW5n
LCAnYWN0aXZhdGVkJyk7Ci0gICAgICAgIH0pCi0gICAgICAudGhlbihmdW5jdGlvbigpIHsKLSAg
ICAgICAgICByZXR1cm4gd2l0aF9pZnJhbWUoc2NvcGUpOwotICAgICAgICB9KQotICAgICAgLnRo
ZW4oZnVuY3Rpb24oZnJhbWUpIHsKLSAgICAgICAgICBjb25zdCBwZXJmb3JtYW5jZSA9IGZyYW1l
LmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2U7Ci0gICAgICAgICAgdmVyaWZ5KHsKLSAgICAgICAg
ICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICByZXNvdXJjZTog
J3Jlc291cmNlcy9kdW1teS5qcycsCi0gICAgICAgICAgICAgIG1vZGU6ICdzYW1lLW9yaWdpbics
Ci0gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGVkIHJlc3BvbnNlJywKLSAgICAg
ICAgICB9KTsKLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTog
cGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2VtcHR5Lmpz
JywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVz
Y3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICB2
ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAg
ICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3JlZGlyZWN0LnB5P1JlZGlyZWN0PWVtcHR5Lmpz
JywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVz
Y3JpcHRpb246ICdSZWRpcmVjdCcsCi0gICAgICAgICAgfSk7Ci0gICAgICAgICAgdmVyaWZ5KHsK
LSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICBy
ZXNvdXJjZTogJ3Jlc291cmNlcy9zcXVhcmUucG5nJywKLSAgICAgICAgICAgICAgbW9kZTogJ3Nh
bWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNr
IGltYWdlJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICAvLyBUZXN0IHRoYXQgd29ya2VyIHN0
YXJ0IGlzIGF2YWlsYWJsZSBvbiBjcm9zcy1vcmlnaW4gbm8tY29ycwotICAgICAgICAgIC8vIHN1
YnJlc291cmNlcy4KLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5j
ZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3NxdWFy
ZS5wbmcnLAotICAgICAgICAgICAgICBtb2RlOiAnY3Jvc3Mtb3JpZ2luJywKLSAgICAgICAgICAg
ICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGNyb3NzLW9yaWdpbiBpbWFnZScsCi0g
ICAgICAgICAgfSk7CisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2Vy
X3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlcl91cmwsIHNjb3BlKTsKKyAgdC5hZGRf
Y2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgYXdhaXQgd2FpdF9m
b3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKyAgY29u
c3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShzY29wZSk7CisgIHQuYWRkX2NsZWFudXAoKCkg
PT4gZnJhbWUucmVtb3ZlKCkpOwogCi0gICAgICAgICAgLy8gVGVzdHMgZm9yIHJlc291Y2VzIHdo
aWNoIGZhaWxlZCB0byBsb2FkLgotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAgICAgICAgIHBl
cmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6ICdyZXNvdXJj
ZXMvbWlzc2luZy5qcGcnLAotICAgICAgICAgICAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAg
ICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJhY2sgbG9hZCBmYWlsdXJlJywK
LSAgICAgICAgICB9KTsKLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3Jt
YW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL21p
c3NpbmcuanBnJywKLSAgICAgICAgICAgICAgbW9kZTogJ2Nyb3NzLW9yaWdpbicsCi0gICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBmYWxsYmFjayBjcm9zcy1vcmlnaW4gbG9hZCBm
YWlsdXJlJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICAvLyBUZXN0cyBmb3IgcmVzcG9uZFdp
dGgoZmV0Y2goKSkuCi0gICAgICAgICAgdmVyaWZ5KHsKLSAgICAgICAgICAgICAgcGVyZm9ybWFu
Y2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNz
aW5nLmpwZz9TV1Jlc3BvbmRzV2l0aEZldGNoJywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUt
b3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSZXNvdXJjZSBpbiBpZnJhbWUs
IG5vbmV4aXN0ZW50IGJ1dCByZXNwb25kZWQgd2l0aCBmZXRjaCB0byBhbm90aGVyLicsCi0gICAg
ICAgICAgfSk7Ci0gICAgICAgICAgdmVyaWZ5KHsKLSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6
IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9kdW1teS50
eHQ/U1dGZXRjaGVkJywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAg
ICAgICAgICAgZGVzY3JpcHRpb246ICdSZXNvdXJjZSBmZXRjaGVkIGFzIHJlc3BvbnNlIGZyb20g
bWlzc2luZy5qcGc/U1dSZXNwb25kc1dpdGhGZXRjaC4nLAotICAgICAgICAgICAgICBzaG91bGRf
bm9fcGVyZm9ybWFuY2VfZW50cnk6IHRydWUsCi0gICAgICAgICAgfSk7Ci0gICAgICAgICAgLy8g
VGVzdCBmb3IgYSBub3JtYWwgcmVzb3VyY2UgdGhhdCBpcyB1bmFmZmVjdGVkIGJ5IHRoZSBTZXJ2
aWNlIFdvcmtlci4KLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5j
ZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2VtcHR5
LXdvcmtlci5qcycsCi0gICAgICAgICAgICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCi0gICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uOiAnUmVzb3VyY2UgdW50b3VjaGVkIGJ5IHRoZSBTZXJ2aWNlIFdv
cmtlci4nLAotICAgICAgICAgIH0pOworICBjb25zdCBwZXJmb3JtYW5jZSA9IGZyYW1lLmNvbnRl
bnRXaW5kb3cucGVyZm9ybWFuY2U7CisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZv
cm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3NhbXBsZS5qcycsCisgICAgbW9kZTog
J3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ0dlbmVyYXRlZCByZXNwb25zZScsCisg
IH0pOworICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNv
dXJjZTogJ3Jlc291cmNlcy9lbXB0eS5qcycsCisgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKKyAg
ICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJhY2snLAorICB9KTsKKyAgdmVyaWZ5KHsKKyAg
ICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvcmVk
aXJlY3QucHk/UmVkaXJlY3Q9ZW1wdHkuanMnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisg
ICAgZGVzY3JpcHRpb246ICdSZWRpcmVjdCcsCisgIH0pOworICB2ZXJpZnkoeworICAgIHBlcmZv
cm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9zcXVhcmUucG5n
JywKKyAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAorICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBm
YWxsYmFjayBpbWFnZScsCisgIH0pOworICAvLyBUZXN0IHRoYXQgd29ya2VyIHN0YXJ0IGlzIGF2
YWlsYWJsZSBvbiBjcm9zcy1vcmlnaW4gbm8tY29ycworICAvLyBzdWJyZXNvdXJjZXMuCisgIHZl
cmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAorICAgIHJlc291cmNlOiAncmVz
b3VyY2VzL3NxdWFyZS5wbmcnLAorICAgIG1vZGU6ICdjcm9zcy1vcmlnaW4nLAorICAgIGRlc2Ny
aXB0aW9uOiAnTmV0d29yayBmYWxsYmFjayBjcm9zcy1vcmlnaW4gaW1hZ2UnLAorICB9KTsKIAot
ICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAgICAgICAgIHJldHVybiByZWdpc3RyYXRpb24u
dW5yZWdpc3RlcigpOwotICAgICAgfSk7CisgIC8vIFRlc3RzIGZvciByZXNvdWNlcyB3aGljaCBm
YWlsZWQgdG8gbG9hZC4KKyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2Us
CisgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvbWlzc2luZy5qcGcnLAorICAgIG1vZGU6ICdzYW1l
LW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGxvYWQgZmFpbHVy
ZScsCisgIH0pOworICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAg
ICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZycsCisgICAgbW9kZTogJ2Nyb3NzLW9y
aWdpbicsCisgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGNyb3NzLW9yaWdpbiBs
b2FkIGZhaWx1cmUnLAorICB9KTsKKyAgLy8gVGVzdHMgZm9yIHJlc3BvbmRXaXRoKGZldGNoKCkp
LgorICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJj
ZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZz9TV1Jlc3BvbmRzV2l0aEZldGNoJywKKyAgICBtb2Rl
OiAnc2FtZS1vcmlnaW4nLAorICAgIGRlc2NyaXB0aW9uOiAnUmVzb3VyY2UgaW4gaWZyYW1lLCBu
b25leGlzdGVudCBidXQgcmVzcG9uZGVkIHdpdGggZmV0Y2ggdG8gYW5vdGhlci4nLAorICB9KTsK
KyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6
ICdyZXNvdXJjZXMvc2FtcGxlLnR4dD9TV0ZldGNoZWQnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdp
bicsCisgICAgZGVzY3JpcHRpb246ICdSZXNvdXJjZSBmZXRjaGVkIGFzIHJlc3BvbnNlIGZyb20g
bWlzc2luZy5qcGc/U1dSZXNwb25kc1dpdGhGZXRjaC4nLAorICAgIHNob3VsZF9ub19wZXJmb3Jt
YW5jZV9lbnRyeTogdHJ1ZSwKKyAgfSk7CisgIC8vIFRlc3QgZm9yIGEgbm9ybWFsIHJlc291cmNl
IHRoYXQgaXMgdW5hZmZlY3RlZCBieSB0aGUgU2VydmljZSBXb3JrZXIuCisgIHZlcmlmeSh7Cisg
ICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2Vt
cHR5LXdvcmtlci5qcycsCisgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlv
bjogJ1Jlc291cmNlIHVudG91Y2hlZCBieSB0aGUgU2VydmljZSBXb3JrZXIuJywKKyAgfSk7CiB9
LCAnQ29udHJvbGxlZCByZXNvdXJjZSBsb2FkcycpOwogCiB0ZXN0KCgpID0+IHsKLSAgICBjb25z
dCB1cmwgPSByZXNvdXJjZVVybCgncmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMnKTsKLSAg
ICBjb25zdCBlbnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKHVybCwg
J3Jlc291cmNlJylbMF07Ci0gICAgYXNzZXJ0X2VxdWFscyhlbnRyeS53b3JrZXJTdGFydCwgMCwg
J05vbi1jb250cm9sbGVkJyk7CisgIGNvbnN0IHVybCA9IHJlc291cmNlVXJsKCdyZXNvdXJjZXMv
dGVzdC1oZWxwZXJzLnN1Yi5qcycpOworICBjb25zdCBlbnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlOYW1lKHVybCwgJ3Jlc291cmNlJylbMF07CisgIGFzc2VydF9lcXVhbHMo
ZW50cnkud29ya2VyU3RhcnQsIDAsICdOb24tY29udHJvbGxlZCcpOwogfSwgJ05vbi1jb250cm9s
bGVkIHJlc291cmNlIGxvYWRzJyk7CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS0yLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS0yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE4OWIxYzg3ZmVlNzVjODZj
YTA4MzUxODcyZTQwMmI4NGI4Yjg0NGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLTIuanMKQEAgLTAsMCArMSBAQAorZXhwb3J0IGRl
ZmF1bHQgJ2hlbGxvIGFnYWluISc7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvYmFzaWMtbW9kdWxlLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2lj
LW1vZHVsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODlhODliYzYzMDg0N2U0Y2RjMTE1ZjBkMjlmMTAzYzk3
YmVkZWViCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jh
c2ljLW1vZHVsZS5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgZGVmYXVsdCAnaGVsbG8hJzsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGFpbS1ibG9iLXVybC13b3Jr
ZXItZmV0Y2gtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xhaW0t
YmxvYi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyYWUxYTg3MjU4
ZjcyMzVjNjE2NTAyOWI0OGU3YjRkYzJmZjkwZDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xhaW0tYmxvYi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5o
dG1sCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2NvbnN0IGJh
c2VMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsKK2NvbnN0IHdvcmtlclNjcmlwdCA9CisgIGBz
ZWxmLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CisgICAgY29uc3QgdXJsID0gbmV3IFVSTChl
LmRhdGEsICcke2Jhc2VMb2NhdGlvbn0nKS5ocmVmOworICAgIGNvbnN0IHJlc3BvbnNlID0gYXdh
aXQgZmV0Y2godXJsKTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOwor
ICAgIHNlbGYucG9zdE1lc3NhZ2UodGV4dCk7CisgIH07YDsKK2NvbnN0IGJsb2IgPSBuZXcgQmxv
Yihbd29ya2VyU2NyaXB0XSwgeyB0eXBlOiAndGV4dC9qYXZhc2NyaXB0JyB9KTsKK2NvbnN0IGJs
b2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworY29uc3Qgd29ya2VyID0gbmV3IFdv
cmtlcihibG9iVXJsKTsKKworZnVuY3Rpb24gZmV0Y2hfaW5fd29ya2VyKHVybCkgeworICByZXR1
cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICB3b3JrZXIub25tZXNzYWdlID0gKGUp
ID0+IHJlc29sdmUoZS5kYXRhKTsKKyAgICB3b3JrZXIucG9zdE1lc3NhZ2UodXJsKTsKKyAgfSk7
Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9j
bGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Ns
aWVudC1uYXZpZ2F0ZS13b3JrZXIuanMKaW5kZXggZDE0OTIxZmVmNzRlNzgzYTBjZTVlZWUwMDMz
YjkxYjM3ZThmOGRkZi4uNjEwMWQ1ZDhmOTJjY2QwZWM3OThjMjdhMmFiMWNkMzNkZTVmYzFiYiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13
b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0
ZS13b3JrZXIuanMKQEAgLTMsNiArMyw4IEBAIGltcG9ydFNjcmlwdHMoInRlc3QtaGVscGVycy5z
dWIuanMiKTsKIGltcG9ydFNjcmlwdHMoIi9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiKQog
aW1wb3J0U2NyaXB0cygidGVzdGhhcm5lc3MtaGVscGVycy5qcyIpCiAKK3NldHVwKHsgZXhwbGlj
aXRfZG9uZTogdHJ1ZSB9KTsKKwogc2VsZi5vbmZldGNoID0gZnVuY3Rpb24oZSkgewogICBpZiAo
ZS5yZXF1ZXN0LnVybC5pbmRleE9mKCJjbGllbnQtbmF2aWdhdGUtZnJhbWUuaHRtbCIpID49IDAp
IHsKICAgICByZXR1cm47CkBAIC0zNSw2ICszNyw3IEBAIHNlbGYub25tZXNzYWdlID0gZnVuY3Rp
b24oZSkgewogICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAuY2F0Y2godW5y
ZWFjaGVkX3JlamVjdGlvbih0KSk7CiAgICAgfSwgIlJldHVybiB2YWx1ZSBzaG91bGQgYmUgaW5z
dGFuY2Ugb2YgV2luZG93Q2xpZW50Iik7CisgICAgZG9uZSgpOwogICB9IGVsc2UgaWYgKHRlc3Qg
PT09ICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9jcm9zc19vcmlnaW4iKSB7CiAgICAgcHJvbWlzZV90
ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHRoaXMuYWRkX2NsZWFudXAoKCkgPT4gcG9ydC5wb3N0
TWVzc2FnZShwYXNzKHRlc3QsIGNsaWVudFVybCkpKTsKQEAgLTQ5LDYgKzUyLDcgQEAgc2VsZi5v
bm1lc3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAg
ICAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKTsKICAgICB9LCAiTmF2aWdhdGlu
ZyB0byBkaWZmZXJlbnQgb3JpZ2luIHNob3VsZCByZXNvbHZlIHdpdGggbnVsbCIpOworICAgIGRv
bmUoKTsKICAgfSBlbHNlIGlmICh0ZXN0ID09PSAidGVzdF9jbGllbnRfbmF2aWdhdGVfYWJvdXRf
YmxhbmsiKSB7CiAgICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHRoaXMuYWRk
X2NsZWFudXAoZnVuY3Rpb24oKSB7IHBvcnQucG9zdE1lc3NhZ2UocGFzcyh0ZXN0LCAiIikpOyB9
KTsKQEAgLTU2LDYgKzYwLDcgQEAgc2VsZi5vbm1lc3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAg
ICAgICAgICAgICAgIC50aGVuKGNsaWVudCA9PiBwcm9taXNlX3JlamVjdHNfanModCwgVHlwZUVy
cm9yLCBjbGllbnQubmF2aWdhdGUoImFib3V0OmJsYW5rIikpKQogICAgICAgICAgICAgICAgICAu
Y2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSk7CiAgICAgfSwgIk5hdmlnYXRpbmcgdG8gYWJv
dXQ6Ymxhbmsgc2hvdWxkIHJlamVjdCB3aXRoIFR5cGVFcnJvciIpOworICAgIGRvbmUoKTsKICAg
fSBlbHNlIGlmICh0ZXN0ID09PSAidGVzdF9jbGllbnRfbmF2aWdhdGVfbWl4ZWRfY29udGVudCIp
IHsKICAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAgdGhpcy5hZGRfY2xlYW51
cChmdW5jdGlvbigpIHsgcG9ydC5wb3N0TWVzc2FnZShwYXNzKHRlc3QsICIiKSk7IH0pOwpAQCAt
NjcsNiArNzIsNyBAQCBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAg
ICAgICAgLnRoZW4oY2xpZW50ID0+IHByb21pc2VfcmVqZWN0c19qcyh0LCBUeXBlRXJyb3IsIGNs
aWVudC5uYXZpZ2F0ZSh1cmwpKSkKICAgICAgICAgICAgICAgICAgLmNhdGNoKHVucmVhY2hlZF9y
ZWplY3Rpb24odCkpOwogICAgIH0sICJOYXZpZ2F0aW5nIHRvIG1peGVkLWNvbnRlbnQgaWZyYW1l
IHNob3VsZCByZWplY3Qgd2l0aCBUeXBlRXJyb3IiKTsKKyAgICBkb25lKCk7CiAgIH0gZWxzZSBp
ZiAodGVzdCA9PT0gInRlc3RfY2xpZW50X25hdmlnYXRlX3JlZGlyZWN0IikgewogICAgIHZhciBo
b3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CiAgICAgdmFyIHVybCA9IG5ldyBVUkwoaG9zdF9p
bmZvWydIVFRQU19SRU1PVEVfT1JJR0lOJ10pLnRvU3RyaW5nKCkgKwpAQCAtNzcsOSArODMsMTAg
QEAgc2VsZi5vbm1lc3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgIC50aGVu
KGNsaWVudCA9PiBjbGllbnQubmF2aWdhdGUoInJlZGlyZWN0LnB5P1JlZGlyZWN0PSIgKyB1cmwp
KQogICAgICAgICAgICAgICAgICAudGhlbihjbGllbnQgPT4gewogICAgICAgICAgICAgICAgICAg
IGNsaWVudFVybCA9IChjbGllbnQgJiYgY2xpZW50LnVybCkgfHwgIiIKLSAgICAgICAgICAgICAg
ICAgICBhc3NlcnRfdHJ1ZShjbGllbnQgPT09IG51bGwpOworICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoY2xpZW50LCBudWxsKTsKICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAg
ICAgICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpOwogICAgIH0sICJSZWRpcmVj
dGluZyB0byBhbm90aGVyIG9yaWdpbiBzaG91bGQgcmVzb2x2ZSB3aXRoIG51bGwiKTsKKyAgICBk
b25lKCk7CiAgIH0KIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
Y2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAw
ZjZhY2VkZThlYjRmYWZiYmY2YTI0OGM3NWRiODRkYmEzZWZjNDAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3Jr
ZXIuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlw
dD4KKworLy8gUmV0dXJuIGEgVVJMIG9mIGEgY2xpZW50IHdoZW4gaXQncyBzdWNjZXNzZnVsLgor
ZnVuY3Rpb24gY3JlYXRlQW5kRmV0Y2hGcm9tQmxvYldvcmtlcigpIHsKKyAgY29uc3QgZmV0Y2hV
UkwgPSBuZXcgVVJMKCdnZXQtd29ya2VyLWNsaWVudC11cmwudHh0Jywgd2luZG93LmxvY2F0aW9u
KS5ocmVmOworICBjb25zdCB3b3JrZXJTY3JpcHQgPQorICAgIGBzZWxmLm9ubWVzc2FnZSA9IGFz
eW5jIChlKSA9PiB7CisgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGUuZGF0YS51
cmwpOworICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTsKKyAgICAgIHNl
bGYucG9zdE1lc3NhZ2UoeyJyZXN1bHQiOiB0ZXh0LCAiZXhwZWN0ZWQiOiBzZWxmLmxvY2F0aW9u
LmhyZWZ9KTsKKyAgICB9O2A7CisgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbd29ya2VyU2NyaXB0
XSwgeyB0eXBlOiAndGV4dC9qYXZhc2NyaXB0JyB9KTsKKyAgY29uc3QgYmxvYlVybCA9IFVSTC5j
cmVhdGVPYmplY3RVUkwoYmxvYik7CisKKyAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihibG9i
VXJsKTsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICB3
b3JrZXIub25tZXNzYWdlID0gZSA9PiByZXNvbHZlKGUuZGF0YSk7CisgICAgd29ya2VyLm9uZXJy
b3IgPSBlID0+IHJlamVjdChlLm1lc3NhZ2UpOworICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7InVy
bCI6IGZldGNoVVJMfSk7CisgIH0pOworfQorCis8L3NjcmlwdD4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdv
cmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2It
dXJsLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZDc1NGY4MjUwZGEwYTA0NjRiOTYwNzY3ZjllN2Fi
OTdmNTI3NGI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmpzCkBAIC0wLDAgKzEsMTAgQEAKK2FkZEV2
ZW50TGlzdGVuZXIoJ2ZldGNoJywgZSA9PiB7CisgIGlmIChlLnJlcXVlc3QudXJsLmluY2x1ZGVz
KCdnZXQtd29ya2VyLWNsaWVudC11cmwnKSkgeworICAgIGUucmVzcG9uZFdpdGgoKGFzeW5jICgp
ID0+IHsKKyAgICAgIGNvbnN0IGNsaWVudHMgPSBhd2FpdCBzZWxmLmNsaWVudHMubWF0Y2hBbGwo
e3R5cGU6ICd3b3JrZXInfSk7CisgICAgICBpZiAoY2xpZW50cy5sZW5ndGggIT0gMSkKKyAgICAg
ICAgcmV0dXJuIG5ldyBSZXNwb25zZSgnb25lIHdvcmtlciBjbGllbnQgc2hvdWxkIGV4aXN0Jyk7
CisgICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKGNsaWVudHNbMF0udXJsKTsKKyAgICB9KSgpKTsK
KyAgfQorfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50
cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVl
ODlhMGQ4YjNlZTc1MTNmZjM4MTc2MzJkYjMyYTlmNWYyYzE2MmEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13
b3JrZXIuaHRtbApAQCAtMCwwICsxLDIwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNj
cmlwdD4KK2NvbnN0IHdvcmtlclNjcmlwdCA9IGAKKyAgc2VsZi5vbm1lc3NhZ2UgPSAoZSkgPT4g
eworICAgIHNlbGYucG9zdE1lc3NhZ2UoIldvcmtlciBpcyByZWFkeS4iKTsKKyAgfTsKK2A7Citj
b25zdCBibG9iID0gbmV3IEJsb2IoW3dvcmtlclNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNj
cmlwdCcgfSk7Citjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKK2Nv
bnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoYmxvYlVybCk7CisKK2Z1bmN0aW9uIHdhaXRGb3JXb3Jr
ZXIoKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICB3b3JrZXIub25t
ZXNzYWdlID0gcmVzb2x2ZTsKKyAgICB3b3JrZXIucG9zdE1lc3NhZ2UoIlBpbmcgdG8gd29ya2Vy
LiIpOworICB9KTsKK30KKzwvc2NyaXB0PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1ibG9iLXVybC13b3JrZXIuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLWJsb2ItdXJsLXdvcmtlci5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
N2U0ODgyYzI0ZjcyNzNlMzQ2OWI5YjYwNjQ5ZmZhNGI0ZjM5NjE3Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1ibG9iLXVybC13b3JrZXIuanMK
QEAgLTAsMCArMSwyMiBAQAorY29uc3QgY2hpbGRXb3JrZXJTY3JpcHQgPSBgCisgIHNlbGYub25t
ZXNzYWdlID0gYXN5bmMgKGUpID0+IHsKKyAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNo
KGUuZGF0YSk7CisgICAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTsKKyAgICBz
ZWxmLnBvc3RNZXNzYWdlKHRleHQpOworICB9OworYDsKK2NvbnN0IGJsb2IgPSBuZXcgQmxvYihb
Y2hpbGRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworY29uc3Qg
YmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7Citjb25zdCBjaGlsZFdvcmtlciA9
IG5ldyBXb3JrZXIoYmxvYlVybCk7CisKKy8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhl
IHBhcmVudCBmcmFtZSwgc2VuZHMgYSByZXNvdXJjZSB1cmwgdG8gdGhlIGNoaWxkCisvLyB3b3Jr
ZXIuCitzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7CisgIGNoaWxkV29ya2VyLnBvc3RNZXNzYWdl
KGUuZGF0YSk7Cit9OworCisvLyBXaGVuIGEgbWVzc2FnZSBjb21lcyBmcm9tIHRoZSBjaGlsZCB3
b3JrZXIsIHNlbmRzIGEgY29udGVudCBvZiBmZXRjaCgpIHRvIHRoZQorLy8gcGFyZW50IGZyYW1l
LgorY2hpbGRXb3JrZXIub25tZXNzYWdlID0gKGUpID0+IHsKKyAgc2VsZi5wb3N0TWVzc2FnZShl
LmRhdGEpOworfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jcmVh
dGUtb3V0LW9mLXNjb3BlLXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2NyZWF0ZS1vdXQtb2Ytc2NvcGUtd29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjUxYzQ1MTc1MDk0
NzBjZTVmMjk0MGIxYWM2NDI0MmQ2NTg4NWVjMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9jcmVhdGUtb3V0LW9mLXNjb3BlLXdvcmtlci5odG1sCkBAIC0w
LDAgKzEsMTkgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2NvbnN0IHdvcmtlclVybCA9
ICcuLi9vdXQtb2Ytc2NvcGUvc2FtcGxlLXN5bnRoZXNpemVkLXdvcmtlci5qcz9kZWRpY2F0ZWQn
OworY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcih3b3JrZXJVcmwpOworY29uc3Qgd29ya2VyUHJv
bWlzZSA9IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICB3b3JrZXIub25tZXNzYWdlID0gZSA9
PiB7CisgICAgLy8gYGUuZGF0YWAgaXMgJ3dvcmtlciBsb2FkaW5nIGludGVyY2VwdGVkIGJ5IHNl
cnZpY2Ugd29ya2VyJyB3aGVuIGEgd29ya2VyCisgICAgLy8gaXMgaW50ZXJjZXB0ZWQgYnkgYSBz
ZXJ2aWNlIHdvcmtlci4KKyAgICByZXNvbHZlKGUuZGF0YSk7CisgIH0KKyAgd29ya2VyLm9uZXJy
b3IgPSBfID0+IHsKKyAgICByZXNvbHZlKCd3b3JrZXIgbG9hZGluZyB3YXMgbm90IGludGVyY2Vw
dGVkIGJ5IHNlcnZpY2Ugd29ya2VyJyk7CisgIH0KK30pOworCitmdW5jdGlvbiBnZXRXb3JrZXJQ
cm9taXNlKCkgeworICByZXR1cm4gd29ya2VyUHJvbWlzZTsKK30KKzwvc2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRv
ci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0
b3IuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxMjllZDUxZWE1NTBjMjEwYWJj
NTNlMTEyMDllN2EzZTlkYzM2YjEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRl
cmNlcHRvci5qcworKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLWltcG9ydFNjcmlwdHMo
Jy9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMnKTsKLQotY29uc3QgdGV4dCA9ICd3b3JrZXIg
bG9hZGluZyBpbnRlcmNlcHRlZCBieSBzZXJ2aWNlIHdvcmtlcic7Ci1jb25zdCBkZWRpY2F0ZWRf
d29ya2VyX3NjcmlwdCA9IGBwb3N0TWVzc2FnZSgnJHt0ZXh0fScpO2A7Ci1jb25zdCBzaGFyZWRf
d29ya2VyX3NjcmlwdCA9Ci0gICAgYG9uY29ubmVjdCA9IGV2dCA9PiBldnQucG9ydHNbMF0ucG9z
dE1lc3NhZ2UoJyR7dGV4dH0nKTtgOwotCi1zZWxmLm9uZmV0Y2ggPSBldmVudCA9PiB7Ci0gIGNv
bnN0IHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICBjb25zdCBkZXN0aW5hdGlvbiA9IGV2ZW50
LnJlcXVlc3QuZGVzdGluYXRpb247Ci0KLSAgLy8gUmVxdWVzdCBoYW5kbGVyIGZvciBhIHN5bnRo
ZXNpemVkIHJlc3BvbnNlLgotICBpZiAodXJsLmluZGV4T2YoJ3N5bnRoZXNpemVkJykgIT0gLTEp
IHsKLSAgICBsZXQgc2NyaXB0X2hlYWRlcnMgPSBuZXcgSGVhZGVycyh7ICJDb250ZW50LVR5cGUi
OiAidGV4dC9qYXZhc2NyaXB0IiB9KTsKLSAgICBpZiAoZGVzdGluYXRpb24gPT09ICd3b3JrZXIn
KQotICAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKGRlZGljYXRlZF93b3JrZXJf
c2NyaXB0LCB7ICdoZWFkZXJzJzogc2NyaXB0X2hlYWRlcnMgfSkpOwotICAgIGVsc2UgaWYgKGRl
c3RpbmF0aW9uID09PSAnc2hhcmVkd29ya2VyJykKLSAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5l
dyBSZXNwb25zZShzaGFyZWRfd29ya2VyX3NjcmlwdCwgeyAnaGVhZGVycyc6IHNjcmlwdF9oZWFk
ZXJzIH0pKTsKLSAgICBlbHNlCi0gICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2Uo
J1VuZXhwZWN0ZWQgcmVxdWVzdCEgJyArIGRlc3RpbmF0aW9uKSk7Ci0gICAgcmV0dXJuOwotICB9
Ci0KLSAgLy8gUmVxdWVzdCBoYW5kbGVyIGZvciBhIHNhbWUtb3JpZ2luIHJlc3BvbnNlLgotICBp
ZiAodXJsLmluZGV4T2YoJ3NhbWUtb3JpZ2luJykgIT0gLTEpIHsKLSAgICBldmVudC5yZXNwb25k
V2l0aChmZXRjaCgncG9zdG1lc3NhZ2Utb24tbG9hZC13b3JrZXIuanMnKSk7Ci0gICAgcmV0dXJu
OwotICB9Ci0KLSAgLy8gUmVxdWVzdCBoYW5kbGVyIGZvciBhIGNyb3NzLW9yaWdpbiByZXNwb25z
ZS4KLSAgaWYgKHVybC5pbmRleE9mKCdjb3JzJykgIT0gLTEpIHsKLSAgICBjb25zdCBmaWxlbmFt
ZSA9ICdwb3N0bWVzc2FnZS1vbi1sb2FkLXdvcmtlci5qcyc7Ci0gICAgY29uc3QgcGF0aCA9IChu
ZXcgVVJMKGZpbGVuYW1lLCBzZWxmLmxvY2F0aW9uKSkucGF0aG5hbWU7Ci0gICAgbGV0IG5ld191
cmwgPSBnZXRfaG9zdF9pbmZvKClbJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIHBhdGg7Ci0gICAg
bGV0IG1vZGU7Ci0gICAgaWYgKHVybC5pbmRleE9mKCduby1jb3JzJykgIT0gLTEpIHsKLSAgICAg
IC8vIFRlc3Qgbm8tY29ycyBtb2RlLgotICAgICAgbW9kZSA9ICduby1jb3JzJzsKLSAgICB9IGVs
c2UgewotICAgICAgLy8gVGVzdCBjb3JzIG1vZGUuCi0gICAgICBuZXdfdXJsICs9ICc/cGlwZT1o
ZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luLCopJzsKLSAgICAgIG1vZGUgPSAnY29y
cyc7Ci0gICAgfQotICAgIGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKG5ld191cmwsIHsgbW9kZTog
bW9kZSB9KSk7Ci0gIH0KLX07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMmExNzk5ODBkZjJmZjYwYzI1ODgyNzExOWM3
OGE2NDVlMWE3NGE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxib2R5PkhlbGxvIHdvcmxkCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggODAyOTkyYzQyMjBkZTE5YTkwNzY3ZjMwMDBhNzlhMzFiOThkMGRmNy4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZHVtbXkudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotSGVsbG8gd29ybGQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0
LXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0
LXdvcmtlci5qcwppbmRleCAwYTUyYTgyMDFlYTk2ZDUwZDNmYTZlZTMwMmY2YWE5MGI0NDM1ZGE2
Li5iYjU5YmM5Mjg2NTFhY2Q1Mjc0NDMxZTZkMzE3MTFjNDI4ODUyM2JhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtZXZlbnQtdGVzdC13b3JrZXIuanMKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50LXRlc3Qtd29ya2VyLmpz
CkBAIC0xNTUsNiArMTU1LDI5IEBAIGZ1bmN0aW9uIGhhbmRsZUlzSGlzdG9yeU5hdmlnYXRpb24o
ZXZlbnQpIHsKICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKGJvZHkpKTsKIH0KIAor
ZnVuY3Rpb24gaGFuZGxlVXNlQW5kSWdub3JlKGV2ZW50KSB7CisgIGNvbnN0IHJlcXVlc3QgPSBl
dmVudC5yZXF1ZXN0OworICByZXF1ZXN0LnRleHQoKTsKKyAgcmV0dXJuOworfQorCitmdW5jdGlv
biBoYW5kbGVDbG9uZUFuZElnbm9yZShldmVudCkgeworICBjb25zdCByZXF1ZXN0ID0gZXZlbnQu
cmVxdWVzdDsKKyAgcmVxdWVzdC5jbG9uZSgpLnRleHQoKTsKKyAgcmV0dXJuOworfQorCit2YXIg
aGFuZGxlX3N0YXR1c19jb3VudCA9IDA7CitmdW5jdGlvbiBoYW5kbGVTdGF0dXMoZXZlbnQpIHsK
KyAgaGFuZGxlX3N0YXR1c19jb3VudCsrOworICBldmVudC5yZXNwb25kV2l0aChhc3luYyBmdW5j
dGlvbigpIHsKKyAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChldmVudC5yZXF1ZXN0KTsKKyAg
ICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzLnRleHQoKTsKKyAgICByZXR1cm4gbmV3IFJlc3BvbnNl
KGAke3RleHR9LiBSZXF1ZXN0IHdhcyBzZW50ICR7aGFuZGxlX3N0YXR1c19jb3VudH0gdGltZXMu
YCwKKyAgICAgIHsic3RhdHVzIjogbmV3IFVSTChldmVudC5yZXF1ZXN0LnVybCkuc2VhcmNoUGFy
YW1zLmdldCgic3RhdHVzIil9KTsKKyAgfSgpKTsKK30KKwogc2VsZi5hZGRFdmVudExpc3RlbmVy
KCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3Qu
dXJsOwogICAgIHZhciBoYW5kbGVycyA9IFsKQEAgLTE4MCw2ICsyMDMsOSBAQCBzZWxmLmFkZEV2
ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgIHsgcGF0dGVybjog
Jz9rZWVwYWxpdmUnLCBmbjogaGFuZGxlS2VlcGFsaXZlIH0sCiAgICAgICB7IHBhdHRlcm46ICc/
aXNSZWxvYWROYXZpZ2F0aW9uJywgZm46IGhhbmRsZUlzUmVsb2FkTmF2aWdhdGlvbiB9LAogICAg
ICAgeyBwYXR0ZXJuOiAnP2lzSGlzdG9yeU5hdmlnYXRpb24nLCBmbjogaGFuZGxlSXNIaXN0b3J5
TmF2aWdhdGlvbiB9LAorICAgICAgeyBwYXR0ZXJuOiAnP3VzZS1hbmQtaWdub3JlJywgZm46IGhh
bmRsZVVzZUFuZElnbm9yZSB9LAorICAgICAgeyBwYXR0ZXJuOiAnP2Nsb25lLWFuZC1pZ25vcmUn
LCBmbjogaGFuZGxlQ2xvbmVBbmRJZ25vcmUgfSwKKyAgICAgIHsgcGF0dGVybjogJz9zdGF0dXMn
LCBmbjogaGFuZGxlU3RhdHVzIH0sCiAgICAgXTsKIAogICAgIHZhciBoYW5kbGVyID0gbnVsbDsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1ldmVudC13aXRo
aW4tc3ctd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50
LXdpdGhpbi1zdy13b3JrZXIuanMKaW5kZXggZjMxODBkNzc2YzViMDJlZDJjZjIwMmMyOThmYWJm
ZDFlOGY4ZWExMS4uNTkwM2JhYjk2OGRjNDdhZWM4ZDVhNTFkYTE0MjJkMWVjY2JkYjA3NiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50LXdpdGhpbi1z
dy13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50
LXdpdGhpbi1zdy13b3JrZXIuanMKQEAgLTUsMjAgKzUsMjAgQEAgYWRkRXZlbnRMaXN0ZW5lcign
ZmV0Y2gnLCBldmVudCA9PiB7CiAKICAgaWYgKHVybC5vcmlnaW4gIT0gbG9jYXRpb24ub3JpZ2lu
KSByZXR1cm47CiAKLSAgaWYgKHVybC5wYXRobmFtZS5lbmRzV2l0aCgnL2R1bW15LnR4dCcpKSB7
CisgIGlmICh1cmwucGF0aG5hbWUuZW5kc1dpdGgoJy9zYW1wbGUudHh0JykpIHsKICAgICBldmVu
dC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoJ2ludGVyY2VwdGVkJykpOwogICAgIHJldHVybjsK
ICAgfQogCi0gIGlmICh1cmwucGF0aG5hbWUuZW5kc1dpdGgoJy9kdW1teS50eHQtaW5uZXItZmV0
Y2gnKSkgewotICAgIGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKCdkdW1teS50eHQnKSk7CisgIGlm
ICh1cmwucGF0aG5hbWUuZW5kc1dpdGgoJy9zYW1wbGUudHh0LWlubmVyLWZldGNoJykpIHsKKyAg
ICBldmVudC5yZXNwb25kV2l0aChmZXRjaCgnc2FtcGxlLnR4dCcpKTsKICAgICByZXR1cm47CiAg
IH0KIAotICBpZiAodXJsLnBhdGhuYW1lLmVuZHNXaXRoKCcvZHVtbXkudHh0LWlubmVyLWNhY2hl
JykpIHsKKyAgaWYgKHVybC5wYXRobmFtZS5lbmRzV2l0aCgnL3NhbXBsZS50eHQtaW5uZXItY2Fj
aGUnKSkgewogICAgIGV2ZW50LnJlc3BvbmRXaXRoKAogICAgICAgY2FjaGVzLm9wZW4oJ3Rlc3Qt
aW5uZXItY2FjaGUnKS50aGVuKGNhY2hlID0+Ci0gICAgICAgIGNhY2hlLmFkZCgnZHVtbXkudHh0
JykudGhlbigoKSA9PiBjYWNoZS5tYXRjaCgnZHVtbXkudHh0JykpCisgICAgICAgIGNhY2hlLmFk
ZCgnc2FtcGxlLnR4dCcpLnRoZW4oKCkgPT4gY2FjaGUubWF0Y2goJ3NhbXBsZS50eHQnKSkKICAg
ICAgICkKICAgICApOwogICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLWluc2NvcGUu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250ZW50LWlm
cmFtZS1pbnNjb3BlLXRvLWluc2NvcGUuaHRtbAppbmRleCBiNmEyNjBkMDY2YmZiYTA0MDIzYWUz
NWNmNWJmYjU2OTBjOWY5YzVlLi42NGE2MzRlOWRiN2I5NTViY2IyOTFmZmEwMmIyM2RhM2I4OTYy
ZjQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtbWl4ZWQt
Y29udGVudC1pZnJhbWUtaW5zY29wZS10by1pbnNjb3BlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1peGVkLWNvbnRlbnQtaWZyYW1lLWluc2NvcGUtdG8taW5z
Y29wZS5odG1sCkBAIC0xNSw3ICsxNSw3IEBAIGZ1bmN0aW9uIHRlc3QxKCkgewogICAgIHJlc3Vs
dHMgKz0gJ0ZBSUwoMSknOwogICAgIHRlc3QyKCk7CiAgIH07Ci0gIGltZy5zcmMgPSAnLi9kdW1t
eT91cmw9JyArCisgIGltZy5zcmMgPSAnLi9zYW1wbGU/dXJsPScgKwogICAgICAgICAgICAgZW5j
b2RlVVJJQ29tcG9uZW50KGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBpbWFnZV9wYXRoKTsK
IH0KIApAQCAtMjksNyArMjksNyBAQCBmdW5jdGlvbiB0ZXN0MigpIHsKICAgICByZXN1bHRzICs9
ICdGQUlMKDIpJzsKICAgICB0ZXN0MygpOwogICB9OwotICBpbWcuc3JjID0gJy4vZHVtbXk/bW9k
ZT1uby1jb3JzJnVybD0nICsKKyAgaW1nLnNyYyA9ICcuL3NhbXBsZT9tb2RlPW5vLWNvcnMmdXJs
PScgKwogICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGhvc3RfaW5mb1snSFRUUFNfUkVN
T1RFX09SSUdJTiddICsgaW1hZ2VfcGF0aCk7CiB9CiAKQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rp
b24gdGVzdDMoKSB7CiAgIGltZy5vbmVycm9yID0gZnVuY3Rpb24oKSB7CiAgICAgdGVzdDQoKTsK
ICAgfTsKLSAgaW1nLnNyYyA9ICcuL2R1bW15P21vZGU9bm8tY29ycyZ1cmw9JyArCisgIGltZy5z
cmMgPSAnLi9zYW1wbGU/bW9kZT1uby1jb3JzJnVybD0nICsKICAgICAgICAgICAgIGVuY29kZVVS
SUNvbXBvbmVudChob3N0X2luZm9bJ0hUVFBfT1JJR0lOJ10gKyBpbWFnZV9wYXRoKTsKIH0KIApA
QCAtNTcsNyArNTcsNyBAQCBmdW5jdGlvbiB0ZXN0NCgpIHsKICAgaW1nLm9uZXJyb3IgPSBmdW5j
dGlvbigpIHsKICAgICBmaW5pc2goKTsKICAgfTsKLSAgaW1nLnNyYyA9ICcuL2R1bW15P21vZGU9
bm8tY29ycyZ1cmw9JyArCisgIGltZy5zcmMgPSAnLi9zYW1wbGU/bW9kZT1uby1jb3JzJnVybD0n
ICsKICAgICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChob3N0X2luZm9bJ0hUVFBfUkVNT1RF
X09SSUdJTiddICsgaW1hZ2VfcGF0aCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLW91dHNj
b3BlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtbWl4ZWQtY29udGVu
dC1pZnJhbWUtaW5zY29wZS10by1vdXRzY29wZS5odG1sCmluZGV4IGI4Yzk0MGMyYTBhNTY4MGFh
MjI4MmNiN2UzYjYxOTQwOGVkODJmODYuLmJlMGI1YzhmNTYxZGVmY2Y3YjEwOTc3ZjU0ZDI3MGFi
ODM4YmMwOWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1t
aXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLW91dHNjb3BlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1peGVkLWNvbnRlbnQtaWZyYW1lLWluc2NvcGUt
dG8tb3V0c2NvcGUuaHRtbApAQCAtNjcsNyArNjcsNyBAQCBmdW5jdGlvbiB0ZXN0NSgpIHsKICAg
ICByZXN1bHRzICs9ICdGQUlMKDUpJzsKICAgICBmaW5pc2goKTsKICAgfTsKLSAgaW1nLnNyYyA9
ICcuL2R1bW15P2dlbmVyYXRlLXBuZyc7CisgIGltZy5zcmMgPSAnLi9zYW1wbGU/Z2VuZXJhdGUt
cG5nJzsKIH0KIAogZnVuY3Rpb24gZmluaXNoKCkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLXN0eWxlLmNzcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC1zdHls
ZS5jc3MKaW5kZXggNzY0M2Y2NjdhZGJjMjYzMjQzZDkzZjZmYTNhM2I0NmE3N2Q0ZGUxMS4uZjE0
ZmNhYWU3Mjc1ZDQyZjY4Y2FjODNlZWQ2ZDc4NzI3NDYxYTZlMyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLXN0eWxlLmNz
cworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFz
ZS11cmwtc3R5bGUuY3NzCkBAIC0xICsxIEBACi1ib2R5IHsgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCIuL2R1bW15LnBuZyIpO30KK2JvZHkgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi4vc2FtcGxl
LnBuZyIpO30KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1y
ZXF1ZXN0LWNzcy1iYXNlLXVybC13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwtd29ya2VyLmpzCmluZGV4IGU4ZGJkMjcyNWM2
OGY5MzI2YzQxYWU1ZTdiZGU2NTE1ODk3MGEyNzIuLjEwZDNiMTg4MDkzNGU2MzNlY2FhZjlhMGRj
NTkwNTQ3Y2U0NmU0NjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9m
ZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLXdvcmtlci5qcwpAQCAtMjMs
NyArMjMsNyBAQCBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZXZlbnQgPT4gewogICAg
IH0KICAgICAvLyBSZXNwb25kIHdpdGggbmV3IFJlc3BvbnNlKCkuCiAgICAgZWxzZSBpZiAodXJs
LnNlYXJjaCA9PSAnP25ld1Jlc3BvbnNlJykgewotICAgICAgY29uc3Qgc3R5bGVTdHJpbmcgPSAn
Ym9keSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgiLi9kdW1teS5wbmciKTt9JzsKKyAgICAgIGNv
bnN0IHN0eWxlU3RyaW5nID0gJ2JvZHkgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi4vc2FtcGxl
LnBuZyIpO30nOwogICAgICAgY29uc3QgaGVhZGVycyA9IHsnY29udGVudC10eXBlJzogJ3RleHQv
Y3NzJ307CiAgICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2Uoc3R5bGVTdHJpbmcs
IGhlYWRlcnMpKTsKICAgICB9CkBAIC0zMSw3ICszMSw3IEBAIHNlbGYuYWRkRXZlbnRMaXN0ZW5l
cignZmV0Y2gnLCBldmVudCA9PiB7CiAKICAgLy8gVGhlIGltYWdlIHJlcXVlc3QgaW5kaWNhdGVz
IHdoYXQgdGhlIGJhc2UgVVJMIG9mIHRoZSBDU1Mgd2FzLiBNZXNzYWdlIHRoZQogICAvLyByZXN1
bHQgYmFjayB0byB0aGUgdGVzdCBwYWdlLgotICBlbHNlIGlmICh1cmwucGF0aG5hbWUuaW5kZXhP
ZignZHVtbXkucG5nJykgIT0gLTEpIHsKKyAgZWxzZSBpZiAodXJsLnBhdGhuYW1lLmluZGV4T2Yo
J3NhbXBsZS5wbmcnKSAhPSAtMSkgewogICAgIC8vIEZvciBzb21lIHJlYXNvbiB8c291cmNlfCBp
cyB1bmRlZmluZWQgaGVyZSB3aGVuIHJ1bm5pbmcgdGhlIHRlc3QgbWFudWFsbHkKICAgICAvLyBp
biBGaXJlZm94LiBUaGUgdGVzdCBhdXRob3IgZXhwZXJpbWVudGVkIHdpdGggYm90aCB1c2luZyBD
bGllbnQKICAgICAvLyAoZXZlbnQuc291cmNlKSBhbmQgTWVzc2FnZVBvcnQgdG8gdHJ5IHRvIGdl
dCB0aGUgdGVzdCB0byBwYXNzLCBidXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0bWwtaW1wb3J0cy1pZnJhbWUuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0bWwtaW1wb3J0cy1pZnJhbWUuaHRt
bAppbmRleCA3OTUxODU5NDRlOTQyMzAzOGU3MDQyMWJjYjg2ZWQ0NTM3ZTA2ODdmLi4wN2EwODQy
NTdhOGNmZWMzYTFlNjMxMDQzM2M2ZDViMGI3NjkzZjU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1odG1sLWltcG9ydHMtaWZyYW1lLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBv
cnRzLWlmcmFtZS5odG1sCkBAIC04LDYgKzgsNiBAQAogICAgICAgbGluay5ocmVmID0gdXJsOwog
ICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFwcGVuZENoaWxkKGxpbmspOwogICAgIH07
Ci0gIG1ha2VMaW5rKCdzYW1lJywgaG9zdEluZm8uSFRUUFNfT1JJR0lOICsgJy9kdW1teS1kaXIv
c2FtZS5odG1sJyk7Ci0gIG1ha2VMaW5rKCdvdGhlcicsIGhvc3RJbmZvLkhUVFBTX1JFTU9URV9P
UklHSU4gKyAnL2R1bW15LWRpci9vdGhlci5odG1sJyk7CisgIG1ha2VMaW5rKCdzYW1lJywgaG9z
dEluZm8uSFRUUFNfT1JJR0lOICsgJy9zYW1wbGUtZGlyL3NhbWUuaHRtbCcpOworICBtYWtlTGlu
aygnb3RoZXInLCBob3N0SW5mby5IVFRQU19SRU1PVEVfT1JJR0lOICsgJy9zYW1wbGUtZGlyL290
aGVyLmh0bWwnKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBvcnRzLXdvcmtlci5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0bWwtaW1wb3J0cy13b3JrZXIuanMKaW5k
ZXggNTUyNWQ1MjY4NjZhZjhhOTk0MTAzMWQwYmM1NDYyMWIyYzZkNjJiZi4uMTEwNzI3YmQ1MmNm
NjIyNDI3Nzg0ODJlNDlhNmNjZjdhOTAyYmZiOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBvcnRzLXdvcmtlci5qcworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1odG1sLWltcG9ydHMtd29y
a2VyLmpzCkBAIC0zLDI3ICszLDI3IEBAIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7
CiAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAg
IHZhciB1cmwgPSBldmVudC5yZXF1ZXN0LnVybDsKLSAgICBpZiAodXJsLmluZGV4T2YoJ2R1bW15
LWRpcicpID09IC0xKSB7CisgICAgaWYgKHVybC5pbmRleE9mKCdzYW1wbGUtZGlyJykgPT0gLTEp
IHsKICAgICAgIHJldHVybjsKICAgICB9CiAgICAgdmFyIHJlc3VsdCA9ICdtb2RlPScgKyBldmVu
dC5yZXF1ZXN0Lm1vZGUgKwogICAgICAgJyBjcmVkZW50aWFscz0nICsgZXZlbnQucmVxdWVzdC5j
cmVkZW50aWFsczsKLSAgICBpZiAodXJsID09IGhvc3RfaW5mby5IVFRQU19PUklHSU4gKyAnL2R1
bW15LWRpci9zYW1lLmh0bWwnKSB7CisgICAgaWYgKHVybCA9PSBob3N0X2luZm8uSFRUUFNfT1JJ
R0lOICsgJy9zYW1wbGUtZGlyL3NhbWUuaHRtbCcpIHsKICAgICAgIGV2ZW50LnJlc3BvbmRXaXRo
KG5ldyBSZXNwb25zZSgKICAgICAgICAgcmVzdWx0ICsKICAgICAgICAgJzxsaW5rIGlkPSJzYW1l
LXNhbWUiIHJlbD0iaW1wb3J0IiAnICsKLSAgICAgICAgJ2hyZWY9IicgKyBob3N0X2luZm8uSFRU
UFNfT1JJR0lOICsgJy9kdW1teS1kaXIvc2FtZS1zYW1lLmh0bWwiPicgKworICAgICAgICAnaHJl
Zj0iJyArIGhvc3RfaW5mby5IVFRQU19PUklHSU4gKyAnL3NhbXBsZS1kaXIvc2FtZS1zYW1lLmh0
bWwiPicgKwogICAgICAgICAnPGxpbmsgaWQ9InNhbWUtb3RoZXIiIHJlbD0iaW1wb3J0IiAnICsK
ICAgICAgICAgJyBocmVmPSInICsgaG9zdF9pbmZvLkhUVFBTX1JFTU9URV9PUklHSU4gKwotICAg
ICAgICAnL2R1bW15LWRpci9zYW1lLW90aGVyLmh0bWwiPicpKTsKLSAgICB9IGVsc2UgaWYgKHVy
bCA9PSBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiArICcvZHVtbXktZGlyL290aGVyLmh0
bWwnKSB7CisgICAgICAgICcvc2FtcGxlLWRpci9zYW1lLW90aGVyLmh0bWwiPicpKTsKKyAgICB9
IGVsc2UgaWYgKHVybCA9PSBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiArICcvc2FtcGxl
LWRpci9vdGhlci5odG1sJykgewogICAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNl
KAogICAgICAgICByZXN1bHQgKwogICAgICAgICAnPGxpbmsgaWQ9Im90aGVyLXNhbWUiIHJlbD0i
aW1wb3J0IiAnICsKLSAgICAgICAgJyBocmVmPSInICsgaG9zdF9pbmZvLkhUVFBTX09SSUdJTiAr
ICcvZHVtbXktZGlyL290aGVyLXNhbWUuaHRtbCI+JyArCisgICAgICAgICcgaHJlZj0iJyArIGhv
c3RfaW5mby5IVFRQU19PUklHSU4gKyAnL3NhbXBsZS1kaXIvb3RoZXItc2FtZS5odG1sIj4nICsK
ICAgICAgICAgJzxsaW5rIGlkPSJvdGhlci1vdGhlciIgcmVsPSJpbXBvcnQiICcgKwogICAgICAg
ICAnIGhyZWY9IicgKyBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiArCi0gICAgICAgICcv
ZHVtbXktZGlyL290aGVyLW90aGVyLmh0bWwiPicpKTsKKyAgICAgICAgJy9zYW1wbGUtZGlyL290
aGVyLW90aGVyLmh0bWwiPicpKTsKICAgICB9IGVsc2UgewogICAgICAgZXZlbnQucmVzcG9uZFdp
dGgobmV3IFJlc3BvbnNlKHJlc3VsdCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy1pZnJhbWUuaHR0cHMuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy1p
ZnJhbWUuaHR0cHMuaHRtbAppbmRleCBiOTc4MzA3MWUxMjUxNWI3ZTljYjY4M2NlMzM5NzBhMzEz
MDRjZTJkLi44NmU5ZjRiYjM1OThhNTk1MTkyMGQxM2UxZTAwMmQ3OGZlMGFhMjFlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMt
aWZyYW1lLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNo
LXJlcXVlc3QtcmVzb3VyY2VzLWlmcmFtZS5odHRwcy5odG1sCkBAIC00NCw3ICs0NCwxMCBAQCBm
dW5jdGlvbiBsb2FkX2Nzc19pbWFnZSh1cmwsIHR5cGUpIHsKIGZ1bmN0aW9uIGxvYWRfY3NzX2lt
YWdlX3NldCh1cmwsIHR5cGUpIHsKICAgY29uc3QgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnZGl2Jyk7CiAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGl2KTsKLSAgZGl2LnN0eWxl
W3R5cGVdID0gJy13ZWJraXQtaW1hZ2Utc2V0KHVybCgnICsgdXJsICsgJykgMXgpJzsKKyAgZGl2
LnN0eWxlW3R5cGVdID0gJ2ltYWdlLXNldCh1cmwoJyArIHVybCArICcpIDF4KSc7CisgIGlmICgh
ZGl2LnN0eWxlW3R5cGVdKSB7CisgICAgZGl2LnN0eWxlW3R5cGVdID0gJy13ZWJraXQtaW1hZ2Ut
c2V0KHVybCgnICsgdXJsICsgJykgMXgpJzsKKyAgfQogfQogCiBmdW5jdGlvbiBsb2FkX3Njcmlw
dF93aXRoX2ludGVncml0eSh1cmwsIGludGVncml0eSkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLXdvcmtlci5qcyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy13b3JrZXIu
anMKaW5kZXggNWM5ZTg2ZDY2ODQ2NjA1YTk2YTlmZDYxODg5ZTcxYjdhZDRiN2QwMC4uOTgzY2Nj
YjhkYjc4OTVkOGQ3Mjk0MzA2MWI2NjYwYTg2ZmU5OWEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLXdvcmtlci5qcworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtd29y
a2VyLmpzCkBAIC0xMSw3ICsxMSw3IEBAIHNlbGYub25tZXNzYWdlID0gZSA9PiB7CiAKIHNlbGYu
YWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBlID0+IHsKICAgY29uc3QgdXJsID0gZS5yZXF1ZXN0
LnVybDsKLSAgaWYgKCF1cmwuaW5jbHVkZXMoJ2R1bW15P3Rlc3QnKSkgeworICBpZiAoIXVybC5p
bmNsdWRlcygnc2FtcGxlP3Rlc3QnKSkgewogICAgIHJldHVybjsKICAgfQogICBwb3J0LnBvc3RN
ZXNzYWdlKHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1y
ZXF1ZXN0LXhoci1pZnJhbWUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9mZXRjaC1yZXF1ZXN0LXhoci1pZnJhbWUuaHR0cHMuaHRtbAppbmRleCA2NWZhNTE3MWIzZDQz
MGIwN2FjY2Y5MTcxODEwMzNkNmZjYWEzZGYwLi5iM2RkZWMxYTcwMWI0MzgwMjVkOWI1ZGQyMDc1
NjYyZGFkYjc5YmY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0
Y2gtcmVxdWVzdC14aHItaWZyYW1lLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLWlmcmFtZS5odHRwcy5odG1sCkBAIC0zMiw3ICsz
Miw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKHVybF9iYXNlLCBtZXRob2QsIGRhdGEsIHdpdGhfY3Jl
ZGVudGlhbHMpIHsKICAgICAgIGlmICh3aXRoX2NyZWRlbnRpYWxzKSB7CiAgICAgICAgIHhoci53
aXRoQ3JlZGVudGlhbHMgPSB0cnVlOwogICAgICAgfQotICAgICAgeGhyLm9wZW4obWV0aG9kLCB1
cmxfYmFzZSArICcvZHVtbXk/dGVzdCcsIHRydWUpOworICAgICAgeGhyLm9wZW4obWV0aG9kLCB1
cmxfYmFzZSArICcvc2FtcGxlP3Rlc3QnLCB0cnVlKTsKICAgICAgIHhoci5zZW5kKGRhdGEpOwog
ICAgIH0pOwogfQpAQCAtMTYxLDcgKzE2MSw3IEBAIGZ1bmN0aW9uIGZvcm1fZGF0YV90ZXN0KCkg
ewogICAgICAgICAgICdcclxuJyArCiAgICAgICAgICAgJ2ZpbGUgY29udGVudFxyXG4nICsKICAg
ICAgICAgICAnLS0nICsgYm91bmRhcnkgKyAnLS1cclxuJzsKLSAgICAgICAgYXNzZXJ0X3RydWUo
cmVzcG9uc2UuYm9keSA9PT0gZXhwZWN0ZWRfYm9keSwgImZvcm0gZGF0YSByZXNwb25zZSBjb250
ZW50IGlzIGFzIGV4cGVjdGVkIik7CisgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UuYm9k
eSwgZXhwZWN0ZWRfYm9keSwgImZvcm0gZGF0YSByZXNwb25zZSBjb250ZW50IGlzIGFzIGV4cGVj
dGVkIik7CiAgICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3Itd29ya2VyLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3Itd29ya2VyLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmI4ZDNkYjk5YmNjODExZjk1NjIwNzM1Yzg4N2E5ZDkxZTRkYTJjMmYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVz
dC14aHItc3luYy1lcnJvci13b3JrZXIuanMKQEAgLTAsMCArMSwxOSBAQAorInVzZSBzdHJpY3Qi
OworCitzZWxmLm9uZmV0Y2ggPSBldmVudCA9PiB7CisgIGlmIChldmVudC5yZXF1ZXN0LnVybC5l
bmRzV2l0aCgibm9uLWV4aXN0ZW50LXN0cmVhbS0xLnR4dCIpKSB7CisgICAgY29uc3QgcnMxID0g
bmV3IFJlYWRhYmxlU3RyZWFtKCk7CisgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNl
KHJzMSkpOworICAgIHJzMS5jYW5jZWwoMSk7CisgIH0gZWxzZSBpZiAoZXZlbnQucmVxdWVzdC51
cmwuZW5kc1dpdGgoIm5vbi1leGlzdGVudC1zdHJlYW0tMi50eHQiKSkgeworICAgIGNvbnN0IHJz
MiA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7CisgICAgICBzdGFydChjb250cm9sbGVyKSB7IGNvbnRy
b2xsZXIuZXJyb3IoMSkgfQorICAgIH0pOworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNw
b25zZShyczIpKTsKKyAgfSBlbHNlIGlmIChldmVudC5yZXF1ZXN0LnVybC5lbmRzV2l0aCgibm9u
LWV4aXN0ZW50LXN0cmVhbS0zLnR4dCIpKSB7CisgICAgY29uc3QgcnMzID0gbmV3IFJlYWRhYmxl
U3RyZWFtKHsKKyAgICAgIHB1bGwoY29udHJvbGxlcikgeyBjb250cm9sbGVyLmVycm9yKDEpIH0K
KyAgICB9KTsKKyAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UocnMzKSk7CisgIH0K
K307CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVz
dC14aHItd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVl
c3QteGhyLXdvcmtlci5qcwppbmRleCA5MWIzYWJiMTRkOWM2NzVhMGJkODg2MzQ0YTI2NDgyZjM2
YmI1NzcwLi40ZTQyODM3NGJjMjI3MTkxYzFiZjdhYzIzZDI3YjgyMGFhNTZkZDllIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItd29ya2Vy
LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci13
b3JrZXIuanMKQEAgLTEsNiArMSw2IEBACiBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywg
ZnVuY3Rpb24oZXZlbnQpIHsKICAgICB2YXIgdXJsID0gZXZlbnQucmVxdWVzdC51cmw7Ci0gICAg
aWYgKHVybC5pbmRleE9mKCdkdW1teT90ZXN0JykgPT0gLTEpIHsKKyAgICBpZiAodXJsLmluZGV4
T2YoJ3NhbXBsZT90ZXN0JykgPT0gLTEpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAgICAgZXZl
bnQucmVzcG9uZFdpdGgobmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkgewpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci1pZnJhbWUu
aHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXNwb25zZS14
aHItaWZyYW1lLmh0dHBzLmh0bWwKaW5kZXggNjEyYzkzNDFlYjc4NTc2OGEzZDRmOWFkNWJhMjkx
MGZjOTBmNjc3ZC4uYzI2ZWViZWU0OWQ4M2U3NjhiOWU1OGY1NWQ2ZTQ2ODdhMmM1YzExMCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci1p
ZnJhbWUuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gt
cmVzcG9uc2UteGhyLWlmcmFtZS5odHRwcy5odG1sCkBAIC0xMyw3ICsxMyw3IEBAIGZ1bmN0aW9u
IHhocl9zZW5kKG1ldGhvZCwgZGF0YSkgewogICAgICAgICByZWplY3QoJ1hIUiBzaG91bGQgc3Vj
Y2VlZC4nKTsKICAgICAgIH07CiAgICAgICB4aHIucmVzcG9uc2VUeXBlID0gJ3RleHQnOwotICAg
ICAgeGhyLm9wZW4obWV0aG9kLCAnLi9kdW1teT90ZXN0JywgdHJ1ZSk7CisgICAgICB4aHIub3Bl
bihtZXRob2QsICcuL3NhbXBsZT90ZXN0JywgdHJ1ZSk7CiAgICAgICB4aHIuc2VuZChkYXRhKTsK
ICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRj
aC1yZXNwb25zZS14aHItd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLXJlc3BvbnNlLXhoci13b3JrZXIuanMKaW5kZXggNDY1ZmJjOTFiYWE3MTY2OWNhOWMzZjMy
MTE3ZWU4MzRkZTgyOTRkMC4uMDMwMWIxMmMxOGE1NGIyYzI0ZWM0MzBjNDY5MzkwNTQ1YWJkN2E1
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNl
LXhoci13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJl
c3BvbnNlLXhoci13b3JrZXIuanMKQEAgLTEsNiArMSw2IEBACiBzZWxmLmFkZEV2ZW50TGlzdGVu
ZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICB2YXIgdXJsID0gZXZlbnQucmVxdWVz
dC51cmw7Ci0gICAgaWYgKHVybC5pbmRleE9mKCdkdW1teT90ZXN0JykgPT0gLTEpIHsKKyAgICBp
ZiAodXJsLmluZGV4T2YoJ3NhbXBsZT90ZXN0JykgPT0gLTEpIHsKICAgICAgIHJldHVybjsKICAg
ICB9CiAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkg
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJld3JpdGUt
d29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJld3JpdGUtd29y
a2VyLmpzCmluZGV4IGYyZDQ5ZTI3MDZhNDBmYjU1ZjA5OGY1ZTMzZGM2YzE3YTkzYmYxY2IuLjQ2
MzFlODNlMGNlYWFiNTA5MmE5Yjg0ZGNiYjQyOWE5OTFjOTE0NDYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXdyaXRlLXdvcmtlci5qcworKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmV3cml0ZS13b3JrZXIuanMKQEAgLTEzMyw2
ICsxMzMsMTAgQEAgc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50
KSB7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfQogCisgICAgICAgICAgaWYgKHBhcmFtc1sn
Y2xvbmUnXSkgeworICAgICAgICAgICAgcmVzcG9uc2UgPSByZXNwb25zZS5jbG9uZSgpOworICAg
ICAgICAgIH0KKwogICAgICAgICAgIC8vIHxjYWNoZXwgbWVhbnMgdG8gYm91bmNlIHJlc3BvbnNl
cyB0aHJvdWdoIENhY2hlIFN0b3JhZ2UgYW5kIGJhY2suCiAgICAgICAgICAgaWYgKHBhcmFtc1sn
Y2FjaGUnXSkgewogICAgICAgICAgICAgdmFyIGNhY2hlTmFtZSA9ICJjYWNoZWQtZmV0Y2hlcy0i
ICsgcGVyZm9ybWFuY2Uubm93KCkgKyAiLSIgKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1wcm90b3R5cGUtc2VydmljZXdvcmtlci5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbW11dGFibGUtcHJvdG90eXBlLXNlcnZpY2V3b3JrZXIu
anMKaW5kZXggMzQ2Yjk5OGNlYWMwMDRiOTNhM2ZjNTA1ODI4YTI2MTRmYmVmMTU2MC4uZDhhOTRh
ZDQ2YmVmYjA4NTc5MWQxM2YyMWU2ODcwZTA5Mjg0YWJlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1wcm90b3R5cGUtc2VydmljZXdvcmtlci5qcwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2
aWNld29ya2VyLmpzCkBAIC0yLDkgKzIsOSBAQCBmdW5jdGlvbiBwcm90b3R5cGVDaGFpbihnbG9i
YWwpIHsKICAgbGV0IHJlc3VsdCA9IFtdOwogICB3aGlsZSAoZ2xvYmFsICE9PSBudWxsKSB7CiAg
ICAgbGV0IHRocm93biA9IGZhbHNlOwotICAgIGxldCBuZXh0ID0gZ2xvYmFsLl9fcHJvdG9fXzsK
KyAgICBsZXQgbmV4dCA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihnbG9iYWwpOwogICAgIHRyeSB7
Ci0gICAgICBnbG9iYWwuX19wcm90b19fID0ge307CisgICAgICBPYmplY3Quc2V0UHJvdG90eXBl
T2YoZ2xvYmFsLCB7fSk7CiAgICAgICByZXN1bHQucHVzaCgnbXV0YWJsZScpOwogICAgIH0gY2F0
Y2ggKGUpIHsKICAgICAgIHJlc3VsdC5wdXNoKCdpbW11dGFibGUnKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtZWNoby1jb29raWUtd29ya2VyLW1vZHVs
ZS5weSBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtZWNoby1jb29raWUtd29y
a2VyLW1vZHVsZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZjBiNjhlNWEzYWFlNjc3ZmYwMTgxZThjNTM2ZGFi
ODhkNjVhODM4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2ltcG9ydC1lY2hvLWNvb2tpZS13b3JrZXItbW9kdWxlLnB5CkBAIC0wLDAgKzEsNiBAQAorZGVm
IG1haW4ocmVxdWVzdCwgcmVzcG9uc2UpOgorICAjIFRoaXMgc2NyaXB0IGdlbmVyYXRlcyBhIHdv
cmtlciBzY3JpcHQgZm9yIHN0YXRpYyBpbXBvcnRzIGZyb20gbW9kdWxlCisgICMgc2VydmljZSB3
b3JrZXJzLgorICBoZWFkZXJzID0gWyhiJ0NvbnRlbnQtVHlwZScsIGIndGV4dC9qYXZhc2NyaXB0
JyldCisgIGJvZHkgPSBiImltcG9ydCAnLi9lY2hvLWNvb2tpZS13b3JrZXIucHk/a2V5PSVzJyIg
JSByZXF1ZXN0LkdFVFtiJ2tleSddCisgIHJldHVybiBoZWFkZXJzLCBib2R5CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2lu
LXdvcmtlci5zdWIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlw
dHMtY3Jvc3Mtb3JpZ2luLXdvcmtlci5zdWIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQzMjg1NGRiOGJjN2Y4
MjkyYzQzNDM0ZDhjMjRhM2ZmZTk3ZGVjMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4td29ya2VyLnN1Yi5q
cwpAQCAtMCwwICsxIEBACitpbXBvcnRTY3JpcHRzKCdodHRwczovL3t7ZG9tYWluc1t3d3cxXX19
Ont7cG9ydHNbaHR0cHNdWzBdfX0vc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9pbXBvcnQtc2NyaXB0cy12ZXJzaW9uLnB5Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1ibG9idHlwZS1pZnJhbWUuaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0eXBlLWlmcmFtZS5odHRwcy5o
dG1sCmluZGV4IDFlNmNhY2I1NWQ3ZjgwZjZjNzFlM2JlNTEzYzEwYTc1NmQ2NjU0M2IuLjA0YTlj
YjUxNWUwOTIxNTNlZTAxNmZhOWEzZTNkYTYzNjM1YzU1YjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0eXBlLWlmcmFtZS5odHRwcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0eXBlLWlmcmFtZS5o
dHRwcy5odG1sCkBAIC0xNCw3ICsxNCw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKG1ldGhvZCwgZGF0
YSkgewogICAgICAgICByZWplY3QoJ1hIUiBtdXN0IHN1Y2NlZWQuJyk7CiAgICAgICB9OwogICAg
ICAgeGhyLnJlc3BvbnNlVHlwZSA9ICd0ZXh0JzsKLSAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4v
ZHVtbXk/dGVzdCcsIHRydWUpOworICAgICAgeGhyLm9wZW4obWV0aG9kLCAnLi9zYW1wbGU/dGVz
dCcsIHRydWUpOwogICAgICAgeGhyLnNlbmQoZGF0YSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1ibG9idHlwZS13b3JrZXIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1ibG9idHlwZS13b3JrZXIuanMK
aW5kZXggOTNmNDk2ZWY0NGU3MTNjYTI0NmZiODJlMWNiZjcxMzkxMTQzYmNlZi4uODY1ZGMzMGQ0
MjgyMjhkOWZjNWMwMTYxZDY2OTM2MGY4NGRmNzY2MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxvYnR5cGUtd29ya2VyLmpzCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0eXBlLXdvcmtlci5qcwpAQCAtMSw2ICsx
LDYgQEAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewog
ICAgIHZhciB1cmwgPSBldmVudC5yZXF1ZXN0LnVybDsKLSAgICBpZiAodXJsLmluZGV4T2YoJ2R1
bW15P3Rlc3QnKSA9PSAtMSkgeworICAgIGlmICh1cmwuaW5kZXhPZignc2FtcGxlP3Rlc3QnKSA9
PSAtMSkgewogICAgICAgcmV0dXJuOwogICAgIH0KICAgICBldmVudC5yZXNwb25kV2l0aChuZXcg
UHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItaWZyYW1lLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItaWZyYW1lLmh0dHBzLmh0bWwKaW5kZXgg
ODA1MzFiNzlkYjk1NzIzZjg4MGQ2YmI4ZjM2MzMyZjFkNDFhYzNkZS4uOGYwZTZiYWNhMTc1N2Nm
YzE4YzkyOTQzOGI3Mjc1MDkyMDMwMzM0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLWlmcmFtZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWhlYWRlci1pZnJhbWUuaHR0cHMuaHRtbApAQCAt
MTEsNyArMTEsNyBAQCBmdW5jdGlvbiB4aHJfc2VuZChtZXRob2QsIGRhdGEpIHsKICAgICAgICAg
cmVzb2x2ZSgpOwogICAgICAgfTsKICAgICAgIHhoci5yZXNwb25zZVR5cGUgPSAndGV4dCc7Ci0g
ICAgICB4aHIub3BlbihtZXRob2QsICcuL2R1bW15P3Rlc3QnLCB0cnVlKTsKKyAgICAgIHhoci5v
cGVuKG1ldGhvZCwgJy4vc2FtcGxlP3Rlc3QnLCB0cnVlKTsKICAgICAgIHhoci5zZW5kKGRhdGEp
OwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lu
dmFsaWQtaGVhZGVyLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZh
bGlkLWhlYWRlci13b3JrZXIuanMKaW5kZXggMzFlN2YyOWQwNmZkN2U0ZjJkMzg1NjAzMzllYzQ0
NDVlZWM1MTMyOC4uODUwODc0YjgxMTZkYWJjMmE4NmRlOWMxODNjYTQzMGIyYTQxNWYwNiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLXdvcmtl
ci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItd29y
a2VyLmpzCkBAIC0xLDYgKzEsNiBAQAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1
bmN0aW9uKGV2ZW50KSB7CiAgICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICAgIGlm
ICh1cmwuaW5kZXhPZignZHVtbXk/dGVzdCcpID09IC0xKSB7CisgICAgaWYgKHVybC5pbmRleE9m
KCdzYW1wbGU/dGVzdCcpID09IC0xKSB7CiAgICAgICByZXR1cm47CiAgICAgfQogICAgIGV2ZW50
LnJlc3BvbmRXaXRoKG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4xLWhlYWRlci1pZnJhbWUuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4xLWhlYWRlci1pZnJhbWUu
aHRtbAppbmRleCA5MGUzZjY5OGNmYTZiYjZkMTJlZTgxODQ5NTNiNGY3ZmJkZTcxOWU0Li5jZjJm
YThkMTRmN2M2MDg5ZDExOTc5ZTRiZTQwOTRmNGU3ZmJhYjI1IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFkZXItaWZyYW1lLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEtaGVhZGVyLWlmcmFtZS5odG1s
CkBAIC05LDcgKzksNyBAQCBmdW5jdGlvbiB4aHJfc2VuZChtZXRob2QsIGRhdGEpIHsKICAgICAg
ICAgcmVqZWN0KCdYSFIgbXVzdCBzdWNjZWVkLicpOwogICAgICAgfTsKICAgICAgIHhoci5yZXNw
b25zZVR5cGUgPSAndGV4dCc7Ci0gICAgICB4aHIub3BlbihtZXRob2QsICcuL2R1bW15P3Rlc3Qn
LCB0cnVlKTsKKyAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4vc2FtcGxlP3Rlc3QnLCB0cnVlKTsK
ICAgICAgIHhoci5zZW5kKGRhdGEpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEtaGVhZGVyLXdvcmtlci5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4xLWhlYWRlci13b3JrZXIuanMKaW5kZXggM2Fi
NWM3ZTczMTg2YjQ5ZDg4ZWFhZTk3MWNlOGMyYTZiZWY1ZDQzMS4uZDllY2NhMjc3YjNmYWU1YmM0
Njk4ZmY0NjdhODU3MTRiZTdiMTVhMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2lzby1sYXRpbjEtaGVhZGVyLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFkZXItd29ya2VyLmpzCkBAIC0xLDYgKzEsNiBAQAog
c2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgdmFy
IHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICAgIGlmICh1cmwuaW5kZXhPZignZHVtbXk/dGVz
dCcpID09IC0xKSB7CisgICAgaWYgKHVybC5pbmRleE9mKCdzYW1wbGU/dGVzdCcpID09IC0xKSB7
CiAgICAgICByZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29udHJvbGxlci1mcmFtZS5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2xvY2FsLXVybC1pbmhlcml0LWNvbnRyb2xsZXItZnJhbWUu
aHRtbAppbmRleCBiMzMxZjg4ZDQ3MTc5ZWYxNWQzZjI2MzRmODRkNmEyNzkxMDAxOTM0Li41NTIw
YzNhMzFiZjcwYTg4ZWM3NDQxZjI5Y2M3ZDVhYjM0MDEzMzJmIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29udHJvbGxlci1mcmFtZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1j
b250cm9sbGVyLWZyYW1lLmh0bWwKQEAgLTIsNyArMiw3IEBACiA8aHRtbD4KIDxzY3JpcHQ+CiAK
LWNvbnN0IGZldGNoVVJMID0gbmV3IFVSTCgnZHVtbXkudHh0Jywgd2luZG93LmxvY2F0aW9uKS5o
cmVmOworY29uc3QgZmV0Y2hVUkwgPSBuZXcgVVJMKCdzYW1wbGUudHh0Jywgd2luZG93LmxvY2F0
aW9uKS5ocmVmOwogCiBjb25zdCBmcmFtZUNvbnRyb2xsZXJUZXh0ID0KIGA8c2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2xvY2FsLXVybC1pbmhlcml0LWNv
bnRyb2xsZXItd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2xvY2FsLXVy
bC1pbmhlcml0LWNvbnRyb2xsZXItd29ya2VyLmpzCmluZGV4IDlkODk1NWYxMTFmNmYzNjI0ZGE4
YTMxZTAzMzU0NGU3MzhiYTI3NTEuLjRiN2FhZDBmNThhODUwZjBlOWY2NzY1Yjg0YWUwOGNjY2M2
MmY2ZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwt
aW5oZXJpdC1jb250cm9sbGVyLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29udHJvbGxlci13b3JrZXIuanMKQEAgLTEsNSArMSw1
IEBACiBhZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGV2dCA9PiB7Ci0gIGlmIChldnQucmVxdWVz
dC51cmwuaW5jbHVkZXMoJ2R1bW15JykpIHsKKyAgaWYgKGV2dC5yZXF1ZXN0LnVybC5pbmNsdWRl
cygnc2FtcGxlJykpIHsKICAgICBldnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKCdpbnRlcmNl
cHRlZCcpKTsKICAgfQogfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlci1jcmVhdGVkLWZyb20td29ya2VyLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlci1jcmVhdGVkLWZy
b20td29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmMwNDhlMjg4ZTkwM2U2YzU1OGM1NTE4ZDEzM2Yy
YzJlYzk2MjIzZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbApAQCAtMCww
ICsxLDE2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+Citjb25zdCBiYXNlTG9jYXRpb24g
PSB3aW5kb3cubG9jYXRpb247Citjb25zdCB3b3JrZXJVcmwgPSBuZXcgVVJMKCdjcmVhdGUtYmxv
Yi11cmwtd29ya2VyLmpzJywgYmFzZUxvY2F0aW9uKS5ocmVmOworY29uc3Qgd29ya2VyID0gbmV3
IFdvcmtlcih3b3JrZXJVcmwpOworCitmdW5jdGlvbiBmZXRjaF9pbl93b3JrZXIodXJsKSB7Cisg
IGNvbnN0IHJlc291cmNlVXJsID0gbmV3IFVSTCh1cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsKKyAg
cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CisgICAgd29ya2VyLm9ubWVzc2FnZSA9
IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICAgIHdv
cmtlci5wb3N0TWVzc2FnZShyZXNvdXJjZVVybCk7CisgIH0pOworfQorPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtl
cnMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29y
a2Vycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYwZWFmY2QzZTAxYzNmMTg1N2VlZTdmY2VkNzhhM2E0OTRh
OGFmYjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVz
dGVkLWJsb2ItdXJsLXdvcmtlcnMuaHRtbApAQCAtMCwwICsxLDM4IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxzY3JpcHQ+Citjb25zdCBiYXNlTG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247Citjb25z
dCBwYXJlbnRXb3JrZXJTY3JpcHQgPSBgCisgIGNvbnN0IGNoaWxkV29ya2VyU2NyaXB0ID0gJ3Nl
bGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsnICsKKyAgICAnICBjb25zdCByZXNwb25zZSA9
IGF3YWl0IGZldGNoKGUuZGF0YSk7JyArCisgICAgJyAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3Bv
bnNlLnRleHQoKTsnICsKKyAgICAnICBzZWxmLnBvc3RNZXNzYWdlKHRleHQpOycgKworICAgICd9
Oyc7CisgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbY2hpbGRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6
ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworICBjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVj
dFVSTChibG9iKTsKKyAgY29uc3QgY2hpbGRXb3JrZXIgPSBuZXcgV29ya2VyKGJsb2JVcmwpOwor
CisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhlIHBhcmVudCBmcmFtZSwgc2VuZHMg
YSByZXNvdXJjZSB1cmwgdG8gdGhlCisgIC8vIGNoaWxkIHdvcmtlci4KKyAgc2VsZi5vbm1lc3Nh
Z2UgPSAoZSkgPT4geworICAgIGNoaWxkV29ya2VyLnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07
CisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhlIGNoaWxkIHdvcmtlciwgc2VuZHMg
YSBjb250ZW50IG9mIGZldGNoKCkgdG8KKyAgLy8gdGhlIHBhcmVudCBmcmFtZS4KKyAgY2hpbGRX
b3JrZXIub25tZXNzYWdlID0gKGUpID0+IHsKKyAgICBzZWxmLnBvc3RNZXNzYWdlKGUuZGF0YSk7
CisgIH07CitgOworY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtwYXJlbnRXb3JrZXJTY3JpcHRdLCB7
IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVP
YmplY3RVUkwoYmxvYik7Citjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKGJsb2JVcmwpOworCitm
dW5jdGlvbiBmZXRjaF9pbl93b3JrZXIodXJsKSB7CisgIGNvbnN0IHJlc291cmNlVXJsID0gbmV3
IFVSTCh1cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNv
bHZlKSA9PiB7CisgICAgd29ya2VyLm9ubWVzc2FnZSA9IChldmVudCkgPT4geworICAgICAgcmVz
b2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICAgIHdvcmtlci5wb3N0TWVzc2FnZShyZXNvdXJj
ZVVybCk7CisgIH0pOworfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvbmVzdGVkLXdvcmtlci1jcmVhdGVkLWZyb20tYmxvYi11cmwtd29ya2VyLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLXdvcmtlci1jcmVhdGVkLWZy
b20tYmxvYi11cmwtd29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2ZhZDJjOTIyOGNlYjE1NzNhMDlh
MThjYmE0ODBmZGQ2NzQ3Y2RjNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRt
bApAQCAtMCwwICsxLDMzIEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+Citjb25zdCBiYXNl
TG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247Citjb25zdCBwYXJlbnRXb3JrZXJTY3JpcHQgPSBg
CisgIGNvbnN0IHdvcmtlclVybCA9CisgICAgbmV3IFVSTCgncG9zdG1lc3NhZ2UtZmV0Y2hlZC10
ZXh0LmpzJywgJyR7YmFzZUxvY2F0aW9ufScpLmhyZWY7CisgIGNvbnN0IGNoaWxkV29ya2VyID0g
bmV3IFdvcmtlcih3b3JrZXJVcmwpOworCisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20g
dGhlIHBhcmVudCBmcmFtZSwgc2VuZHMgYSByZXNvdXJjZSB1cmwgdG8gdGhlCisgIC8vIGNoaWxk
IHdvcmtlci4KKyAgc2VsZi5vbm1lc3NhZ2UgPSAoZSkgPT4geworICAgIGNoaWxkV29ya2VyLnBv
c3RNZXNzYWdlKGUuZGF0YSk7CisgIH07CisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20g
dGhlIGNoaWxkIHdvcmtlciwgc2VuZHMgYSBjb250ZW50IG9mIGZldGNoKCkgdG8KKyAgLy8gdGhl
IHBhcmVudCBmcmFtZS4KKyAgY2hpbGRXb3JrZXIub25tZXNzYWdlID0gKGUpID0+IHsKKyAgICBz
ZWxmLnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07CitgOworY29uc3QgYmxvYiA9IG5ldyBCbG9i
KFtwYXJlbnRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworY29u
c3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7Citjb25zdCB3b3JrZXIgPSBu
ZXcgV29ya2VyKGJsb2JVcmwpOworCitmdW5jdGlvbiBmZXRjaF9pbl93b3JrZXIodXJsKSB7Cisg
IGNvbnN0IHJlc291cmNlVXJsID0gbmV3IFVSTCh1cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsKKyAg
cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CisgICAgd29ya2VyLm9ubWVzc2FnZSA9
IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICAgIHdv
cmtlci5wb3N0TWVzc2FnZShyZXNvdXJjZVVybCk7CisgIH0pOworfQorPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZWNlZGQ2YzVkNzVjN2Q2Njc1NDNhMmNiZDJlYTg0OTE5NGQzMWJjOAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uby1keW5hbWljLWltcG9ydC5q
cwpAQCAtMCwwICsxLDE4IEBACisvKiogQHR5cGUge1tuYW1lOiBzdHJpbmcsIHVybDogc3RyaW5n
XVtdfSAqLworY29uc3QgaW1wb3J0VXJsVGVzdHMgPSBbCisgIFsiTW9kdWxlIFVSTCIsICIuL2Jh
c2ljLW1vZHVsZS5qcyJdLAorICAvLyBJbiBuby1keW5hbWljLWltcG9ydC1pbi1tb2R1bGUuYW55
LmpzLCB0aGlzIG1vZHVsZSBpcyBhbHNvIHN0YXRpY2FsbHkgaW1wb3J0ZWQKKyAgWyJBbm90aGVy
IG1vZHVsZSBVUkwiLCAiLi9iYXNpYy1tb2R1bGUtMi5qcyJdLAorICBbCisgICAgIk1vZHVsZSBk
YXRhOiBVUkwiLAorICAgICJkYXRhOnRleHQvamF2YXNjcmlwdDtjaGFyc2V0PXV0Zi04LCIgKwor
ICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGBleHBvcnQgZGVmYXVsdCAnaGVsbG8hJztgKSwKKyAg
XSwKK107CisKK2ZvciAoY29uc3QgW25hbWUsIHVybF0gb2YgaW1wb3J0VXJsVGVzdHMpIHsKKyAg
cHJvbWlzZV90ZXN0KAorICAgICh0KSA9PiBwcm9taXNlX3JlamVjdHNfanModCwgVHlwZUVycm9y
LCBpbXBvcnQodXJsKSwgIkltcG9ydCBtdXN0IHJlamVjdCIpLAorICAgIG5hbWUKKyAgKTsKK30K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wZXJmb3JtYW5jZS10aW1l
bGluZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcGVyZm9ybWFuY2Ut
dGltZWxpbmUtd29ya2VyLmpzCmluZGV4IGNhYzMyN2MzNGJmOWRmMTg0OTEzYzU2MWI1ODRiMDM4
ZjM1MDRjOTQuLjZjNmRmY2JkMjgxMTczNTQ5NTM1YWY5Y2JhYjRmNDYxYjFlMmIyMWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wZXJmb3JtYW5jZS10aW1lbGluZS13
b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3BlcmZvcm1hbmNlLXRp
bWVsaW5lLXdvcmtlci5qcwpAQCAtMzAsMTIgKzMwLDEyIEBAIHByb21pc2VfdGVzdChmdW5jdGlv
bih0ZXN0KSB7CiAgIH0sICdVc2VyIFRpbWluZycpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dGVzdCkgewotICAgIHJldHVybiBmZXRjaCgnZHVtbXkudHh0JykKKyAgICByZXR1cm4gZmV0Y2go
J3NhbXBsZS50eHQnKQogICAgICAgLnRoZW4oZnVuY3Rpb24ocmVzcCkgewogICAgICAgICAgIHJl
dHVybiByZXNwLnRleHQoKTsKICAgICAgICAgfSkKICAgICAgIC50aGVuKGZ1bmN0aW9uKHRleHQp
IHsKLSAgICAgICAgICB2YXIgZXhwZWN0ZWRSZXNvdXJjZXMgPSBbJ3Rlc3RoYXJuZXNzLmpzJywg
J2R1bW15LnR4dCddOworICAgICAgICAgIHZhciBleHBlY3RlZFJlc291cmNlcyA9IFsndGVzdGhh
cm5lc3MuanMnLCAnc2FtcGxlLnR4dCddOwogICAgICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9y
bWFuY2UuZ2V0RW50cmllc0J5VHlwZSgncmVzb3VyY2UnKS5sZW5ndGgsIGV4cGVjdGVkUmVzb3Vy
Y2VzLmxlbmd0aCk7CiAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFJlc291
cmNlcy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICB2YXIgZW50cnkgPSBwZXJmb3JtYW5j
ZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpW2ldOwpAQCAtNDksNyArNDksNyBAQCBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odGVzdCkgewogICAgICAgICAgICAgICAgIHJlc29sdmUoJ2J1ZmZl
cmZ1bGwnKTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBwZXJmb3JtYW5jZS5zZXRS
ZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUoZXhwZWN0ZWRSZXNvdXJjZXMubGVuZ3RoKTsKLSAgICAg
ICAgICAgICAgZmV0Y2goJ2R1bW15LnR4dCcpOworICAgICAgICAgICAgICBmZXRjaCgnc2FtcGxl
LnR4dCcpOwogICAgICAgICAgIH0pOwogICAgICAgICB9KQogICAgICAgLnRoZW4oZnVuY3Rpb24o
cmVzdWx0KSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1l
c3NhZ2UtZmV0Y2hlZC10ZXh0LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3Rt
ZXNzYWdlLWZldGNoZWQtdGV4dC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZmM2NzE3MWQwNWRkMjhkNjMxN2U5
ZTJhYjk4NmIwYjY4YTdmYzE1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWZldGNoZWQtdGV4dC5qcwpAQCAtMCwwICsxLDUgQEAKK3Nl
bGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsKKyAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBm
ZXRjaChlLmRhdGEpOworICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICBz
ZWxmLnBvc3RNZXNzYWdlKHRleHQpOworfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9yZWRpcmVjdC13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvcmVkaXJlY3Qtd29ya2VyLmpzCmluZGV4IGRkY2MyY2Y1NDc4OTQyMjkyZGM4YzVlMzBkMTU2
ZGM0Mjg4NjM2NWUuLjgyZTIxZmMyNmZkYjk0MjM2MDIwZGY5NjhlYjlmYTNiMjg2ZDllMTkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWRpcmVjdC13b3JrZXIuanMK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZGlyZWN0LXdvcmtlci5qcwpAQCAt
MTE3LDYgKzExNywxMyBAQCBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24o
ZXZlbnQpIHsKICAgICBldmVudC5yZXNwb25kV2l0aCh3YWl0VW50aWxQcm9taXNlLnRoZW4oYXN5
bmMgKCkgPT4gewogICAgICAgaWYgKHBhcmFtc1snc3cnXSA9PSAnZ2VuJykgewogICAgICAgICBy
ZXR1cm4gUmVzcG9uc2UucmVkaXJlY3QocGFyYW1zWyd1cmwnXSk7CisgICAgICB9IGVsc2UgaWYg
KHBhcmFtc1snc3cnXSA9PSAnZ2VuLW1hbnVhbCcpIHsKKyAgICAgICAgLy8gTm90ZSB0aGlzIGRp
ZmZlcnMgZnJvbSBSZXNwb25zZS5yZWRpcmVjdCgpIGluIHRoYXQgcmVsYXRpdmUgVVJMcyBhcmUK
KyAgICAgICAgLy8gcHJlc2VydmVkLgorICAgICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKCIiLCB7
CisgICAgICAgICAgc3RhdHVzOiAzMDEsCisgICAgICAgICAgaGVhZGVyczoge2xvY2F0aW9uOiBw
YXJhbXNbJ3VybCddfSwKKyAgICAgICAgfSk7CiAgICAgICB9IGVsc2UgaWYgKHBhcmFtc1snc3cn
XSA9PSAnZmV0Y2gnKSB7CiAgICAgICAgIHJldHVybiBmZXRjaChldmVudC5yZXF1ZXN0KTsKICAg
ICAgIH0gZWxzZSBpZiAocGFyYW1zWydzdyddID09ICdmZXRjaC11cmwnKSB7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLWJhc2ljLmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1iYXNpYy5q
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWVkYjk4MGEwZmM0ZDFkMjQ0MTUzYWZk
NjM1N2E1NjlhZDk4ZDE4Ny4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLWJh
c2ljLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNDQgKzAsMCBAQAotLy8gQmFzaWMgcmVnaXN0cmF0
aW9uIHRlc3RzIHRoYXQgc3VjY2VlZC4gV2UgZG9uJ3Qgd2FudCB0b28gbWFueSBzdWNjZXNzZnVs
Ci0vLyByZWdpc3RyYXRpb24gdGVzdHMgaW4gdGhlIHNhbWUgZmlsZSBzaW5jZSBzdGFydGluZyBh
IHNlcnZpY2Ugd29ya2VyIGNhbiBiZQotLy8gc2xvdy4KLWZ1bmN0aW9uIHJlZ2lzdHJhdGlvbl90
ZXN0c19iYXNpYyhyZWdpc3Rlcl9tZXRob2QsIGNoZWNrX2Vycm9yX3R5cGVzKSB7Ci0gIHByb21p
c2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9yZWdp
c3RyYXRpb24td29ya2VyLmpzJzsKLSAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvcmVnaXN0
cmF0aW9uL25vcm1hbCc7Ci0gICAgICByZXR1cm4gcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Nj
b3BlOiBzY29wZX0pCi0gICAgICAgIC50aGVuKGZ1bmN0aW9uKHJlZ2lzdHJhdGlvbikgewotICAg
ICAgICAgICAgYXNzZXJ0X3RydWUoCi0gICAgICAgICAgICAgIHJlZ2lzdHJhdGlvbiBpbnN0YW5j
ZW9mIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24sCi0gICAgICAgICAgICAgICdTdWNjZXNzZnVs
bHkgcmVnaXN0ZXJlZC4nKTsKLSAgICAgICAgICAgIHJldHVybiByZWdpc3RyYXRpb24udW5yZWdp
c3RlcigpOwotICAgICAgICAgIH0pOwotICAgIH0sICdSZWdpc3RlcmluZyBub3JtYWwgc2NvcGUn
KTsKLQotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgdmFyIHNjcmlwdCA9ICdy
ZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXdvcmtlci5qcyc7Ci0gICAgICB2YXIgc2NvcGUgPSAncmVz
b3VyY2VzL3JlZ2lzdHJhdGlvbi9zY29wZS13aXRoLWZyYWdtZW50I3JlZic7Ci0gICAgICByZXR1
cm4gcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pCi0gICAgICAgIC50aGVu
KGZ1bmN0aW9uKHJlZ2lzdHJhdGlvbikgewotICAgICAgICAgICAgYXNzZXJ0X3RydWUoCi0gICAg
ICAgICAgICAgIHJlZ2lzdHJhdGlvbiBpbnN0YW5jZW9mIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b24sCi0gICAgICAgICAgICAgICdTdWNjZXNzZnVsbHkgcmVnaXN0ZXJlZC4nKTsKLSAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAgICAgIHJlZ2lzdHJhdGlvbi5zY29wZSwKLSAg
ICAgICAgICAgICAgbm9ybWFsaXplVVJMKCdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uL3Njb3BlLXdp
dGgtZnJhZ21lbnQnKSwKLSAgICAgICAgICAgICAgJ0EgZnJhZ21lbnQgc2hvdWxkIGJlIHJlbW92
ZWQgZnJvbSBzY29wZScpCi0gICAgICAgICAgICByZXR1cm4gcmVnaXN0cmF0aW9uLnVucmVnaXN0
ZXIoKTsKLSAgICAgICAgICB9KTsKLSAgICB9LCAnUmVnaXN0ZXJpbmcgc2NvcGUgd2l0aCBmcmFn
bWVudCcpOwotCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgICB2YXIgc2NyaXB0
ID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24td29ya2VyLmpzJzsKLSAgICAgIHZhciBzY29wZSA9
ICdyZXNvdXJjZXMvJzsKLSAgICAgIHJldHVybiByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2Nv
cGU6IHNjb3BlfSkKLSAgICAgICAgLnRoZW4oZnVuY3Rpb24ocmVnaXN0cmF0aW9uKSB7Ci0gICAg
ICAgICAgICBhc3NlcnRfdHJ1ZSgKLSAgICAgICAgICAgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNl
b2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwKLSAgICAgICAgICAgICAgJ1N1Y2Nlc3NmdWxs
eSByZWdpc3RlcmVkLicpOwotICAgICAgICAgICAgcmV0dXJuIHJlZ2lzdHJhdGlvbi51bnJlZ2lz
dGVyKCk7Ci0gICAgICAgICAgfSk7Ci0gICAgfSwgJ1JlZ2lzdGVyaW5nIHNhbWUgc2NvcGUgYXMg
dGhlIHNjcmlwdCBkaXJlY3RvcnknKTsKLX0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9yZWdpc3RyYXRpb24tdGVzdHMtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMKaW5kZXggNGQwOGVmZDIx
Zjg3M2Y2ODk4ODA5MDRlODZhZmYyYzEyZmFkOTlhNS4uZTViZGFmNDI5MWE0MjA1ZmI1MjA1ZWFi
MGM3NmVjMGJjMDJiZGQ3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMKQEAgLTEsNiArMSw2IEBACiAvLyBS
ZWdpc3RyYXRpb24gdGVzdHMgdGhhdCBtb3N0bHkgZXhlcmNpc2UgdGhlIHNlcnZpY2Ugd29ya2Vy
IHNjcmlwdCBjb250ZW50cyBvcgogLy8gcmVzcG9uc2UuCi1mdW5jdGlvbiByZWdpc3RyYXRpb25f
dGVzdHNfc2NyaXB0KHJlZ2lzdGVyX21ldGhvZCkgeworZnVuY3Rpb24gcmVnaXN0cmF0aW9uX3Rl
c3RzX3NjcmlwdChyZWdpc3Rlcl9tZXRob2QsIHR5cGUpIHsKICAgcHJvbWlzZV90ZXN0KGZ1bmN0
aW9uKHQpIHsKICAgICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL2ludmFsaWQtY2h1bmtlZC1l
bmNvZGluZy5weSc7CiAgICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3BlL2ludmFsaWQt
Y2h1bmtlZC1lbmNvZGluZy8nOwpAQCAtNDYsMTQgKzQ2LDQ1IEBAIGZ1bmN0aW9uIHJlZ2lzdHJh
dGlvbl90ZXN0c19zY3JpcHQocmVnaXN0ZXJfbWV0aG9kKSB7CiAgICAgICAgICAgJ1JlZ2lzdHJh
dGlvbiBvZiBzY3JpcHQgaW5jbHVkaW5nIHVuY2F1Z2h0IGV4Y2VwdGlvbiBzaG91bGQgZmFpbC4n
KTsKICAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IGluY2x1ZGluZyB1bmNhdWdodCBleGNlcHRp
b24nKTsKIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgdmFyIHNjcmlwdCA9
ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5weT9pbXBvcnQtbWFsZm9ybWVkLXNjcmlwdCc7
Ci0gICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3BlL2ltcG9ydC1tYWxmb3JtZWQtc2Ny
aXB0JzsKLSAgICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNfanModCwKLSAgICAgICAgICBUeXBl
RXJyb3IsCi0gICAgICAgICAgcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0p
LAotICAgICAgICAgICdSZWdpc3RyYXRpb24gb2Ygc2NyaXB0IGltcG9ydGluZyBtYWxmb3JtZWQg
c2NyaXB0IHNob3VsZCBmYWlsLicpOwotICAgIH0sICdSZWdpc3RlcmluZyBzY3JpcHQgaW1wb3J0
aW5nIG1hbGZvcm1lZCBzY3JpcHQnKTsKKyAgaWYgKHR5cGUgPT09ICdjbGFzc2ljJykgeworICAg
IHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CisgICAgICAgIHZhciBzY3JpcHQgPSAncmVzb3Vy
Y2VzL21hbGZvcm1lZC13b3JrZXIucHk/aW1wb3J0LW1hbGZvcm1lZC1zY3JpcHQnOworICAgICAg
ICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3BlL2ltcG9ydC1tYWxmb3JtZWQtc2NyaXB0JzsK
KyAgICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0LAorICAgICAgICAgICAgVHlwZUVy
cm9yLAorICAgICAgICAgICAgcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0p
LAorICAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgaW1wb3J0aW5nIG1hbGZvcm1l
ZCBzY3JpcHQgc2hvdWxkIGZhaWwuJyk7CisgICAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IGlt
cG9ydGluZyBtYWxmb3JtZWQgc2NyaXB0Jyk7CisgIH0KKworICBpZiAodHlwZSA9PT0gJ21vZHVs
ZScpIHsKKyAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgeworICAgICAgICB2YXIgc2NyaXB0
ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQtd29ya2VyLnB5P3RvcC1sZXZlbC1hd2FpdCc7CisgICAg
ICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2NvcGUvdG9wLWxldmVsLWF3YWl0JzsKKyAgICAg
ICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0LAorICAgICAgICAgICAgVHlwZUVycm9yLAor
ICAgICAgICAgICAgcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAorICAg
ICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQgc2hv
dWxkIGZhaWwuJyk7CisgICAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IHdpdGggdG9wLWxldmVs
IGF3YWl0Jyk7CisKKyAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgeworICAgICAgICB2YXIg
c2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQtd29ya2VyLnB5P2luc3RhbnRpYXRpb24tZXJy
b3InOworICAgICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3BlL2luc3RhbnRpYXRpb24t
ZXJyb3InOworICAgICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKHQsCisgICAgICAgICAg
ICBUeXBlRXJyb3IsCisgICAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6
IHNjb3BlfSksCisgICAgICAgICAgICAnUmVnaXN0cmF0aW9uIG9mIHNjcmlwdCB3aXRoIG1vZHVs
ZSBpbnN0YW50aWF0aW9uIGVycm9yIHNob3VsZCBmYWlsLicpOworICAgICAgfSwgJ1JlZ2lzdGVy
aW5nIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yJyk7CisKKyAgICBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgeworICAgICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9t
YWxmb3JtZWQtd29ya2VyLnB5P2luc3RhbnRpYXRpb24tZXJyb3ItYW5kLXRvcC1sZXZlbC1hd2Fp
dCc7CisgICAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2NvcGUvaW5zdGFudGlhdGlvbi1l
cnJvci1hbmQtdG9wLWxldmVsLWF3YWl0JzsKKyAgICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0
c19qcyh0LAorICAgICAgICAgICAgVHlwZUVycm9yLAorICAgICAgICAgICAgcmVnaXN0ZXJfbWV0
aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAorICAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBv
ZiBzY3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlhdGlvbiBlcnJvciBhbmQgdG9wLWxldmVsIGF3
YWl0IHNob3VsZCBmYWlsLicpOworICAgICAgfSwgJ1JlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIG1v
ZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yIGFuZCB0b3AtbGV2ZWwgYXdhaXQnKTsKKyAgfQogCiAg
IHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAgICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNl
cy9uby1zdWNoLXdvcmtlci5qcyc7CkBAIC02NCwxNCArOTUsMTYgQEAgZnVuY3Rpb24gcmVnaXN0
cmF0aW9uX3Rlc3RzX3NjcmlwdChyZWdpc3Rlcl9tZXRob2QpIHsKICAgICAgICAgICAnUmVnaXN0
cmF0aW9uIG9mIG5vbi1leGlzdGVudCBzY3JpcHQgc2hvdWxkIGZhaWwuJyk7CiAgICAgfSwgJ1Jl
Z2lzdGVyaW5nIG5vbi1leGlzdGVudCBzY3JpcHQnKTsKIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgewotICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5w
eT9pbXBvcnQtbm8tc3VjaC1zY3JpcHQnOwotICAgICAgdmFyIHNjb3BlID0gJ3Jlc291cmNlcy9z
Y29wZS9pbXBvcnQtbm8tc3VjaC1zY3JpcHQnOwotICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0
c19qcyh0LAotICAgICAgICAgIFR5cGVFcnJvciwKLSAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qo
c2NyaXB0LCB7c2NvcGU6IHNjb3BlfSksCi0gICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3Jp
cHQgaW1wb3J0aW5nIG5vbi1leGlzdGVudCBzY3JpcHQgc2hvdWxkIGZhaWwuJyk7Ci0gICAgfSwg
J1JlZ2lzdGVyaW5nIHNjcmlwdCBpbXBvcnRpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdCcpOworICBp
ZiAodHlwZSA9PT0gJ2NsYXNzaWMnKSB7CisgICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsK
KyAgICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5weT9pbXBv
cnQtbm8tc3VjaC1zY3JpcHQnOworICAgICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3Bl
L2ltcG9ydC1uby1zdWNoLXNjcmlwdCc7CisgICAgICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNf
anModCwKKyAgICAgICAgICAgIFR5cGVFcnJvciwKKyAgICAgICAgICAgIHJlZ2lzdGVyX21ldGhv
ZChzY3JpcHQsIHtzY29wZTogc2NvcGV9KSwKKyAgICAgICAgICAgICdSZWdpc3RyYXRpb24gb2Yg
c2NyaXB0IGltcG9ydGluZyBub24tZXhpc3RlbnQgc2NyaXB0IHNob3VsZCBmYWlsLicpOworICAg
ICAgfSwgJ1JlZ2lzdGVyaW5nIHNjcmlwdCBpbXBvcnRpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdCcp
OworICB9CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHZhciBzY3JpcHQg
PSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIucHk/Y2F1Z2h0LWV4Y2VwdGlvbic7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLWlmcmFt
ZS5zdWIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmct
aWZyYW1lLnN1Yi5odG1sCmluZGV4IDQxYmMyZTc3YzFiNGFjYjNhNTdhODNmOWM5ODg5ZjRlOWM1
MzgxMDMuLjM4NGMyOWI1MzZiZjFkYjgyOTUzMmI5NDg1ZDQxMDIwZjg1YmVkOTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1
Yi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmct
aWZyYW1lLnN1Yi5odG1sCkBAIC0xLDYgKzEsNiBAQAogPCFET0NUWVBFIGh0bWw+CiA8c2NyaXB0
IHNyYz0iZW1wdHkuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9ImR1bW15LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSJzYW1wbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlZGly
ZWN0LnB5P1JlZGlyZWN0PWVtcHR5LmpzIj48L3NjcmlwdD4KIDxpbWcgc3JjPSJzcXVhcmUucG5n
Ij4KIDxpbWcgc3JjPSJodHRwczovL3t7aG9zdHNbYWx0XVtdfX06e3twb3J0c1todHRwc11bMF19
fS9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NxdWFyZS5wbmciPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy13
b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdv
cmtlci5qcwppbmRleCA1YmM2ZWYzNDc0OGY2ZGU0YjQxOGZkMTZkMjI2MWE0Mjc2NDgzYTZhLi5i
NzRlOGNkNmEyMzZiZDdjNDQ3NzkxMGEwNjRmMzY2ZTNkYTg0NzBiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdvcmtlci5qcworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdvcmtlci5qcwpAQCAt
MSw1ICsxLDUgQEAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVu
dCkgewotICBpZiAoZXZlbnQucmVxdWVzdC51cmwuaW5kZXhPZignZHVtbXkuanMnKSAhPSAtMSkg
eworICBpZiAoZXZlbnQucmVxdWVzdC51cmwuaW5kZXhPZignc2FtcGxlLmpzJykgIT0gLTEpIHsK
ICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKICAgICAgIC8v
IFNsaWdodGx5IGRlbGF5IHRoZSByZXNwb25zZSBzbyB3ZSBlbnN1cmUgd2UgZ2V0IGEgbm9uLXpl
cm8KICAgICAgIC8vIGR1cmF0aW9uLgpAQCAtNyw2ICs3LDYgQEAgc2VsZi5hZGRFdmVudExpc3Rl
bmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgfSkpOwogICB9CiAgIGVsc2UgaWYg
KGV2ZW50LnJlcXVlc3QudXJsLmluZGV4T2YoJ21pc3NpbmcuanBnP1NXUmVzcG9uZHNXaXRoRmV0
Y2gnKSAhPSAtMSkgewotICAgIGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKCdkdW1teS50eHQ/U1dG
ZXRjaGVkJykpOworICAgIGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKCdzYW1wbGUudHh0P1NXRmV0
Y2hlZCcpKTsKICAgfQogfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUxMjllZDUxZWE1
NTBjMjEwYWJjNTNlMTEyMDllN2EzZTlkYzM2YjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcwpAQCAtMCww
ICsxLDQ2IEBACitpbXBvcnRTY3JpcHRzKCcvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzJyk7
CisKK2NvbnN0IHRleHQgPSAnd29ya2VyIGxvYWRpbmcgaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3
b3JrZXInOworY29uc3QgZGVkaWNhdGVkX3dvcmtlcl9zY3JpcHQgPSBgcG9zdE1lc3NhZ2UoJyR7
dGV4dH0nKTtgOworY29uc3Qgc2hhcmVkX3dvcmtlcl9zY3JpcHQgPQorICAgIGBvbmNvbm5lY3Qg
PSBldnQgPT4gZXZ0LnBvcnRzWzBdLnBvc3RNZXNzYWdlKCcke3RleHR9Jyk7YDsKKworc2VsZi5v
bmZldGNoID0gZXZlbnQgPT4geworICBjb25zdCB1cmwgPSBldmVudC5yZXF1ZXN0LnVybDsKKyAg
Y29uc3QgZGVzdGluYXRpb24gPSBldmVudC5yZXF1ZXN0LmRlc3RpbmF0aW9uOworCisgIC8vIFJl
cXVlc3QgaGFuZGxlciBmb3IgYSBzeW50aGVzaXplZCByZXNwb25zZS4KKyAgaWYgKHVybC5pbmRl
eE9mKCdzeW50aGVzaXplZCcpICE9IC0xKSB7CisgICAgbGV0IHNjcmlwdF9oZWFkZXJzID0gbmV3
IEhlYWRlcnMoeyAiQ29udGVudC1UeXBlIjogInRleHQvamF2YXNjcmlwdCIgfSk7CisgICAgaWYg
KGRlc3RpbmF0aW9uID09PSAnd29ya2VyJykKKyAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBS
ZXNwb25zZShkZWRpY2F0ZWRfd29ya2VyX3NjcmlwdCwgeyAnaGVhZGVycyc6IHNjcmlwdF9oZWFk
ZXJzIH0pKTsKKyAgICBlbHNlIGlmIChkZXN0aW5hdGlvbiA9PT0gJ3NoYXJlZHdvcmtlcicpCisg
ICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2Uoc2hhcmVkX3dvcmtlcl9zY3JpcHQs
IHsgJ2hlYWRlcnMnOiBzY3JpcHRfaGVhZGVycyB9KSk7CisgICAgZWxzZQorICAgICAgZXZlbnQu
cmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKCdVbmV4cGVjdGVkIHJlcXVlc3QhICcgKyBkZXN0aW5h
dGlvbikpOworICAgIHJldHVybjsKKyAgfQorCisgIC8vIFJlcXVlc3QgaGFuZGxlciBmb3IgYSBz
YW1lLW9yaWdpbiByZXNwb25zZS4KKyAgaWYgKHVybC5pbmRleE9mKCdzYW1lLW9yaWdpbicpICE9
IC0xKSB7CisgICAgZXZlbnQucmVzcG9uZFdpdGgoZmV0Y2goJ3Bvc3RtZXNzYWdlLW9uLWxvYWQt
d29ya2VyLmpzJykpOworICAgIHJldHVybjsKKyAgfQorCisgIC8vIFJlcXVlc3QgaGFuZGxlciBm
b3IgYSBjcm9zcy1vcmlnaW4gcmVzcG9uc2UuCisgIGlmICh1cmwuaW5kZXhPZignY29ycycpICE9
IC0xKSB7CisgICAgY29uc3QgZmlsZW5hbWUgPSAncG9zdG1lc3NhZ2Utb24tbG9hZC13b3JrZXIu
anMnOworICAgIGNvbnN0IHBhdGggPSAobmV3IFVSTChmaWxlbmFtZSwgc2VsZi5sb2NhdGlvbikp
LnBhdGhuYW1lOworICAgIGxldCBuZXdfdXJsID0gZ2V0X2hvc3RfaW5mbygpWydIVFRQU19SRU1P
VEVfT1JJR0lOJ10gKyBwYXRoOworICAgIGxldCBtb2RlOworICAgIGlmICh1cmwuaW5kZXhPZign
bm8tY29ycycpICE9IC0xKSB7CisgICAgICAvLyBUZXN0IG5vLWNvcnMgbW9kZS4KKyAgICAgIG1v
ZGUgPSAnbm8tY29ycyc7CisgICAgfSBlbHNlIHsKKyAgICAgIC8vIFRlc3QgY29ycyBtb2RlLgor
ICAgICAgbmV3X3VybCArPSAnP3BpcGU9aGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdp
biwqKSc7CisgICAgICBtb2RlID0gJ2NvcnMnOworICAgIH0KKyAgICBldmVudC5yZXNwb25kV2l0
aChmZXRjaChuZXdfdXJsLCB7IG1vZGU6IG1vZGUgfSkpOworICB9Cit9OwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyYTE3OTk4MGRmMmZmNjBjMjU4
ODI3MTE5Yzc4YTY0NWUxYTc0YTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlLmh0bWwKQEAgLTAsMCArMSwyIEBACis8IURPQ1RZUEUgaHRtbD4K
Kzxib2R5PkhlbGxvIHdvcmxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2FtcGxlLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGUudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjgwMjk5MmM0MjIwZGUxOWE5MDc2N2YzMDAwYTc5YTMxYjk4ZDBkZjcKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLnR4dApAQCAt
MCwwICsxIEBACitIZWxsbyB3b3JsZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWltcG9ydGluZy1yZWRpcmVjdC10by1zY29wZTIu
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1w
b3J0aW5nLXJlZGlyZWN0LXRvLXNjb3BlMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZTY4MWJhMzBlMGIwMWYx
ZWM2YzY0MmFkNGRhYzE5ZjBjYzlkYzY5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWltcG9ydGluZy1yZWRpcmVjdC10
by1zY29wZTIuanMKQEAgLTAsMCArMSBAQAoraW1wb3J0ICogYXMgbW9kdWxlIGZyb20gJy4vcmVk
aXJlY3QucHk/UmVkaXJlY3Q9L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMnOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWltcG9ydGluZy1zY29w
ZTIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXIt
aW1wb3J0aW5nLXNjb3BlMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMjg1MDUyNDljMjgxNzM1NDQxODMwMzE5
YTk0NjhiZWJhOGJiNTQ3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWltcG9ydGluZy1zY29wZTIuanMKQEAgLTAsMCAr
MSBAQAoraW1wb3J0ICogYXMgbW9kdWxlIGZyb20gJy4uL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUt
c2NyaXB0LmpzJzsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29w
ZTEvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL3cz
Yy1pbXBvcnQubG9nCmluZGV4IGE2NzA3NzUwZjQyYzYxZGUxMzdhMDE4Yzk3Mzk5Y2FlYTQ2ZDQ5
YmIuLjRlZjQ2OGM5YjNiY2EzYmFiNDA2MTAzYmNiYzI1NTkwMjE0ODM0N2MgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEvdzNjLWltcG9ydC5sb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS93M2MtaW1wb3J0LmxvZwpAQCAtMTQs
NCArMTQsNiBAQCBQcm9wZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKIE5v
bmUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogTGlzdCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXJlZGlyZWN0LXRvLXNjb3Bl
Mi5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEvbW9kdWxlLXdvcmtlci1p
bXBvcnRpbmctc2NvcGUyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9y
ZWRpcmVjdC5weQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3Bl
Mi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmExOGU3MDRhM2M1
OGZiZGUzOTkyOGQyYWNiZmMwOTUwZjU2YzQ1ZWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMKQEAg
LTAsMCArMSw0IEBACitleHBvcnQgY29uc3QgaW1wb3J0ZWQgPSAnQSBtb2R1bGUgc2NyaXB0Lic7
Citvbm1lc3NhZ2UgPSBtc2cgPT4geworICAgIG1zZy5zb3VyY2UucG9zdE1lc3NhZ2UoJ3Bvbmcn
KTsKK307CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL3cz
Yy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi93M2MtaW1w
b3J0LmxvZwppbmRleCA3NjkzNzM0NzVjYjIxNjliZjg0M2UwZDNiZDEwNTdkZTY4OGQwNmQ3Li41
OGM1MGZhYmM0YjYwOTRiZGVkMzVhMWY4MWY1NWExZjY1NTdkMjE4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL3czYy1pbXBvcnQubG9nCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTIvdzNjLWltcG9ydC5sb2cKQEAgLTE0LDQgKzE0
LDUgQEAgUHJvcGVydHkgdmFsdWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CiBOb25lCiAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KIExpc3Qgb2YgZmlsZXM6CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Njb3BlMi93b3JrZXJfaW50ZXJjZXB0aW9uX3JlZGlyZWN0X3dlYndvcmtlci5w
eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3N1YmRpci9ibGFuay5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3N1YmRpci9ibGFuay5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmEzYzNhNDY4OWE2MmI0NWIxZTQyOWY2YjdhOTQ2OTBlNTU2YTEyNTkKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc3ViZGlyL2JsYW5rLmh0bWwK
QEAgLTAsMCArMSwyIEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5FbXB0eSBkb2M8L3RpdGxl
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3N1YmRpci93M2MtaW1w
b3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zdWJkaXIvdzNjLWltcG9ydC5s
b2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNTc1N2MxZjkxNjM0NzVhMGU1NTkxYTY3YzAyMTA0YjZiNjM5M2M3Ngot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zdWJkaXIvdzNj
LWltcG9ydC5sb2cKQEAgLTAsMCArMSwxNyBAQAorVGhlIHRlc3RzIGluIHRoaXMgZGlyZWN0b3J5
IHdlcmUgaW1wb3J0ZWQgZnJvbSB0aGUgVzNDIHJlcG9zaXRvcnkuCitEbyBOT1QgbW9kaWZ5IHRo
ZXNlIHRlc3RzIGRpcmVjdGx5IGluIFdlYktpdC4KK0luc3RlYWQsIGNyZWF0ZSBhIHB1bGwgcmVx
dWVzdCBvbiB0aGUgV1BUIGdpdGh1YjoKKwlodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3Jt
LXRlc3RzL3dwdAorCitUaGVuIHJ1biB0aGUgVG9vbHMvU2NyaXB0cy9pbXBvcnQtdzNjLXRlc3Rz
IGluIFdlYktpdCB0byByZWltcG9ydAorCitEbyBOT1QgbW9kaWZ5IG9yIHJlbW92ZSB0aGlzIGZp
bGUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorUHJvcGVydGllcyByZXF1aXJpbmcgdmVuZG9yIHByZWZp
eGVzOgorTm9uZQorUHJvcGVydHkgdmFsdWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CitO
b25lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xpc3Qgb2YgZmlsZXM6CisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3N1YmRpci9ibGFuay5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCmluZGV4IGJiZDE2YWJjZTRiMzcwM2EyZjc0OTllN2My
YzRjNzU5MDU2NmQzM2UuLjNmNmEyMDU1ZjY4YmQzM2QxMjQ3NzRjM2YxNDMwMWJhNTNmNzY1M2Yg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3Vi
LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpz
CkBAIC05Miw1NiArOTIsNjYgQEAgZnVuY3Rpb24gd2FpdF9mb3JfdXBkYXRlKHRlc3QsIHJlZ2lz
dHJhdGlvbikgewogICAgIH0pKTsKIH0KIAotZnVuY3Rpb24gd2FpdF9mb3Jfc3RhdGUodGVzdCwg
d29ya2VyLCBzdGF0ZSkgewotICBpZiAoIXdvcmtlciB8fCB3b3JrZXIuc3RhdGUgPT0gdW5kZWZp
bmVkKSB7Ci0gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcigKLSAgICAgICd3YWl0
X2Zvcl9zdGF0ZSBtdXN0IGJlIHBhc3NlZCBhIFNlcnZpY2VXb3JrZXInKSk7Ci0gIH0KLSAgaWYg
KHdvcmtlci5zdGF0ZSA9PT0gc3RhdGUpCi0gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShzdGF0
ZSk7Ci0KLSAgaWYgKHN0YXRlID09PSAnaW5zdGFsbGluZycpIHsKLSAgICBzd2l0Y2ggKHdvcmtl
ci5zdGF0ZSkgeworLy8gUmV0dXJuIHRydWUgaWYgfHN0YXRlX2F8IGlzIG1vcmUgYWR2YW5jZWQg
dGhhbiB8c3RhdGVfYnwuCitmdW5jdGlvbiBpc19zdGF0ZV9hZHZhbmNlZChzdGF0ZV9hLCBzdGF0
ZV9iKSB7CisgIGlmIChzdGF0ZV9iID09PSAnaW5zdGFsbGluZycpIHsKKyAgICBzd2l0Y2ggKHN0
YXRlX2EpIHsKICAgICAgIGNhc2UgJ2luc3RhbGxlZCc6CiAgICAgICBjYXNlICdhY3RpdmF0aW5n
JzoKICAgICAgIGNhc2UgJ2FjdGl2YXRlZCc6CiAgICAgICBjYXNlICdyZWR1bmRhbnQnOgotICAg
ICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAotICAgICAgICAgICd3b3JrZXIg
aXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0IHdhaXRpbmcgZm9yICcgKyBzdGF0ZSkpOworICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgIH0KIAotICBpZiAoc3RhdGUgPT09ICdpbnN0YWxs
ZWQnKSB7Ci0gICAgc3dpdGNoICh3b3JrZXIuc3RhdGUpIHsKKyAgaWYgKHN0YXRlX2IgPT09ICdp
bnN0YWxsZWQnKSB7CisgICAgc3dpdGNoIChzdGF0ZV9hKSB7CiAgICAgICBjYXNlICdhY3RpdmF0
aW5nJzoKICAgICAgIGNhc2UgJ2FjdGl2YXRlZCc6CiAgICAgICBjYXNlICdyZWR1bmRhbnQnOgot
ICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAotICAgICAgICAgICd3b3Jr
ZXIgaXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0IHdhaXRpbmcgZm9yICcgKyBzdGF0ZSkpOwor
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgIH0KIAotICBpZiAoc3RhdGUgPT09ICdhY3Rp
dmF0aW5nJykgewotICAgIHN3aXRjaCAod29ya2VyLnN0YXRlKSB7CisgIGlmIChzdGF0ZV9iID09
PSAnYWN0aXZhdGluZycpIHsKKyAgICBzd2l0Y2ggKHN0YXRlX2EpIHsKICAgICAgIGNhc2UgJ2Fj
dGl2YXRlZCc6CiAgICAgICBjYXNlICdyZWR1bmRhbnQnOgotICAgICAgICByZXR1cm4gUHJvbWlz
ZS5yZWplY3QobmV3IEVycm9yKAotICAgICAgICAgICd3b3JrZXIgaXMgJyArIHdvcmtlci5zdGF0
ZSArICcgYnV0IHdhaXRpbmcgZm9yICcgKyBzdGF0ZSkpOworICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICB9CiAgIH0KIAotICBpZiAoc3RhdGUgPT09ICdhY3RpdmF0ZWQnKSB7Ci0gICAgc3dpdGNo
ICh3b3JrZXIuc3RhdGUpIHsKKyAgaWYgKHN0YXRlX2IgPT09ICdhY3RpdmF0ZWQnKSB7CisgICAg
c3dpdGNoIChzdGF0ZV9hKSB7CiAgICAgICBjYXNlICdyZWR1bmRhbnQnOgotICAgICAgICByZXR1
cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAotICAgICAgICAgICd3b3JrZXIgaXMgJyArIHdv
cmtlci5zdGF0ZSArICcgYnV0IHdhaXRpbmcgZm9yICcgKyBzdGF0ZSkpOworICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9CiAgIH0KKyAgcmV0dXJuIGZhbHNlOworfQogCi0gIHJldHVybiBuZXcg
UHJvbWlzZSh0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNvbHZlKSB7CitmdW5jdGlvbiB3YWl0
X2Zvcl9zdGF0ZSh0ZXN0LCB3b3JrZXIsIHN0YXRlKSB7CisgIGlmICghd29ya2VyIHx8IHdvcmtl
ci5zdGF0ZSA9PSB1bmRlZmluZWQpIHsKKyAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVy
cm9yKAorICAgICAgJ3dhaXRfZm9yX3N0YXRlIG5lZWRzIGEgU2VydmljZVdvcmtlciBvYmplY3Qg
dG8gYmUgcGFzc2VkLicpKTsKKyAgfQorICBpZiAod29ya2VyLnN0YXRlID09PSBzdGF0ZSkKKyAg
ICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHN0YXRlKTsKKworICBpZiAoaXNfc3RhdGVfYWR2YW5j
ZWQod29ya2VyLnN0YXRlLCBzdGF0ZSkpIHsKKyAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3
IEVycm9yKAorICAgICAgYFdhaXRpbmcgZm9yICR7c3RhdGV9IGJ1dCB0aGUgd29ya2VyIGlzIGFs
cmVhZHkgJHt3b3JrZXIuc3RhdGV9LmApKTsKKyAgfQorICByZXR1cm4gbmV3IFByb21pc2UodGVz
dC5zdGVwX2Z1bmMoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICB3b3JrZXIuYWRk
RXZlbnRMaXN0ZW5lcignc3RhdGVjaGFuZ2UnLCB0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsK
ICAgICAgICAgICBpZiAod29ya2VyLnN0YXRlID09PSBzdGF0ZSkKICAgICAgICAgICAgIHJlc29s
dmUoc3RhdGUpOworCisgICAgICAgICAgaWYgKGlzX3N0YXRlX2FkdmFuY2VkKHdvcmtlci5zdGF0
ZSwgc3RhdGUpKSB7CisgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKAorICAgICAgICAgICAg
ICBgVGhlIHN0YXRlIG9mIHRoZSB3b3JrZXIgYmVjb21lcyAke3dvcmtlci5zdGF0ZX0gd2hpbGUg
d2FpdGluZ2AgKworICAgICAgICAgICAgICAgIGBmb3IgJHtzdGF0ZX0uYCkpOworICAgICAgICAg
IH0KICAgICAgICAgfSkpOwogICAgIH0pKTsKIH0KQEAgLTI3NCwxMyArMjg0LDEzIEBAIGZ1bmN0
aW9uIHdpdGhfc2FuZGJveGVkX2lmcmFtZSh1cmwsIHNhbmRib3gpIHsKICAgICB9KTsKIH0KIAot
Ly8gUmVnaXN0ZXJzLCB3YWl0cyBmb3IgYWN0aXZhdGlvbiwgdGhlbiB1bnJlZ2lzdGVycyBvbiBh
IGR1bW15IHNjb3BlLgorLy8gUmVnaXN0ZXJzLCB3YWl0cyBmb3IgYWN0aXZhdGlvbiwgdGhlbiB1
bnJlZ2lzdGVycyBvbiBhIHNhbXBsZSBzY29wZS4KIC8vCiAvLyBUaGlzIGNhbiBiZSB1c2VkIHRv
IHdhaXQgZm9yIGEgcGVyaW9kIG9mIHRpbWUgbmVlZGVkIHRvIHJlZ2lzdGVyLAogLy8gYWN0aXZh
dGUsIGFuZCB0aGVuIHVucmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4gIFdoZW4gY2hlY2tpbmcg
dGhhdAogLy8gY2VydGFpbiBiZWhhdmlvciBkb2VzICpOT1QqIGhhcHBlbiwgdGhpcyBpcyBwcmVm
ZXJhYmxlIHRvIHVzaW5nIGFuCiAvLyBhcmJpdHJhcnkgZGVsYXkuCi1hc3luYyBmdW5jdGlvbiB3
YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15X3Njb3BlKHQsIHdpbmRvd19vcl93b3JrZXJnbG9i
YWxzY29wZSkgeworYXN5bmMgZnVuY3Rpb24gd2FpdF9mb3JfYWN0aXZhdGlvbl9vbl9zYW1wbGVf
c2NvcGUodCwgd2luZG93X29yX3dvcmtlcmdsb2JhbHNjb3BlKSB7CiAgIGNvbnN0IHNjcmlwdCA9
ICcvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9lbXB0eS13b3JrZXIu
anMnOwogICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvdGhlcmUvaXMvbm8vdGhlcmUvdGhlcmU/
JyArIERhdGUubm93KCk7CiAgIGxldCByZWdpc3RyYXRpb24gPSBhd2FpdCB3aW5kb3dfb3Jfd29y
a2VyZ2xvYmFsc2NvcGUubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7
IHNjb3BlIH0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3Qt
cmVxdWVzdC1tb2RlLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0
LXJlcXVlc3QtbW9kZS13b3JrZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTY2ZTJlOTk4NGI1ZDZiNWQzYTc5
NzM4NTQyZjFiMmIyNGQxZjZiMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy90ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIuanMKQEAgLTAsMCArMSwxMCBAQAor
Ly8gQWRkIGEgdW5pcXVlIFVVSUQgcGVyIHJlcXVlc3QgdG8gaW5kdWNlIHNlcnZpY2Ugd29ya2Vy
IHNjcmlwdCB1cGRhdGUuCisvLyBUaW1lIHN0YW1wOiAlVVVJRCUKKworLy8gVGhlIHNlcnZlciBp
bmplY3RzIHRoZSByZXF1ZXN0IGhlYWRlcnMgaGVyZSBhcyBhIEpTT04gc3RyaW5nLgorY29uc3Qg
aGVhZGVyc0FzSnNvbiA9IGAlSEVBREVSUyVgOworY29uc3QgaGVhZGVycyA9IEpTT04ucGFyc2Uo
aGVhZGVyc0FzSnNvbik7CisKK3NlbGYuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGFzeW5j
IChlKSA9PiB7CisgIGUuc291cmNlLnBvc3RNZXNzYWdlKGhlYWRlcnMpOworfSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2Vy
LnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtl
ci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44NDQ5ODQxYTk5MzA3OTZmZGNmZjAzMDdjMWUyYjA0M2IyYTZiN2Yx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVx
dWVzdC1tb2RlLXdvcmtlci5weQpAQCAtMCwwICsxLDIyIEBACitpbXBvcnQganNvbgoraW1wb3J0
IG9zCitpbXBvcnQgdXVpZAoraW1wb3J0IHN5cworCitmcm9tIHdwdHNlcnZlLnV0aWxzIGltcG9y
dCBpc29tb3JwaGljX2RlY29kZQorCitkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CisgIHBh
dGggPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKGlzb21vcnBoaWNfZGVjb2RlKF9fZmls
ZV9fKSksCisgICAgICAgICAgICAgICAgICAgICAgdSJ0ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIu
anMiKQorICBib2R5ID0gb3BlbihwYXRoLCB1InJiIikucmVhZCgpCisKKyAgZGF0YSA9IHtpc29t
b3JwaGljX2RlY29kZShrZXkpOmlzb21vcnBoaWNfZGVjb2RlKHJlcXVlc3QuaGVhZGVyc1trZXld
KSBmb3Iga2V5LCB2YWx1ZSBpbiByZXF1ZXN0LmhlYWRlcnMuaXRlbXMoKX0KKworICBib2R5ID0g
Ym9keS5yZXBsYWNlKGIiJUhFQURFUlMlIiwganNvbi5kdW1wcyhkYXRhKS5lbmNvZGUoInV0Zi04
IikpCisgIGJvZHkgPSBib2R5LnJlcGxhY2UoYiIlVVVJRCUiLCBzdHIodXVpZC51dWlkNCgpKS5l
bmNvZGUoInV0Zi04IikpCisKKyAgaGVhZGVycyA9IFtdCisgIGhlYWRlcnMuYXBwZW5kKChiIkVU
YWciLCBiImV0YWciKSkKKyAgaGVhZGVycy5hcHBlbmQoKGIiQ29udGVudC1UeXBlIiwgYid0ZXh0
L2phdmFzY3JpcHQnKSkKKworICByZXR1cm4gaGVhZGVycywgYm9keQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLWhlbHBlcnMuanMgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdGhhcm5lc3MtaGVscGVycy5qcwppbmRleCA3YjdiNWVm
ZTY5YmRlNzE4YzgwZjgyNzY2YjdhYWZjNDljMDQxODU0Li5iMWE1Yjk2MGUwNjU2YWMzNmU1NTNj
NzA5NjVhZWJmN2I4MzQ0Yzk3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MtaGVscGVycy5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3MtaGVscGVycy5qcwpAQCAtMjgsNyArMjgsNyBAQCBzZWxmLmFzc2VydF9v
YmplY3RfZXF1YWxzID0gZnVuY3Rpb24oYWN0dWFsLCBleHBlY3RlZCwgZGVzY3JpcHRpb24pIHsK
ICAgICAgIGFzc2VydF9lcXVhbHMoYWN0dWFsLCBleHBlY3RlZCwgcHJlZml4KTsKICAgICAgIHJl
dHVybjsKICAgICB9Ci0gICAgYXNzZXJ0X3RydWUodHlwZW9mIGV4cGVjdGVkID09PSAnb2JqZWN0
JywgcHJlZml4KTsKKyAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBleHBlY3RlZCwgJ29iamVjdCcs
IHByZWZpeCk7CiAgICAgYXNzZXJ0X2VxdWFscyhvYmplY3Rfc3RhY2suaW5kZXhPZihhY3R1YWwp
LCAtMSwKICAgICAgICAgICAgICAgICAgIHByZWZpeCArICcgbXVzdCBub3QgY29udGFpbiBjeWNs
aWMgcmVmZXJlbmNlcy4nKTsKIApAQCAtMTA3LDcgKzEwNyw3IEBAIGZ1bmN0aW9uIGFzc2VydF9h
cnJheV9vYmplY3RzX2VxdWFscyhhY3R1YWwsIGV4cGVjdGVkLCBkZXNjcmlwdGlvbikgewogLy8g
RklYTUU6IFJlbW92ZSBhc3NlcnRfd2lsbF9iZV9pZGxfYXR0cmlidXRlIG9uY2Ugd2UgY29tcGxl
dGUgdGhlIHRyYW5zaXRpb24KIC8vIG9mIG1vdmluZyB0aGUgRE9NIGF0dHJpYnV0ZXMgdG8gcHJv
dG90eXBlIGNoYWlucy4gIChodHRwOi8vY3JidWcuY29tLzQzMzk0KQogZnVuY3Rpb24gYXNzZXJ0
X3dpbGxfYmVfaWRsX2F0dHJpYnV0ZShvYmplY3QsIGF0dHJpYnV0ZV9uYW1lLCBkZXNjcmlwdGlv
bikgewotICBhc3NlcnRfdHJ1ZSh0eXBlb2Ygb2JqZWN0ID09PSAib2JqZWN0IiwgZGVzY3JpcHRp
b24pOworICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBvYmplY3QsICJvYmplY3QiLCBkZXNjcmlwdGlv
bik7CiAKICAgYXNzZXJ0X3RydWUoImhhc093blByb3BlcnR5IiBpbiBvYmplY3QsIGRlc2NyaXB0
aW9uKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3R5cGUtY2hl
Y2std29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3R5cGUtY2hlY2std29y
a2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjE3NzllMjMyM2Q5MmM0YzFjZjJiNWI3ODk5MzJmOGU1N2Q4NjA1
NjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdHlwZS1j
aGVjay13b3JrZXIuanMKQEAgLTAsMCArMSwxMCBAQAorbGV0IHR5cGUgPSAnJzsKK3RyeSB7Cisg
IGltcG9ydFNjcmlwdHMoJ2VtcHR5LmpzJyk7CisgIHR5cGUgPSAnY2xhc3NpYyc7Cit9IGNhdGNo
IChlKSB7CisgIHR5cGUgPSAnbW9kdWxlJzsKK30KK29ubWVzc2FnZSA9IGUgPT4geworICBlLnNv
dXJjZS5wb3N0TWVzc2FnZSh0eXBlKTsKK307CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1pbW1lZGlhdGVseS1oZWxwZXJzLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3VucmVnaXN0ZXItaW1tZWRpYXRlbHktaGVscGVycy5qcwppbmRl
eCA4NmZiMjRkOGY5ODhjODEwYTIzMzBmMTQxYWI5MzQzOWQyMDM0OTk1Li45MWEzMGRlNWI3Nzdm
OWQ1MmZlZDZlZjcyNGJkNTFlNjA0OWFmM2YyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1pbW1lZGlhdGVseS1oZWxwZXJzLmpzCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJlZ2lzdGVyLWltbWVkaWF0ZWx5LWhlbHBlcnMuanMK
QEAgLTE0LDYgKzE0LDYgQEAgYXN5bmMgZnVuY3Rpb24gYXNzZXJ0X25vX3JlZ2lzdHJhdGlvbnNf
ZXhpc3QoKSB7CiBhc3luYyBmdW5jdGlvbiBhZGRfY29udHJvbGxlZF9pZnJhbWUodGVzdCwgdXJs
KSB7CiAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUodXJsKTsKICAgdGVzdC5hZGRf
Y2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKLSAgYXNzZXJ0X3RydWUoZnJhbWUu
Y29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyICE9PSBudWxs
KTsKKyAgYXNzZXJ0X25vdF9lcXVhbHMoZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2Vy
dmljZVdvcmtlci5jb250cm9sbGVyLCBudWxsKTsKICAgcmV0dXJuIGZyYW1lOwogfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3czYy1pbXBvcnQubG9nCmluZGV4IDBlZjZjMTZjN2U1YjUx
YjIxZWM2ZjZkYTA1ZTY4NjlkOTcwMjJmMTkuLjMzYWU2MjZlZWZkZTg3YjRiOGU4YmU3YmRlODFk
ZjI5ZGRhZDFlNjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy93M2Mt
aW1wb3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdzNjLWltcG9ydC5s
b2cKQEAgLTI3LDkgKzI3LDEyIEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2FwcGNhY2hlLW9yZGVyaW5nLmlzLWFwcGNhY2hlZC5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2FwcGNhY2hlLW9yZGVyaW5nLmlzLWFwcGNhY2hlZC5qcwogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9hcHBjYWNoZS1vcmRlcmluZy5tYW5pZmVzdAorL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUtMi5qcworL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvYmxhbmsuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9ieXRlY2hlY2st
d29ya2VyLWltcG9ydGVkLXNjcmlwdC5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9i
eXRlY2hlY2std29ya2VyLnB5CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsYWltLWJs
b2ItdXJsLXdvcmtlci1mZXRjaC1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9jbGFpbS1uZXN0ZWQtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2NsYWltLW5lc3RlZC13b3JrZXItZmV0Y2gtcGFyZW50LXdvcmtlci5q
cwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGFpbS1zaGFyZWQtd29ya2VyLWZldGNo
LWlmcmFtZS5odG1sCkBAIC00Myw2ICs0Niw4IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlZC1mcmFtZS5odG1sCisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmh0bWwKKy9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIu
anMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1mcmFtZS1mcmVlemUuaHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLWdldC1jbGllbnQtdHlwZXMt
ZnJhbWUtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtZ2V0
LWNsaWVudC10eXBlcy1mcmFtZS5odG1sCkBAIC01Myw2ICs1OCw3IEBAIExpc3Qgb2YgZmlsZXM6
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtZ2V0LW90aGVyLW9yaWdpbi5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtZ2V0LXJlc3VsdGluZ0Ns
aWVudElkLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLWdl
dC13b3JrZXIuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFs
bC1ibG9iLXVybC13b3JrZXIuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGll
bnRzLW1hdGNoYWxsLWNsaWVudC10eXBlcy1kZWRpY2F0ZWQtd29ya2VyLmpzCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtY2xpZW50LXR5cGVzLWlmcmFtZS5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtY2xpZW50
LXR5cGVzLXNoYXJlZC13b3JrZXIuanMKQEAgLTYxLDkgKzY3LDggQEAgTGlzdCBvZiBmaWxlczoK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY29ycy1hcHByb3ZlZC50eHQKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvY29ycy1hcHByb3ZlZC50eHQuaGVhZGVycwogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9jb3JzLWRlbmllZC50eHQKLS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXktd29ya2VyLWludGVyY2VwdG9yLmpzCi0vTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15Lmh0bWwKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXku
dHh0CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1ibG9iLXVybC13b3JrZXIu
anMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLW91dC1vZi1zY29wZS13b3Jr
ZXIuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHkKIC9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZWNoby1jb29raWUtd29ya2VyLnB5CiAvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2VjaG8tbWVzc2FnZS10by1zb3VyY2Utd29ya2VyLmpzCkBA
IC0xMzksNiArMTQ0LDcgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtaWZyYW1lLmh0dHBzLmh0bWwKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtd29ya2VyLmpzCiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLWlmcmFtZS5odHRw
cy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5
bmMtZXJyb3Itd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJl
cXVlc3QteGhyLXN5bmMtaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZmV0Y2gtcmVxdWVzdC14aHItc3luYy1vbi13b3JrZXItd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtd29ya2VyLmpzCkBAIC0xNTUs
MTIgKzE2MSwxNCBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9odHRwLXRvLWh0dHBzLXJlZGlyZWN0LWFuZC1yZWdpc3Rlci1pZnJhbWUuaHRtbAogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9pZnJhbWUtd2l0aC1pbWFnZS5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1wcm90b3R5cGUtc2VydmljZXdvcmtlci5qcwor
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtZWNoby1jb29raWUtd29ya2VyLW1v
ZHVsZS5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtZWNoby1jb29raWUt
d29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1taW1lLXR5cGUt
d29ya2VyLnB5CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1yZWxhdGl2ZS54
c2wKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtNDA0LWFmdGVy
LXVwZGF0ZS1wbHVzLXVwZGF0ZS13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvaW1wb3J0LXNjcmlwdHMtNDA0LWFmdGVyLXVwZGF0ZS5qcwogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy00MDQuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLXdvcmtlci5zdWIuanMKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtZGlmZi1yZXNvdXJjZS1tYXAtd29y
a2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1zY3JpcHRzLWVjaG8u
cHkKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtZ2V0LnB5CkBA
IC0yMDksOCArMjE3LDEyIEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL25hdmlnYXRpb24tcmVkaXJlY3QtdG8taHR0cC1pZnJhbWUuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9uYXZpZ2F0aW9uLXJlZGlyZWN0LXRvLWh0dHAtd29ya2VyLmpz
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25hdmlnYXRpb24tdGltaW5nLXdvcmtlci5q
cworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNy
ZWF0ZWQtZnJvbS13b3JrZXIuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0
ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25l
c3RlZC1pZnJhbWUtcGFyZW50Lmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVz
dGVkLXdvcmtlci1jcmVhdGVkLWZyb20tYmxvYi11cmwtd29ya2VyLmh0bWwKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkX2xvYWRfd29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL25vLWR5bmFtaWMtaW1wb3J0LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL25vdGlmaWNhdGlvbl9pY29uLnB5CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L29iamVjdC1pbWFnZS1pcy1ub3QtaW50ZXJjZXB0ZWQtaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvb2JqZWN0LWlzLW5vdC1pbnRlcmNlcHRlZC1pZnJhbWUuaHRtbApA
QCAtMjQ1LDYgKzI1Nyw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3Bvc3RtZXNzYWdlLWJsb2ItdXJsLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3Bvc3RtZXNzYWdlLWRpY3Rpb25hcnktdHJhbnNmZXJhYmxlcy13b3JrZXIuanMKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZWNoby13b3JrZXIuanMKKy9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZmV0Y2hlZC10ZXh0LmpzCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLW1zZ3BvcnQtdG8tY2xpZW50LXdv
cmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1vbi1sb2Fk
LXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wb3N0bWVzc2FnZS10by1j
bGllbnQtd29ya2VyLmpzCkBAIC0yNTgsNyArMjcxLDYgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVmZXJyZXItcG9saWN5LWlmcmFtZS5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdGVyLWNsb3NlZC13aW5kb3ctaWZyYW1lLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0ZXItaWZyYW1lLmh0bWwKLS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLWJhc2ljLmpzCiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1taW1lLXR5cGVz
LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY29w
ZS5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3RyYXRpb24tdGVzdHMtc2Ny
aXB0LXVybC5qcwpAQCAtMjc1LDYgKzI4Nyw5IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3Jlc3BvbmQtd2l0aC1ib2R5LWFjY2Vzc2VkLXJlc3BvbnNlLWlm
cmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jlc3BvbmQtd2l0aC1ib2R5
LWFjY2Vzc2VkLXJlc3BvbnNlLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9yZXNwb25kLXdpdGgtYm9keS1hY2Nlc3NlZC1yZXNwb25zZS5qc29ucAorL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzCisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3NhbXBsZS50eHQKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FuZGJveGVkLWlm
cmFtZS1mZXRjaC1ldmVudC1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9zYW5kYm94ZWQtaWZyYW1lLWZldGNoLWV2ZW50LWlmcmFtZS5weQogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zYW5kYm94ZWQtaWZyYW1lLWZldGNoLWV2ZW50LXdvcmtlci5qcwpAQCAt
Mjk5LDggKzMxNCwxMSBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rl
c3QtcmVxdWVzdC1oZWFkZXJzLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy90ZXN0LXJlcXVlc3QtaGVhZGVycy13b3JrZXIucHkKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5weQogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3RyaWNrbGUucHkKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdHlwZS1jaGVjay13
b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1jb250cm9s
bGVyLXBhZ2UuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJlZ2lzdGVyLWlt
bWVkaWF0ZWx5LWhlbHBlcnMuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdXBkYXRl
LWNsYWltLXdvcmtlci5weQpAQCAtMzMxLDYgKzM0OSw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dvcmtlci1sb2FkLWludGVyY2VwdG9yLmpzCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dvcmtlci10ZXN0aGFybmVzcy5qcwogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy93b3JrZXJfaW50ZXJjZXB0aW9uX3JlZGlyZWN0X3dlYndvcmtl
ci5weQorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHItY29udGVudC1sZW5ndGgtd29y
a2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3hoci1pZnJhbWUuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHItcmVzcG9uc2UtdXJsLXdvcmtlci5qcwogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94c2wtYmFzZS11cmwtaWZyYW1lLnhtbApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dpbmRvd2NsaWVudC1uYXZpZ2F0ZS13
b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd2luZG93Y2xpZW50LW5hdmln
YXRlLXdvcmtlci5qcwppbmRleCBjNDkwZTg5MmRmZWQ4OTI5ZGQ4NjY4YTc0MDFmOTkwZmE5NDk1
N2VhLi4zODNmNjY2MzFkM2EwZDNiNmY5YjAyZjY4NDdjMDFlMWIxOTI1OWM3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd2luZG93Y2xpZW50LW5hdmlnYXRlLXdvcmtl
ci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd2luZG93Y2xpZW50LW5hdmln
YXRlLXdvcmtlci5qcwpAQCAtMSwzNCArMSwzMyBAQAogaW1wb3J0U2NyaXB0cygnL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcycpOwogCi1mdW5jdGlvbiBtYXRjaF9xdWVyeShxdWVyeV9zdHJpbmcp
IHsKLSAgcmV0dXJuIHNlbGYubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKSA9PSBxdWVyeV9zdHJp
bmc7CitmdW5jdGlvbiBtYXRjaFF1ZXJ5KHF1ZXJ5U3RyaW5nKSB7CisgIHJldHVybiBzZWxmLmxv
Y2F0aW9uLnNlYXJjaC5zdWJzdHIoMSkgPT09IHF1ZXJ5U3RyaW5nOwogfQogCi1hc3luYyBmdW5j
dGlvbiBuYXZpZ2F0ZV90ZXN0KHQsIGUpIHsKLSAgdmFyIHBvcnQgPSBlLmRhdGEucG9ydDsKLSAg
dmFyIHVybCA9IGUuZGF0YS51cmw7Ci0gIHZhciBleHBlY3RlZCA9IGUuZGF0YS5leHBlY3RlZDsK
K2FzeW5jIGZ1bmN0aW9uIG5hdmlnYXRlVGVzdCh0LCBlKSB7CisgIGNvbnN0IHBvcnQgPSBlLmRh
dGEucG9ydDsKKyAgY29uc3QgdXJsID0gZS5kYXRhLnVybDsKKyAgY29uc3QgZXhwZWN0ZWQgPSBl
LmRhdGEuZXhwZWN0ZWQ7CiAKLSAgdmFyIHAgPSBjbGllbnRzLm1hdGNoQWxsKHsgaW5jbHVkZVVu
Y29udHJvbGxlZCA6IHRydWUgfSkKLSAgICAudGhlbihmdW5jdGlvbihjbGllbnRfbGlzdCkgewot
ICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNsaWVudF9saXN0Lmxlbmd0aDsgaSsrKSB7Ci0g
ICAgICAgICAgdmFyIGNsaWVudCA9IGNsaWVudF9saXN0W2ldOwotICAgICAgICAgIGlmIChjbGll
bnQuZnJhbWVUeXBlID09ICduZXN0ZWQnKSB7Ci0gICAgICAgICAgICByZXR1cm4gY2xpZW50Lm5h
dmlnYXRlKHVybCk7Ci0gICAgICAgICAgfQorICBsZXQgcCA9IGNsaWVudHMubWF0Y2hBbGwoeyBp
bmNsdWRlVW5jb250cm9sbGVkIDogdHJ1ZSB9KQorICAgIC50aGVuKGZ1bmN0aW9uKGNsaWVudHMp
IHsKKyAgICAgIGZvciAoY29uc3QgY2xpZW50IG9mIGNsaWVudHMpIHsKKyAgICAgICAgaWYgKGNs
aWVudC51cmwgPT09IGUuZGF0YS5jbGllbnRVcmwpIHsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGNsaWVudC5mcmFtZVR5cGUsIGUuZGF0YS5mcmFtZVR5cGUpOworICAgICAgICAgIHJldHVybiBj
bGllbnQubmF2aWdhdGUodXJsKTsKICAgICAgICAgfQotICAgICAgICB0aHJvdyAnQ291bGQgbm90
IGxvY2F0ZSB3aW5kb3cgY2xpZW50Lic7Ci0gICAgICB9KQotICAgIC50aGVuKGZ1bmN0aW9uKG5l
d19jbGllbnQpIHsKLSAgICAgICAgLy8gSWYgd2UgZGlkbid0IHJlamVjdCwgd2UgYmV0dGVyIGdl
dCByZXNvbHZlZCB3aXRoIHRoZSByaWdodCB0aGluZy4KLSAgICAgICAgaWYgKG5ld19jbGllbnQg
PT09IG51bGwpIHsKLSAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5ld19jbGllbnQsIGV4cGVjdGVk
KTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICBhc3NlcnRfZXF1YWxzKG5ld19jbGllbnQu
dXJsLCBleHBlY3RlZCk7Ci0gICAgICAgIH0KLSAgICAgIH0pOworICAgICAgfQorICAgICAgdGhy
b3cgJ0NvdWxkIG5vdCBsb2NhdGUgd2luZG93IGNsaWVudC4nOworICAgIH0pLnRoZW4oZnVuY3Rp
b24obmV3Q2xpZW50KSB7CisgICAgICAvLyBJZiB3ZSBkaWRuJ3QgcmVqZWN0LCB3ZSBiZXR0ZXIg
Z2V0IHJlc29sdmVkIHdpdGggdGhlIHJpZ2h0IHRoaW5nLgorICAgICAgaWYgKG5ld0NsaWVudCA9
PT0gbnVsbCkgeworICAgICAgICBhc3NlcnRfZXF1YWxzKG5ld0NsaWVudCwgZXhwZWN0ZWQpOwor
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgYXNzZXJ0X2VxdWFscyhuZXdDbGllbnQudXJsLCBleHBl
Y3RlZCk7CisgICAgICB9CisgICAgfSk7CiAKLSAgaWYgKHR5cGVvZiBzZWxmW2V4cGVjdGVkXSA9
PSAiZnVuY3Rpb24iKSB7CisgIGlmICh0eXBlb2Ygc2VsZltleHBlY3RlZF0gPT09ICJmdW5jdGlv
biIpIHsKICAgICAvLyBJdCdzIGEgSlMgZXJyb3IgdHlwZSBuYW1lLiAgV2UgYXJlIGV4cGVjdGlu
ZyBvdXIgcHJvbWlzZSB0byBiZSByZWplY3RlZAogICAgIC8vIHdpdGggdGhhdCBlcnJvci4KICAg
ICBwID0gcHJvbWlzZV9yZWplY3RzX2pzKHQsIHNlbGZbZXhwZWN0ZWRdLCBwKTsKQEAgLTQwLDM5
ICszOSwzNyBAQCBhc3luYyBmdW5jdGlvbiBuYXZpZ2F0ZV90ZXN0KHQsIGUpIHsKIAogZnVuY3Rp
b24gZ2V0VGVzdENsaWVudCgpIHsKICAgcmV0dXJuIGNsaWVudHMubWF0Y2hBbGwoeyBpbmNsdWRl
VW5jb250cm9sbGVkOiB0cnVlIH0pCi0gICAgLnRoZW4oZnVuY3Rpb24oY2xpZW50X2xpc3QpIHsK
LSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjbGllbnRfbGlzdC5sZW5ndGg7IGkrKykgewot
ICAgICAgICAgIHZhciBjbGllbnQgPSBjbGllbnRfbGlzdFtpXTsKLQotICAgICAgICAgIGlmICgv
d2luZG93Y2xpZW50LW5hdmlnYXRlXC5odHRwc1wuaHRtbC8udGVzdChjbGllbnQudXJsKSkgewot
ICAgICAgICAgICAgcmV0dXJuIGNsaWVudDsKLSAgICAgICAgICB9CisgICAgLnRoZW4oZnVuY3Rp
b24oY2xpZW50cykgeworICAgICAgZm9yIChjb25zdCBjbGllbnQgb2YgY2xpZW50cykgeworICAg
ICAgICBpZiAoY2xpZW50LnVybC5pbmNsdWRlcygnd2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBz
Lmh0bWwnKSkgeworICAgICAgICAgIHJldHVybiBjbGllbnQ7CiAgICAgICAgIH0KKyAgICAgIH0K
IAotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NlcnZpY2Ugd29ya2VyIHdhcyB1bmFibGUgdG8g
bG9jYXRlIHRlc3QgY2xpZW50LicpOwotICAgICAgfSk7CisgICAgICB0aHJvdyBuZXcgRXJyb3Io
J1NlcnZpY2Ugd29ya2VyIHdhcyB1bmFibGUgdG8gbG9jYXRlIHRlc3QgY2xpZW50LicpOworICAg
IH0pOwogfQogCiBmdW5jdGlvbiB3YWl0Rm9yTWVzc2FnZShjbGllbnQpIHsKLSAgdmFyIGNoYW5u
ZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAgY29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdl
Q2hhbm5lbCgpOwogICBjbGllbnQucG9zdE1lc3NhZ2UoeyBwb3J0OiBjaGFubmVsLnBvcnQyIH0s
IFtjaGFubmVsLnBvcnQyXSk7CiAKICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29s
dmUpIHsKLSAgICAgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSByZXNvbHZlOwotICAgICAg
fSk7CisgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSByZXNvbHZlOworICB9KTsKIH0KIAog
Ly8gVGhlIHdvcmtlciBtdXN0IHJlbWFpbiBpbiB0aGUgImluc3RhbGxpbmciIHN0YXRlIGZvciB0
aGUgZHVyYXRpb24gb2Ygc29tZQogLy8gc3ViLXRlc3RzLiBJbiBvcmRlciB0byBhY2hpZXZlIHRo
aXMgY29vcmRpbmF0aW9uIHdpdGhvdXQgcmVseWluZyBvbiBnbG9iYWwKIC8vIHN0YXRlLCB0aGUg
d29ya2VyIG11c3QgY3JlYXRlIGEgbWVzc2FnZSBjaGFubmVsIHdpdGggdGhlIGNsaWVudCBmcm9t
IHdpdGhpbgogLy8gdGhlICJpbnN0YWxsIiBldmVudCBoYW5kbGVyLgotaWYgKG1hdGNoX3F1ZXJ5
KCdpbnN0YWxsaW5nJykpIHsKK2lmIChtYXRjaFF1ZXJ5KCdpbnN0YWxsaW5nJykpIHsKICAgc2Vs
Zi5hZGRFdmVudExpc3RlbmVyKCdpbnN0YWxsJywgZnVuY3Rpb24oZSkgewotICAgICAgZS53YWl0
VW50aWwoZ2V0VGVzdENsaWVudCgpLnRoZW4od2FpdEZvck1lc3NhZ2UpKTsKLSAgICB9KTsKKyAg
ICBlLndhaXRVbnRpbChnZXRUZXN0Q2xpZW50KCkudGhlbih3YWl0Rm9yTWVzc2FnZSkpOworICB9
KTsKIH0KIAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZnVuY3Rpb24oZSkgewot
ICAgIGUud2FpdFVudGlsKHByb21pc2VfdGVzdCh0ID0+IG5hdmlnYXRlX3Rlc3QodCwgZSksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUuZGF0YS5kZXNjcmlwdGlvbiArICIgd29ya2Vy
IHNpZGUiKSk7Ci0gIH0pOworICBlLndhaXRVbnRpbChwcm9taXNlX3Rlc3QodCA9PiBuYXZpZ2F0
ZVRlc3QodCwgZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICBlLmRhdGEuZGVzY3JpcHRp
b24gKyAiIHdvcmtlciBzaWRlIikpOworfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMveGhyLWNvbnRlbnQtbGVuZ3RoLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy94aHItY29udGVudC1sZW5ndGgtd29ya2VyLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYw
NGRlZWNlMmQyNTJkNjhiNGYxNTY0MDNiNjA0MWIwMjkwZDVhOWMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMveGhyLWNvbnRlbnQtbGVuZ3RoLXdvcmtlci5q
cwpAQCAtMCwwICsxLDIyIEBACisvLyBTZXJ2aWNlIHdvcmtlciBmb3IgdGhlIHhoci1jb250ZW50
LWxlbmd0aCB0ZXN0LgorCitzZWxmLmFkZEV2ZW50TGlzdGVuZXIoImZldGNoIiwgZXZlbnQgPT4g
eworICBjb25zdCB1cmwgPSBuZXcgVVJMKGV2ZW50LnJlcXVlc3QudXJsKTsKKyAgY29uc3QgdHlw
ZSA9IHVybC5zZWFyY2hQYXJhbXMuZ2V0KCJ0eXBlIik7CisKKyAgaWYgKHR5cGUgPT09ICJuby1j
b250ZW50LWxlbmd0aCIpIHsKKyAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoIkhl
bGxvISIpKTsKKyAgfQorCisgIGlmICh0eXBlID09PSAibGFyZ2VyLWNvbnRlbnQtbGVuZ3RoIikg
eworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgibWVlZWVoIiwgeyBoZWFkZXJz
OiBbWyJDb250ZW50LUxlbmd0aCIsICIxMDAwMCJdXSB9KSk7CisgIH0KKworICBpZiAodHlwZSA9
PT0gImRvdWJsZS1jb250ZW50LWxlbmd0aCIpIHsKKyAgICBldmVudC5yZXNwb25kV2l0aChuZXcg
UmVzcG9uc2UoIm1lZWVlaCIsIHsgaGVhZGVyczogW1siQ29udGVudC1MZW5ndGgiLCAiMTAwMDAi
XSwgWyJDb250ZW50LUxlbmd0aCIsICIxMDAwMCJdXSB9KSk7CisgIH0KKworICBpZiAodHlwZSA9
PT0gImJvZ3VzLWNvbnRlbnQtbGVuZ3RoIikgeworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBS
ZXNwb25zZSgibWVlZWVoIiwgeyBoZWFkZXJzOiBbWyJDb250ZW50LUxlbmd0aCIsICJ0ZXN0Il1d
IH0pKTsKKyAgfQorfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0
LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0LXJl
ZnRlc3QtMDAxLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTlmYjUyNDA0OWQ4MDdiNmRlODg3YTVi
MjBkMWMxNzI4MjUxMDlkZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3N2
Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbApAQCAtMCwwICsxLDMgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPGltZyBzcmM9Ii9pbWFnZXMvZ3JlZW4u
c3ZnIj4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3N2Zy10YXJnZXQtcmVmdGVzdC5o
dHRwcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0
Lmh0dHBzLWV4cGVjdGVkLmh0bWwKaW5kZXggNDY3ODJhYzMyNzNmN2RjYWM5MTFhNWMxMzY4Mzgz
M2ViMTMxNGY1MC4uOWE5M2QzYjM3MDQ3NTYwYTFiNjg2MjY2OTMyYzAzOTk2ODY4M2ZjZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0Lmh0dHBzLWV4cGVj
dGVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0Lmh0dHBz
LWV4cGVjdGVkLmh0bWwKQEAgLTIsNCArMiw0IEBACiA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiA8
dGl0bGU+R3JlZW4gc3ZnIGJveCByZWZlcmVuY2UgZmlsZTwvdGl0bGU+CiA8cD5QYXNzIGlmIHlv
dSBzZWUgYSBncmVlbiBib3ggYmVsb3cuPC9wPgotPGlmcmFtZSBzcmM9InJlc291cmNlcy9zdmct
dGFyZ2V0LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwiPgorPGlmcmFtZSBzcmM9InN2Zy10YXJnZXQt
cmVmdGVzdC0wMDEtZnJhbWUuaHRtbCI+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91
cGRhdGUtYWZ0ZXItb25lZGF5Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUt
YWZ0ZXItb25lZGF5Lmh0dHBzLmh0bWwKaW5kZXggZDliOWZjZmI4ZGIzN2VhM2IwZDU3MTI1MGIy
MmI4OGNhNzM1NDc3Mi4uZTdhOGFhNDJkMzA3Nzk5YjE1N2ZkMzk5NGFjMjkxZDVjNTk2YmZkMSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWFmdGVyLW9uZWRheS5odHRwcy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1hZnRlci1vbmVkYXkuaHR0cHMuaHRt
bApAQCAtNDAsNyArNDAsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAgICB9
KQogICAgICAgLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgICAgLy8gVHJpZ2dlciBhIG5vbi1u
YXZpZ2F0aW9uIGZldGNoIGV2ZW50Ci0gICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5sb2Fk
X2ltYWdlKG5vcm1hbGl6ZVVSTCgncmVzb3VyY2VzL3VwZGF0ZS9kdW1teScpKTsKKyAgICAgICAg
ICBmcmFtZS5jb250ZW50V2luZG93LmxvYWRfaW1hZ2Uobm9ybWFsaXplVVJMKCdyZXNvdXJjZXMv
dXBkYXRlL3NhbXBsZScpKTsKICAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHJl
Z2lzdHJhdGlvbik7CiAgICAgICAgfSkKICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0
cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1jb3Jz
LWltcG9ydC5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDEwYzg3ODZiYTM1YmUzOTI3
MmQ0MmQ3ZjdhZGNhOGI4YTAwMTJmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMTIgQEAKKworSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisK
K1BBU1MgVGVzdChtYWluOiBkZWZhdWx0LCBpbXBvcnRlZDogZGVmYXVsdCkKK1RJTUVPVVQgVGVz
dChtYWluOiBkZWZhdWx0LCBpbXBvcnRlZDogdGltZSkgVGVzdCB0aW1lZCBvdXQKK05PVFJVTiBU
ZXN0KG1haW46IHRpbWUsIGltcG9ydGVkOiBkZWZhdWx0KQorTk9UUlVOIFRlc3QobWFpbjogdGlt
ZSwgaW1wb3J0ZWQ6IHRpbWUpCitOT1RSVU4gVGVzdCBtb2R1bGUgc2NyaXB0KG1haW46IGRlZmF1
bHQsIGltcG9ydGVkOiBkZWZhdWx0KQorTk9UUlVOIFRlc3QgbW9kdWxlIHNjcmlwdChtYWluOiBk
ZWZhdWx0LCBpbXBvcnRlZDogdGltZSkKK05PVFJVTiBUZXN0IG1vZHVsZSBzY3JpcHQobWFpbjog
dGltZSwgaW1wb3J0ZWQ6IGRlZmF1bHQpCitOT1RSVU4gVGVzdCBtb2R1bGUgc2NyaXB0KG1haW46
IHRpbWUsIGltcG9ydGVkOiB0aW1lKQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91
cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci91cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTIx
YTczNzhlMzU4ZDYzMmNlZTNlZjU2ZTc5YTE5Yzg2NWVhNWMzZAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0cHMuaHRt
bApAQCAtMCwwICsxLDkyIEBACis8IWRvY3R5cGUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+
Cis8dGl0bGU+PC90aXRsZT4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgor
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0Pgor
Ly8gVGVzdHMgb2YgdXBkYXRpbmcgYSBzZXJ2aWNlIHdvcmtlci4gVGhpcyBmaWxlIGNvbnRhaW5z
IGNvcnMgY2FzZXMgb25seS4KKworLyoKKyAqIEBwYXJhbSBzdHJpbmcgbWFpbgorICogICBEZWNp
ZGUgdGhlIGNvbnRlbnQgb2YgdGhlIG1haW4gc2NyaXB0LCB3aGVyZSAnZGVmYXVsdCcgaXMgZm9y
IGNvbnN0YW50CisgKiAgIGNvbnRlbnQgd2hpbGUgJ3RpbWUnIGlzIGZvciB0aW1lLXZhcmlhbnQg
Y29udGVudC4KKyAqIEBwYXJhbSBzdHJpbmcgaW1wb3J0ZWQKKyAqICAgRGVjaWRlIHRoZSBjb250
ZW50IG9mIHRoZSBpbXBvcnRlZCBzY3JpcHQsIHdoZXJlICdkZWZhdWx0JyBpcyBmb3IgY29uc3Rh
bnQKKyAqICAgY29udGVudCB3aGlsZSAndGltZScgaXMgZm9yIHRpbWUtdmFyaWFudCBjb250ZW50
LgorICovCitjb25zdCBzZXR0aW5ncyA9IFt7bWFpbjogJ2RlZmF1bHQnLCBpbXBvcnRlZDogJ2Rl
ZmF1bHQnfSwKKyAgICAgICAgICAgICAgICAgIHttYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAn
dGltZScgICB9LAorICAgICAgICAgICAgICAgICAge21haW46ICd0aW1lJywgICAgaW1wb3J0ZWQ6
ICdkZWZhdWx0J30sCisgICAgICAgICAgICAgICAgICB7bWFpbjogJ3RpbWUnLCAgICBpbXBvcnRl
ZDogJ3RpbWUnICAgfV07CisKK2NvbnN0IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKK3Nl
dHRpbmdzLmZvckVhY2goKHttYWluLCBpbXBvcnRlZH0pID0+IHsKKyAgcHJvbWlzZV90ZXN0KGFz
eW5jICh0KSA9PiB7CisgICAgLy8gU3BlY2lmeSBhIGNyb3NzIG9yaWdpbiBwYXRoIHRvIGxvYWQg
aW1wb3J0ZWQgc2NyaXB0cyBmcm9tIGEgY3Jvc3Mgb3JpZ2luLgorICAgIGNvbnN0IHBhdGggPSBo
b3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiArCisgICAgICAgICAgICAgICAgICcvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy8nOworICAgIGNvbnN0IHNjcmlwdCA9
ICdyZXNvdXJjZXMvYnl0ZWNoZWNrLXdvcmtlci5weScgKworICAgICAgICAgICAgICAgICAgICc/
bWFpbj0nICsgbWFpbiArCisgICAgICAgICAgICAgICAgICAgJyZpbXBvcnRlZD0nICsgaW1wb3J0
ZWQgKworICAgICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aCArCisgICAgICAgICAgICAg
ICAgICAgJyZ0eXBlPWNsYXNzaWMnOworICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9ibGFu
ay5odG1sJzsKKworICAgIC8vIFJlZ2lzdGVyIGEgc2VydmljZSB3b3JrZXIuCisgICAgY29uc3Qg
c3dyID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2Ny
aXB0LCBzY29wZSk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBzd3IudW5yZWdpc3RlcigpKTsK
KyAgICBjb25zdCBzdyA9IGF3YWl0IHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIGF3YWl0
IHdhaXRfZm9yX3N0YXRlKHQsIHN3LCAnYWN0aXZhdGVkJyk7CisgICAgYXNzZXJ0X2FycmF5X2Vx
dWFscyhbc3dyLmFjdGl2ZSwgc3dyLndhaXRpbmcsIHN3ci5pbnN0YWxsaW5nXSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVsbF0pOworCisgICAgLy8gVXBkYXRlIHRoZSBz
ZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24uCisgICAgYXdhaXQgc3dyLnVwZGF0ZSgpOworCisg
ICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJlIGEgbmV3IHNlcnZpY2Ugd29ya2VyLgorICAgIGlmICht
YWluID09PSAndGltZScgfHwgaW1wb3J0ZWQgPT09ICd0aW1lJykgeworICAgICAgcmV0dXJuIHdh
aXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIH0KKyAgICAvLyBPdGhlcndpc2UsIG1ha2Ugc3Vy
ZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVkIHNlcnZpY2Ugd29ya2VyLgorICAgIGFzc2VydF9h
cnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10sCisg
ICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsKKyAgfSwgYFRlc3QobWFp
bjogJHttYWlufSwgaW1wb3J0ZWQ6ICR7aW1wb3J0ZWR9KWApOworfSk7CisKK3NldHRpbmdzLmZv
ckVhY2goKHttYWluLCBpbXBvcnRlZH0pID0+IHsKKyAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9
PiB7CisgICAgLy8gU3BlY2lmeSBhIGNyb3NzIG9yaWdpbiBwYXRoIHRvIGxvYWQgaW1wb3J0ZWQg
c2NyaXB0cyBmcm9tIGEgY3Jvc3Mgb3JpZ2luLgorICAgIGNvbnN0IHBhdGggPSBob3N0X2luZm8u
SFRUUFNfUkVNT1RFX09SSUdJTiArCisgICAgICAgICAgICAgICAgICcvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy8nOworICAgIGNvbnN0IHNjcmlwdCA9ICdyZXNvdXJj
ZXMvYnl0ZWNoZWNrLXdvcmtlci5weScgKworICAgICAgICAgICAgICAgICAgICc/bWFpbj0nICsg
bWFpbiArCisgICAgICAgICAgICAgICAgICAgJyZpbXBvcnRlZD0nICsgaW1wb3J0ZWQgKworICAg
ICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aCArCisgICAgICAgICAgICAgICAgICAgJyZ0
eXBlPW1vZHVsZSc7CisgICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL2JsYW5rLmh0bWwnOwor
CisgICAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KKyAgICBjb25zdCBzd3IgPSBhd2Fp
dCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3Bl
LCB7dHlwZTogJ21vZHVsZSd9KTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHN3ci51bnJlZ2lz
dGVyKCkpOworICAgIGNvbnN0IHN3ID0gYXdhaXQgd2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7Cisg
ICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgc3csICdhY3RpdmF0ZWQnKTsKKyAgICBhc3NlcnRf
YXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dyLmluc3RhbGxpbmddLAor
ICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7CisKKyAgICAvLyBVcGRh
dGUgdGhlIHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbi4KKyAgICBhd2FpdCBzd3IudXBkYXRl
KCk7CisKKyAgICAvLyBJZiB0aGVyZSBzaG91bGQgYmUgYSBuZXcgc2VydmljZSB3b3JrZXIuCisg
ICAgaWYgKG1haW4gPT09ICd0aW1lJyB8fCBpbXBvcnRlZCA9PT0gJ3RpbWUnKSB7CisgICAgICBy
ZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7CisgICAgfQorICAgIC8vIE90aGVyd2lzZSwg
bWFrZSBzdXJlIHRoZXJlIGlzIG5vIG5ld2x5IGNyZWF0ZWQgc2VydmljZSB3b3JrZXIuCisgICAg
YXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwgc3dyLndhaXRpbmcsIHN3ci5pbnN0YWxs
aW5nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVsbF0pOworICB9LCBg
VGVzdCBtb2R1bGUgc2NyaXB0KG1haW46ICR7bWFpbn0sIGltcG9ydGVkOiAke2ltcG9ydGVkfSlg
KTsKK30pOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUt
Ynl0ZWNoZWNrLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNr
Lmh0dHBzLmh0bWwKaW5kZXggNjYyOGRiYTZlZTdkMTFhZTBjZDQ1OTQxYzcyNmRmMDE3YWZiOTMz
Ni4uM2U1YTI4YmI2N2NiNzU2MjRhNWRkOThiZDE1ZTEzN2U1NWM4N2IwZiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay5odHRwcy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2suaHR0cHMuaHRtbApAQCAtOCwxMCArOCw5IEBA
CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgogPHNj
cmlwdD4KKy8vIFRlc3RzIG9mIHVwZGF0aW5nIGEgc2VydmljZSB3b3JrZXIuIFRoaXMgZmlsZSBj
b250YWlucyBub24tY29ycyBjYXNlcyBvbmx5LgogCiAvKgotICogQHBhcmFtIGJvbGVhbiBjb3Jz
Ci0gKiAgIERldGVybWluZSB3ZXRoZXIgdGhlIGltcG9ydGVkIHNjcmlwdCBzaG91bGQgYmUgYSBj
cm9zcyBvcmlnaW4gc2NyaXB0LgogICogQHBhcmFtIHN0cmluZyBtYWluCiAgKiAgIERlY2lkZSB0
aGUgY29udGVudCBvZiB0aGUgbWFpbiBzY3JpcHQsIHdoZXJlICdkZWZhdWx0JyBpcyBmb3IgY29u
c3RhbnQKICAqICAgY29udGVudCB3aGlsZSAndGltZScgaXMgZm9yIHRpbWUtdmFyaWFudCBjb250
ZW50LgpAQCAtMTksNTcgKzE4LDc1IEBACiAgKiAgIERlY2lkZSB0aGUgY29udGVudCBvZiB0aGUg
aW1wb3J0ZWQgc2NyaXB0LCB3aGVyZSAnZGVmYXVsdCcgaXMgZm9yIGNvbnN0YW50CiAgKiAgIGNv
bnRlbnQgd2hpbGUgJ3RpbWUnIGlzIGZvciB0aW1lLXZhcmlhbnQgY29udGVudC4KICAqLwotY29u
c3Qgc2V0dGluZ3MgPSBbe2NvcnM6IGZhbHNlLCBtYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAn
ZGVmYXVsdCd9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IGZhbHNlLCBtYWluOiAnZGVmYXVs
dCcsIGltcG9ydGVkOiAndGltZScgICB9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IGZhbHNl
LCBtYWluOiAndGltZScsICAgIGltcG9ydGVkOiAnZGVmYXVsdCd9LAotICAgICAgICAgICAgICAg
ICAge2NvcnM6IGZhbHNlLCBtYWluOiAndGltZScsICAgIGltcG9ydGVkOiAndGltZScgICB9LAot
ICAgICAgICAgICAgICAgICAge2NvcnM6IHRydWUsICBtYWluOiAnZGVmYXVsdCcsIGltcG9ydGVk
OiAnZGVmYXVsdCd9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IHRydWUsICBtYWluOiAnZGVm
YXVsdCcsIGltcG9ydGVkOiAndGltZScgICB9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IHRy
dWUsICBtYWluOiAndGltZScsICAgIGltcG9ydGVkOiAnZGVmYXVsdCd9LAotICAgICAgICAgICAg
ICAgICAge2NvcnM6IHRydWUsICBtYWluOiAndGltZScsICAgIGltcG9ydGVkOiAndGltZScgICB9
XTsKK2NvbnN0IHNldHRpbmdzID0gW3ttYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAnZGVmYXVs
dCd9LAorICAgICAgICAgICAgICAgICAge21haW46ICdkZWZhdWx0JywgaW1wb3J0ZWQ6ICd0aW1l
JyAgIH0sCisgICAgICAgICAgICAgICAgICB7bWFpbjogJ3RpbWUnLCAgICBpbXBvcnRlZDogJ2Rl
ZmF1bHQnfSwKKyAgICAgICAgICAgICAgICAgIHttYWluOiAndGltZScsICAgIGltcG9ydGVkOiAn
dGltZScgICB9XTsKIAogY29uc3QgaG9zdF9pbmZvID0gZ2V0X2hvc3RfaW5mbygpOwotc2V0dGlu
Z3MucmVkdWNlKChwLCBzKSA9PiB7Ci0gIHJldHVybiBwLnRoZW4ocHJvbWlzZV90ZXN0KGZ1bmN0
aW9uKHQpIHsKLSAgICB2YXIgcGF0aCA9ICFzLmNvcnMgPyAnJwotICAgICAgICAgICAgICAgICAg
ICAgICA6IGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJR0lOICsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAnL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvJzsKLSAg
ICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLnB5JyArCi0gICAgICAg
ICAgICAgICAgICc/bWFpbj0nICsgcy5tYWluICsKLSAgICAgICAgICAgICAgICAgJyZpbXBvcnRl
ZD0nICsgcy5pbXBvcnRlZCArCi0gICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aDsKLSAg
ICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL2JsYW5rLmh0bWwnOworc2V0dGluZ3MuZm9yRWFjaCgo
e21haW4sIGltcG9ydGVkfSkgPT4geworICBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAg
ICAvLyBFbXB0eSBwYXRoIHJlc3VsdHMgaW4gdGhlIHNhbWUgb3JpZ2luIGltcG9ydGVkIHNjcmlw
dHMuCisgICAgY29uc3QgcGF0aCA9ICcnOworICAgIGNvbnN0IHNjcmlwdCA9ICdyZXNvdXJjZXMv
Ynl0ZWNoZWNrLXdvcmtlci5weScgKworICAgICAgICAgICAgICAgICAgICc/bWFpbj0nICsgbWFp
biArCisgICAgICAgICAgICAgICAgICAgJyZpbXBvcnRlZD0nICsgaW1wb3J0ZWQgKworICAgICAg
ICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aCArCisgICAgICAgICAgICAgICAgICAgJyZ0eXBl
PWNsYXNzaWMnOworICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9ibGFuay5odG1sJzsKIAot
ICAgIHZhciBzd3IsIHN3OwotICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKQotICAgICAgLy8g
UmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KLSAgICAgIC50aGVuKF8gPT4gc2VydmljZV93b3Jr
ZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBzY29wZSkpCi0gICAgICAudGhl
bihyID0+IHsKLSAgICAgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJl
Z2lzdGVyKHQsIHNjb3BlKSk7Ci0gICAgICAgIHN3ciA9IHI7Ci0gICAgICAgIHJldHVybiB3YWl0
X2Zvcl91cGRhdGUodCwgc3dyKTsKLSAgICAgIH0pCi0gICAgICAudGhlbih3ID0+IHN3ID0gdykK
LSAgICAgIC50aGVuKF8gPT4gd2FpdF9mb3Jfc3RhdGUodCwgc3csICdhY3RpdmF0ZWQnKSkKLSAg
ICAgIC50aGVuKF8gPT4gYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dyLndhaXRpbmcsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHN3ci5pbnN0YWxsaW5nXSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKSkKKyAgICAvLyBSZWdpc3Rl
ciBhIHNlcnZpY2Ugd29ya2VyLgorICAgIGNvbnN0IHN3ciA9IGF3YWl0IHNlcnZpY2Vfd29ya2Vy
X3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2NvcGUpOworICAgIHQuYWRkX2Ns
ZWFudXAoKCkgPT4gc3dyLnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgc3cgPSBhd2FpdCB3YWl0
X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCBzdywgJ2Fj
dGl2YXRlZCcpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0
aW5nLCBzd3IuaW5zdGFsbGluZ10sCisgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGws
IG51bGxdKTsKIAotICAgICAgLy8gVXBkYXRlIHRoZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRp
b24uCi0gICAgICAudGhlbihfID0+IHN3ci51cGRhdGUoKSkKLSAgICAgIC50aGVuKF8gPT4gewot
ICAgICAgICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJlIGEgbmV3IHNlcnZpY2Ugd29ya2VyLgotICAg
ICAgICAgaWYgKHMubWFpbiA9PT0gJ3RpbWUnIHx8IHMuaW1wb3J0ZWQgPT09ICd0aW1lJykgewot
ICAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7Ci0gICAgICAgICB9Ci0g
ICAgICAgICAvLyBPdGhlcndpc2UsIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVk
IHNlcnZpY2Ugd29ya2VyLgotICAgICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3ci53YWl0aW5nLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3dyLmluc3RhbGxpbmddLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsKLSAgICAgIH0pOwotICB9LCBgVGVzdChjb3Jz
OiAke3MuY29yc30sIG1haW46ICR7cy5tYWlufSwgaW1wb3J0ZWQ6ICR7cy5pbXBvcnRlZH0pYCkp
OwotfSwgUHJvbWlzZS5yZXNvbHZlKCkpOworICAgIC8vIFVwZGF0ZSB0aGUgc2VydmljZSB3b3Jr
ZXIgcmVnaXN0cmF0aW9uLgorICAgIGF3YWl0IHN3ci51cGRhdGUoKTsKIAorICAgIC8vIElmIHRo
ZXJlIHNob3VsZCBiZSBhIG5ldyBzZXJ2aWNlIHdvcmtlci4KKyAgICBpZiAobWFpbiA9PT0gJ3Rp
bWUnIHx8IGltcG9ydGVkID09PSAndGltZScpIHsKKyAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRh
dGUodCwgc3dyKTsKKyAgICB9CisgICAgLy8gT3RoZXJ3aXNlLCBtYWtlIHN1cmUgdGhlcmUgaXMg
bm8gbmV3bHkgY3JlYXRlZCBzZXJ2aWNlIHdvcmtlci4KKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxz
KFtzd3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dyLmluc3RhbGxpbmddLAorICAgICAgICAgICAg
ICAgICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7CisgIH0sIGBUZXN0KG1haW46ICR7bWFpbn0s
IGltcG9ydGVkOiAke2ltcG9ydGVkfSlgKTsKK30pOworCitzZXR0aW5ncy5mb3JFYWNoKCh7bWFp
biwgaW1wb3J0ZWR9KSA9PiB7CisgIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICAgIC8v
IEVtcHR5IHBhdGggcmVzdWx0cyBpbiB0aGUgc2FtZSBvcmlnaW4gaW1wb3J0ZWQgc2NyaXB0cy4K
KyAgICBjb25zdCBwYXRoID0gJy4vJzsKKyAgICBjb25zdCBzY3JpcHQgPSAncmVzb3VyY2VzL2J5
dGVjaGVjay13b3JrZXIucHknICsKKyAgICAgICAgICAgICAgICAgICAnP21haW49JyArIG1haW4g
KworICAgICAgICAgICAgICAgICAgICcmaW1wb3J0ZWQ9JyArIGltcG9ydGVkICsKKyAgICAgICAg
ICAgICAgICAgICAnJnBhdGg9JyArIHBhdGggKworICAgICAgICAgICAgICAgICAgICcmdHlwZT1t
b2R1bGUnOworICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9ibGFuay5odG1sJzsKKworICAg
IC8vIFJlZ2lzdGVyIGEgbW9kdWxlIHNlcnZpY2Ugd29ya2VyLgorICAgIGNvbnN0IHN3ciA9IGF3
YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2Nv
cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB7dHlwZTogJ21vZHVsZSd9KTsKKworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gc3dy
LnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgc3cgPSBhd2FpdCB3YWl0X2Zvcl91cGRhdGUodCwg
c3dyKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCBzdywgJ2FjdGl2YXRlZCcpOworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0aW5nLCBzd3IuaW5zdGFs
bGluZ10sCisgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsKKworICAg
IC8vIFVwZGF0ZSB0aGUgc2VydmljZSB3b3JrZXIgcmVnaXN0cmF0aW9uLgorICAgIGF3YWl0IHN3
ci51cGRhdGUoKTsKKworICAgIC8vIElmIHRoZXJlIHNob3VsZCBiZSBhIG5ldyBzZXJ2aWNlIHdv
cmtlci4KKyAgICBpZiAobWFpbiA9PT0gJ3RpbWUnIHx8IGltcG9ydGVkID09PSAndGltZScpIHsK
KyAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICB9CisgICAgLy8gT3Ro
ZXJ3aXNlLCBtYWtlIHN1cmUgdGhlcmUgaXMgbm8gbmV3bHkgY3JlYXRlZCBzZXJ2aWNlIHdvcmtl
ci4KKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dy
Lmluc3RhbGxpbmddLAorICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7
CisgIH0sIGBUZXN0IG1vZHVsZSBzY3JpcHQobWFpbjogJHttYWlufSwgaW1wb3J0ZWQ6ICR7aW1w
b3J0ZWR9KWApOworfSk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3VwZGF0ZS1tb2R1bGUtcmVxdWVzdC1tb2RlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3VwZGF0ZS1tb2R1bGUtcmVxdWVzdC1tb2RlLmh0dHBzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mMjhlMWI4MzE0MDRhMWE3YzJmNzZhNjY3ZDVmZTBjMWFkMzM3ZDlkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1v
ZGUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIGhlYWRlcnMgb2Yg
YSBtYWluIG1vZHVsZSBzY3JpcHQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgInNh
bWUtb3JpZ2luIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9kdWxlLXJlcXVlc3QtbW9kZS5odHRwcy5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iMzg3NWQyMDdiYzI1MmRlYThlNDNjMWI1ODVmZWJlNmQ2YTEwZjBiCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1v
ZGUuaHR0cHMuaHRtbApAQCAtMCwwICsxLDQ1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNo
YXJzZXQ9InV0Zi04Ij4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHRp
dGxlPlRlc3QgdGhhdCBtb2RlIGlzIHNldCB0byBzYW1lLW9yaWdpbiBmb3IgYSBtYWluIG1vZHVs
ZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0
PgorPHNjcmlwdD4KKy8vIFRlc3RzIGEgbWFpbiBtb2R1bGUgc2VydmljZSB3b3JrZXIgc2NyaXB0
IGZldGNoIGR1cmluZyBhbiB1cGRhdGUgY2hlY2suCisvLyBUaGUgZmV0Y2ggc2hvdWxkIGhhdmUg
dGhlIG1vZGUgc2V0IHRvICdzYW1lLW9yaWdpbicuCisvLworLy8gVGhlIHRlc3Qgd29ya3MgYnkg
cmVnaXN0ZXJpbmcgYSBtYWluIG1vZHVsZSBzZXJ2aWNlIHdvcmtlci4gSXQgdGhlbiBkb2VzIGFu
CisvLyB1cGRhdGUuIFRoZSB0ZXN0IHNlcnZlciByZXNwb25kcyB3aXRoIGFuIHVwZGF0ZWQgd29y
a2VyIHNjcmlwdCB0aGF0IHJlbWVtYmVycworLy8gdGhlIGh0dHAgcmVxdWVzdC4gVGhlIHVwZGF0
ZWQgd29ya2VyIHJlcG9ydHMgYmFjayB0aGlzIHJlcXVlc3QgdG8gdGhlIHRlc3QKKy8vIHBhZ2Uu
Citwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NyaXB0ID0gInJlc291cmNl
cy90ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIucHkiOworICBjb25zdCBzY29wZSA9ICJyZXNvdXJj
ZXMvIjsKKworICAvLyBSZWdpc3RlciB0aGUgc2VydmljZSB3b3JrZXIuCisgIGF3YWl0IHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOworICBjb25zdCByZWdpc3RyYXRpb24gPSBh
d2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcigKKyAgICAgIHNjcmlwdCwge3Nj
b3BlLCB0eXBlOiAnbW9kdWxlJ30pOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3Ry
YXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIC8vIERvIGFuIHVwZGF0ZS4KKyAg
YXdhaXQgcmVnaXN0cmF0aW9uLnVwZGF0ZSgpOworCisgIC8vIEFzayB0aGUgbmV3IHdvcmtlciB3
aGF0IHRoZSByZXF1ZXN0IHdhcy4KKyAgY29uc3QgbmV3V29ya2VyID0gcmVnaXN0cmF0aW9uLmlu
c3RhbGxpbmc7CisgIGNvbnN0IHNhd01lc3NhZ2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4g
eworICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLm9ubWVzc2FnZSA9IChldmVudCkgPT4gewor
ICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICB9KTsKKyAgbmV3V29ya2VyLnBv
c3RNZXNzYWdlKCdnZXRIZWFkZXJzJyk7CisgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHNhd01lc3Nh
Z2U7CisKKyAgLy8gVGVzdCB0aGUgcmVzdWx0LgorICBhc3NlcnRfZXF1YWxzKHJlc3VsdFsnc2Vj
LWZldGNoLW1vZGUnXSwgJ3NhbWUtb3JpZ2luJyk7CisgIGFzc2VydF9lcXVhbHMocmVzdWx0Wydv
cmlnaW4nXSwgdW5kZWZpbmVkKTsKKworfSwgJ2hlYWRlcnMgb2YgYSBtYWluIG1vZHVsZSBzY3Jp
cHQnKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93M2MtaW1w
b3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3czYy1pbXBvcnQubG9nCmluZGV4IGFlZmJjOTM3
YmU2ZjJkYzA0NGZlZTk4MTc1MDAzMzg4ZjU1Mzc4ZWQuLjk4YmQ4NmEwMjRjMDkwNTYxNzFhY2Ni
NjhkODAxNDkwNGIyNTY2OWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3czYy1pbXBv
cnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3czYy1pbXBvcnQubG9nCkBAIC0zMSwxMCAr
MzEsMTIgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXIt
ZmV0Y2guaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC1pZC5odHRwcy5odG1s
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKKy9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odHRwcy5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvY2xpZW50cy1nZXQtY2xpZW50LXR5cGVzLmh0dHBzLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGllbnRzLWdldC1jcm9zcy1vcmlnaW4uaHR0cHMuaHRtbAogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2NsaWVudHMtZ2V0LXJlc3VsdGluZ0NsaWVudElkLmh0dHBzLmh0bWwKIC9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLWdldC5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtY2xpZW50LXR5cGVzLmh0dHBzLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWV4YWN0LWNvbnRyb2xsZXIuaHR0cHMuaHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtZnJvemVuLmh0dHBzLmh0bWwK
QEAgLTY5LDEwICs3MSw2IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtZXZlbnQtYWZ0ZXItbmF2aWdhdGlvbi13aXRoaW4tcGFnZS5odHRwcy5odG1sCiAvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtYXN5bmMtcmVzcG9uZC13aXRoLmh0dHBzLmh0bWwKIC9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1oYW5kbGVkLmh0dHBzLmh0bWwKLS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWJhY2t3YXJkLW5hdmlnYXRpb24tbWFu
dWFsLmh0dHBzLmh0bWwKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5
LWZvcndhcmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbAotL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRt
bAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1h
bnVhbC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtbmV0d29yay1l
cnJvci5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVkaXJlY3Qu
aHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGlj
eS5odHRwcy5odG1sCkBAIC04NSw3ICs4Myw2IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVzcG9uZC13aXRoLXJlc3BvbnNlLWJvZHktd2l0aC1pbnZh
bGlkLWNodW5rLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZXNw
b25kLXdpdGgtc3RvcHMtcHJvcGFnYXRpb24uaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LXRocm93cy1hZnRlci1yZXNwb25kLXdpdGguaHR0cHMuaHRtbAotL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy1tYW51YWwuaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy5odHRwcy5odG1sCiAvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd29ya2VyLXRpbWluZy1mcmFtZS50ZW50YXRpdmUuaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50Lmh0dHBzLmh0bWwKQEAgLTEw
MCw2ICs5Nyw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVx
dWVzdC1uby1mcmVzaG5lc3MtaGVhZGVycy5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtcmVxdWVzdC1yZXNvdXJjZXMuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LmpzCiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1vbi13b3JrZXIuaHR0cHMuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMuaHR0cHMuaHRtbAogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLmh0dHBzLmh0bWwKQEAgLTEwOSw5ICsxMDcsMTAgQEAg
TGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9nZXRyZWdpc3RyYXRpb24uaHR0cHMu
aHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dldHJlZ2lzdHJhdGlvbnMuaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNld29ya2VyLmh0dHBzLmFueS5qcworL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
aHR0cC10by1odHRwcy1yZWRpcmVjdC1hbmQtcmVnaXN0ZXIuaHR0cHMuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ltbXV0YWJsZS1wcm90b3R5cGUtc2VydmljZXdvcmtlci5odHRwcy5odG1sCi0v
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1vZHVsZS1zY3JpcHRzLmh0dHBzLmh0bWwKKy9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4uaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLW1pbWUtdHlwZXMuaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLXJlZGlyZWN0Lmh0dHBzLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9pbXBvcnQtc2NyaXB0cy1yZXNvdXJjZS1tYXAuaHR0cHMuaHRtbApAQCAt
MTMwLDEwICsxMjksMTQgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9tdWx0
aXBsZS11cGRhdGUuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRlLXdpbmRv
dy5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC1ib2R5
Lmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJlc29s
dXRpb24uaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3Qt
dG8taHR0cC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVj
dC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMu
aHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXh0LWhvcC1wcm90b2NvbC5odHRwcy5odG1sCisvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQtaW4tbW9kdWxlLmFueS5qcworL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5qcwogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L29uYWN0aXZhdGUtc2NyaXB0LWVycm9yLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9v
bmluc3RhbGwtc2NyaXB0LWVycm9yLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9vcGFx
dWUtcmVzcG9uc2UtcHJlbG9hZGVkLmh0dHBzLmh0bWwKQEAgLTE2MCw3ICsxNjMsOSBAQCBMaXN0
IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1pZnJhbWUuaHR0cHMu
aHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1taW1lLXR5cGVzLmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLmh0
bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NvcGUtbW9kdWxlLXN0YXRpYy1p
bXBvcnQuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS5o
dHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjcmlwdC1tb2R1bGUu
aHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQtdXJsLmh0
dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0Lmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2VjdXJpdHktZXJyb3IuaHR0cHMu
aHRtbApAQCAtMTk5LDkgKzIwNCwxMSBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3VwZGF0ZS1hZnRlci1uYXZpZ2F0aW9uLWZldGNoLWV2ZW50Lmh0dHBzLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1s
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWFmdGVyLW9uZWRheS5odHRwcy5odG1sCisvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1jb3JzLWltcG9ydC5odHRwcy5odG1sCiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay5odHRwcy5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvdXBkYXRlLWltcG9ydC1zY3JpcHRzLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci91cGRhdGUtbWlzc2luZy1pbXBvcnQtc2NyaXB0cy5odHRwcy5odG1sCisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3VwZGF0ZS1uby1jYWNoZS1yZXF1ZXN0LWhlYWRlcnMuaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ub3QtYWxsb3dlZC5odHRwcy5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvdXBkYXRlLW9uLW5hdmlnYXRpb24uaHR0cHMuaHRtbApAQCAtMjE4LDUgKzIyNSw2
IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd29ya2VyLWluLXNhbmRib3hl
ZC1pZnJhbWUtYnktY3NwLWZldGNoLWV2ZW50Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci93b3JrZXItaW50ZXJjZXB0aW9uLXJlZGlyZWN0Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci93b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94
aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhy
LXJlc3BvbnNlLXVybC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveHNsLWJhc2UtdXJs
Lmh0dHBzLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dpbmRvd2NsaWVudC1u
YXZpZ2F0ZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd2luZG93Y2xpZW50LW5hdmln
YXRlLmh0dHBzLmh0bWwKaW5kZXggNGZkMmFhMWQwNmY2MmZjOTZjYTAwZGQ2NTZjOTA3Y2E1MGVm
NWMyYy4uYWQ2MGY3ODYzNjNkNmFjNDE1N2Q5YTQzNzJlMjViNmIxNTU0NDEwOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvd2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvd2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKQEAg
LTExLDExMiArMTEsMTM2IEBACiAKIGNvbnN0IFNDT1BFID0gJ3Jlc291cmNlcy9ibGFuay5odG1s
JzsKIGNvbnN0IFNDUklQVF9VUkwgPSAncmVzb3VyY2VzL3dpbmRvd2NsaWVudC1uYXZpZ2F0ZS13
b3JrZXIuanMnOwotY29uc3QgQ1JPU1NfT1JJR0lOX1VSTCA9IGdldF9ob3N0X2luZm8oKVsnSFRU
UFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKwotICAgICdyZXNvdXJjZXMvYmxhbmsu
aHRtbCc7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnbm9ybWFsJywKLSAg
ICBkZXN0X3VybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAotICAgIGV4cGVjdGVkOiBub3JtYWxp
emVVUkwoU0NPUEUpICsgJz9uYXZpZ2F0ZScsCi0gIH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAg
ICBkZXNjcmlwdGlvbjogJ2JsYW5rIHVybCcsCi0gICAgZGVzdF91cmw6ICcnLAotICAgIGV4cGVj
dGVkOiBub3JtYWxpemVVUkwoU0NSSVBUX1VSTCkKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3Qoewot
ICAgIGRlc2NyaXB0aW9uOiAnaW4gc2NvcGUgYnV0IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gaW5z
dGFsbGluZyB3b3JrZXInLAotICAgIGRlc3RfdXJsOiAnYmxhbmsuaHRtbD9uYXZpZ2F0ZScsCi0g
ICAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAotICAgIHdhaXRfc3RhdGU6ICdpbnN0YWxsaW5nJywK
LSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW4gc2NvcGUgYnV0
IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gYWN0aXZlIHdvcmtlcicsCi0gICAgZGVzdF91cmw6ICdi
bGFuay5odG1sP25hdmlnYXRlJywKLSAgICBleHBlY3RlZDogJ1R5cGVFcnJvcicsCi0gICAgc2hv
dWxkX2JlX3JlbG9hZDogZmFsc2UsCi0gIH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNj
cmlwdGlvbjogJ291dCBvZiBzY29wZScsCi0gICAgc3JjX3VybDogJy9jb21tb24vYmxhbmsuaHRt
bCcsCi0gICAgZGVzdF91cmw6ICdibGFuay5odG1sP25hdmlnYXRlJywKLSAgICBleHBlY3RlZDog
J1R5cGVFcnJvcicsCi0gIH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjog
J2Nyb3NzIG9yZ2luIHVybCcsCi0gICAgZGVzdF91cmw6IENST1NTX09SSUdJTl9VUkwsCi0gICAg
ZXhwZWN0ZWQ6IG51bGwKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9u
OiAnaW52YWxpZCB1cmwgKGh0dHA6Ly9bZXhhbXBsZS5jb21dKScsCi0gICAgZGVzdF91cmw6ICdo
dHRwOi8vW2V4YW1wbGVdLmNvbScsCi0gICAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCi0gIH0pOwot
Ci1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJsICh2aWV3LXNv
dXJjZTovL2V4YW1wbGUuY29tKScsCi0gICAgZGVzdF91cmw6ICd2aWV3LXNvdXJjZTovL2V4YW1w
bGUuY29tJywKLSAgICBleHBlY3RlZDogJ1R5cGVFcnJvcicKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rl
c3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW52YWxpZCB1cmwgKGZpbGU6Ly8vKScsCi0gICAgZGVz
dF91cmw6ICdmaWxlOi8vLycsCi0gICAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCi0gIH0pOwotCi1u
YXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJsIChhYm91dDpibGFu
ayknLAotICAgIGRlc3RfdXJsOiAnYWJvdXQ6YmxhbmsnLAotICAgIGV4cGVjdGVkOiAnVHlwZUVy
cm9yJwotICB9KTsKLQotZnVuY3Rpb24gbmF2aWdhdGVfdGVzdChvdmVycmlkZV9wYXJhbWV0ZXJz
KSB7Citjb25zdCBDUk9TU19PUklHSU5fVVJMID0KKyAgZ2V0X2hvc3RfaW5mbygpWydIVFRQU19S
RU1PVEVfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArICdyZXNvdXJjZXMvYmxhbmsuaHRtbCc7CisK
K25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAnbm9ybWFsJywKKyAgZGVzdFVybDogJ2Js
YW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3RlZDogbm9ybWFsaXplVVJMKFNDT1BFKSArICc/
bmF2aWdhdGUnLAorfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAnYmxhbmsg
dXJsJywKKyAgZGVzdFVybDogJycsCisgIGV4cGVjdGVkOiBub3JtYWxpemVVUkwoU0NSSVBUX1VS
TCkKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2luIHNjb3BlIGJ1dCBu
b3QgY29udHJvbGxlZCB0ZXN0IG9uIGluc3RhbGxpbmcgd29ya2VyJywKKyAgZGVzdFVybDogJ2Js
YW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3RlZDogJ1R5cGVFcnJvcicsCisgIHdhaXRTdGF0
ZTogJ2luc3RhbGxpbmcnLAorfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAn
aW4gc2NvcGUgYnV0IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gYWN0aXZlIHdvcmtlcicsCisgIGRl
c3RVcmw6ICdibGFuay5odG1sP25hdmlnYXRlJywKKyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAor
ICBjb250cm9sbGVkOiBmYWxzZSwKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlv
bjogJ291dCBvZiBzY29wZScsCisgIHNyY1VybDogJy9jb21tb24vYmxhbmsuaHRtbCcsCisgIGRl
c3RVcmw6ICdibGFuay5odG1sP25hdmlnYXRlJywKKyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAor
fSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAnY3Jvc3Mgb3JnaW4gdXJsJywK
KyAgZGVzdFVybDogQ1JPU1NfT1JJR0lOX1VSTCwKKyAgZXhwZWN0ZWQ6IG51bGwKK30pOworCitu
YXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJsIChodHRwOi8vW2V4YW1w
bGUuY29tXSknLAorICBkZXN0VXJsOiAnaHR0cDovL1tleGFtcGxlXS5jb20nLAorICBleHBlY3Rl
ZDogJ1R5cGVFcnJvcicKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2lu
dmFsaWQgdXJsICh2aWV3LXNvdXJjZTovL2V4YW1wbGUuY29tKScsCisgIGRlc3RVcmw6ICd2aWV3
LXNvdXJjZTovL2V4YW1wbGUuY29tJywKKyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCit9KTsKKwor
bmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246ICdpbnZhbGlkIHVybCAoZmlsZTovLy8pJywK
KyAgZGVzdFVybDogJ2ZpbGU6Ly8vJywKKyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCit9KTsKKwor
bmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246ICdpbnZhbGlkIHVybCAoYWJvdXQ6Ymxhbmsp
JywKKyAgZGVzdFVybDogJ2Fib3V0OmJsYW5rJywKKyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCit9
KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246ICduYXZpZ2F0ZSBvbiBhIHRvcC1s
ZXZlbCB3aW5kb3cgY2xpZW50JywKKyAgZGVzdFVybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAor
ICBzcmNVcmw6ICdyZXNvdXJjZXMvbG9hZGVkLmh0bWwnLAorICBzY29wZTogJ3Jlc291cmNlcy9s
b2FkZWQuaHRtbCcsCisgIGV4cGVjdGVkOiBub3JtYWxpemVVUkwoU0NPUEUpICsgJz9uYXZpZ2F0
ZScsCisgIGZyYW1lVHlwZTogJ3RvcC1sZXZlbCcKK30pOworCithc3luYyBmdW5jdGlvbiBjcmVh
dGVGcmFtZSh0LCBwYXJhbWV0ZXJzKSB7CisgIGlmIChwYXJhbWV0ZXJzLmZyYW1lVHlwZSA9PT0g
J3RvcC1sZXZlbCcpIHsKKyAgICAvLyBXYWl0IGZvciB3aW5kb3cub3BlbiBpcyBjb21wbGV0ZWQu
CisgICAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgICBjb25zdCB3aW4gPSB3
aW5kb3cub3BlbihwYXJhbWV0ZXJzLnNyY1VybCk7CisgICAgICB0LmFkZF9jbGVhbnVwKCgpID0+
IHdpbi5jbG9zZSgpKTsKKyAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywg
KGUpID0+IHsKKyAgICAgICAgaWYgKGUuZGF0YS50eXBlID09PSAnTE9BREVEJykgeworICAgICAg
ICAgIHJlc29sdmUoKTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgfSk7CisgIH0KKworICBp
ZiAocGFyYW1ldGVycy5mcmFtZVR5cGUgPT09ICduZXN0ZWQnKSB7CisgICAgY29uc3QgZnJhbWUg
PSBhd2FpdCB3aXRoX2lmcmFtZShwYXJhbWV0ZXJzLnNyY1VybCk7CisgICAgdC5hZGRfY2xlYW51
cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CisgIH0KK30KKworZnVuY3Rpb24gbmF2aWdhdGVUZXN0
KG92ZXJyaWRlUGFyYW1ldGVycykgewogICAvLyBkZWZhdWx0IHBhcmFtZXRlcnMKLSAgdmFyIHBh
cmFtZXRlcnMgPSB7CisgIGNvbnN0IHBhcmFtZXRlcnMgPSB7CiAgICAgZGVzY3JpcHRpb246IG51
bGwsCi0gICAgc3JjX3VybDogU0NPUEUsCi0gICAgZGVzdF91cmw6IG51bGwsCisgICAgc3JjVXJs
OiBTQ09QRSwKKyAgICBkZXN0VXJsOiBudWxsLAogICAgIGV4cGVjdGVkOiBudWxsLAotICAgIHdh
aXRfc3RhdGU6ICdhY3RpdmF0ZWQnLAorICAgIHdhaXRTdGF0ZTogJ2FjdGl2YXRlZCcsCiAgICAg
c2NvcGU6IFNDT1BFLAotICAgIHNob3VsZF9iZV9yZWxvYWQ6IHRydWUKKyAgICBjb250cm9sbGVk
OiB0cnVlLAorICAgIC8vIGBmcmFtZVR5cGVgIGNhbiBiZSAnbmVzdGVkJyBmb3IgYW4gaWZyYW1l
IFdpbmRvd0NsaWVudCBvciAndG9wLWxldmVsJyBmb3IKKyAgICAvLyBhIG1haW4gZnJhbWUgV2lu
ZG93Q2xpZW50LgorICAgIGZyYW1lVHlwZTogJ25lc3RlZCcKICAgfTsKLSAgdmFyIGtleTsKIAot
ICBmb3IgKGtleSBpbiBvdmVycmlkZV9wYXJhbWV0ZXJzKQotICAgIHBhcmFtZXRlcnNba2V5XSA9
IG92ZXJyaWRlX3BhcmFtZXRlcnNba2V5XTsKKyAgZm9yIChjb25zdCBrZXkgaW4gb3ZlcnJpZGVQ
YXJhbWV0ZXJzKQorICAgIHBhcmFtZXRlcnNba2V5XSA9IG92ZXJyaWRlUGFyYW1ldGVyc1trZXld
OwogCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0ZXN0KSB7Ci0gICAgdmFyIHNlcnZpY2Vfd29y
a2VyOwotICAgIHZhciBjbGllbnRfZnJhbWU7Ci0gICAgdmFyIHJlZ2lzdHJhdGlvbjsKLSAgICB2
YXIgcGF1c2VkTGlmZWN5Y2xlUG9ydDsKLSAgICB2YXIgc2NyaXB0X3VybCA9IFNDUklQVF9VUkw7
CisgIHByb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbih0KSB7CisgICAgbGV0IHBhdXNlZExpZmVj
eWNsZVBvcnQ7CisgICAgbGV0IHNjcmlwdFVybCA9IFNDUklQVF9VUkw7CiAKICAgICAvLyBGb3Ig
aW4tc2NvcGUtYnV0LW5vdC1jb250cm9sbGVkIHRlc3Qgb24gaW5zdGFsbGluZyB3b3JrZXIsCi0g
ICAgLy8gaWYgdGhlIHdhaXRfc3RhdGUgaXMgImluc3RhbGxpbmciLCB0aGVuIGFwcGVuZCB0aGUg
cXVlcnkgdG8gc2NyaXB0X3VybC4KLSAgICBpZiAocGFyYW1ldGVycy53YWl0X3N0YXRlID09ICdp
bnN0YWxsaW5nJykgewotICAgICAgc2NyaXB0X3VybCArPSAnPycgKyBwYXJhbWV0ZXJzLndhaXRf
c3RhdGU7Ci0KLSAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmFkZEV2ZW50TGlzdGVuZXIo
J21lc3NhZ2UnLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgIGlmIChldmVudC5kYXRhLnBv
cnQpIHsKLSAgICAgICAgICAgIHBhdXNlZExpZmVjeWNsZVBvcnQgPSBldmVudC5kYXRhLnBvcnQ7
Ci0gICAgICAgICAgfQotICAgICAgICB9KTsKKyAgICAvLyBpZiB0aGUgd2FpdFN0YXRlIGlzICJp
bnN0YWxsaW5nIiwgdGhlbiBhcHBlbmQgdGhlIHF1ZXJ5IHRvIHNjcmlwdFVybC4KKyAgICBpZiAo
cGFyYW1ldGVycy53YWl0U3RhdGUgPT09ICdpbnN0YWxsaW5nJykgeworICAgICAgc2NyaXB0VXJs
ICs9ICc/JyArIHBhcmFtZXRlcnMud2FpdFN0YXRlOworCisgICAgICBuYXZpZ2F0b3Iuc2Vydmlj
ZVdvcmtlci5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgKGV2ZW50KSA9PiB7CisgICAgICAg
IGlmIChldmVudC5kYXRhLnBvcnQpIHsKKyAgICAgICAgICBwYXVzZWRMaWZlY3ljbGVQb3J0ID0g
ZXZlbnQuZGF0YS5wb3J0OworICAgICAgICB9CisgICAgICB9KTsKICAgICB9CiAKLSAgICB0ZXN0
LmFkZF9jbGVhbnVwKGZ1bmN0aW9uKCkgewotICAgICAgaWYgKGNsaWVudF9mcmFtZSAmJiBjbGll
bnRfZnJhbWUpIHsKLSAgICAgICAgY2xpZW50X2ZyYW1lLnJlbW92ZSgpOwotICAgICAgfQotCisg
ICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7CiAgICAgICAvLyBTb21lIHRlc3RzIHJlcXVpcmUgdGhh
dCB0aGUgd29ya2VyIHJlbWFpbiBpbiBhIGdpdmVuIGxpZmVjeWNsZSBwaGFzZS4KICAgICAgIC8v
ICJDbGVhbiB1cCIgbG9naWMgZm9yIHRoZXNlIHRlc3RzIHJlcXVpcmVzIHNpZ25hbGluZyB0aGUg
d29ya2VyIHRvCiAgICAgICAvLyByZWxlYXNlIHRoZSBob2xkOyB0aGlzIGFsbG93cyB0aGUgd29y
a2VyIHRvIGJlIHByb3Blcmx5IGRpc2NhcmRlZApAQCAtMTI2LDQ3ICsxNTAsNDAgQEAgZnVuY3Rp
b24gbmF2aWdhdGVfdGVzdChvdmVycmlkZV9wYXJhbWV0ZXJzKSB7CiAgICAgICAgIC8vIHNwZWNp
ZmllZCBoZXJlIHNvbGVseSB0byBhaWQgaW4gdGVzdCBkZWJ1Z2dpbmcuCiAgICAgICAgIHBhdXNl
ZExpZmVjeWNsZVBvcnQucG9zdE1lc3NhZ2UoJ2NvbnRpbnVlIGxpZmVjeWNsZScpOwogICAgICAg
fQorICAgIH0pOwogCi0gICAgICBpZiAocmVnaXN0cmF0aW9uKSB7Ci0gICAgICAgIHJldHVybiBy
ZWdpc3RyYXRpb24udW5yZWdpc3RlcigpOwotICAgICAgfQorICAgIC8vIENyZWF0ZSBhIGZyYW1l
IHRoYXQgaXMgbm90IGNvbnRyb2xsZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4KKyAgICBpZiAoIXBh
cmFtZXRlcnMuY29udHJvbGxlZCkgeworICAgICAgYXdhaXQgY3JlYXRlRnJhbWUodCwgcGFyYW1l
dGVycyk7CisgICAgfQorCisgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93
b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIoCisgICAgICAgIHQsIHNjcmlwdFVybCwgcGFy
YW1ldGVycy5zY29wZSk7CisgICAgY29uc3Qgc2VydmljZVdvcmtlciA9IHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHNlcnZpY2VXb3JrZXIsIHBh
cmFtZXRlcnMud2FpdFN0YXRlKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlv
bi51bnJlZ2lzdGVyKCkpOworCisgICAgLy8gQ3JlYXRlIGEgZnJhbWUgYWZ0ZXIgYSBzZXJ2aWNl
IHdvcmtlciBpcyByZWdpc3RlcmVkIHNvIHRoYXQgdGhlIGZybWFlIGlzCisgICAgLy8gY29udHJv
bGxlZCBieSBhbiBhY3RpdmUgc2VydmljZSB3b3JrZXIuCisgICAgaWYgKHBhcmFtZXRlcnMuY29u
dHJvbGxlZCkgeworICAgICAgYXdhaXQgY3JlYXRlRnJhbWUodCwgcGFyYW1ldGVycyk7CisgICAg
fQorCisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsK
KyAgICAgIGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAgICAgIGNoYW5u
ZWwucG9ydDEub25tZXNzYWdlID0gdC5zdGVwX2Z1bmMocmVzb2x2ZSk7CisgICAgICBzZXJ2aWNl
V29ya2VyLnBvc3RNZXNzYWdlKHsKKyAgICAgICAgcG9ydDogY2hhbm5lbC5wb3J0MiwKKyAgICAg
ICAgdXJsOiBwYXJhbWV0ZXJzLmRlc3RVcmwsCisgICAgICAgIGNsaWVudFVybDogbmV3IFVSTChw
YXJhbWV0ZXJzLnNyY1VybCwgbG9jYXRpb24pLnRvU3RyaW5nKCksCisgICAgICAgIGZyYW1lVHlw
ZTogcGFyYW1ldGVycy5mcmFtZVR5cGUsCisgICAgICAgIGV4cGVjdGVkOiBwYXJhbWV0ZXJzLmV4
cGVjdGVkLAorICAgICAgICBkZXNjcmlwdGlvbjogcGFyYW1ldGVycy5kZXNjcmlwdGlvbiwKKyAg
ICAgIH0sIFtjaGFubmVsLnBvcnQyXSk7CiAgICAgfSk7CiAKLSAgICByZXR1cm4gd2l0aF9pZnJh
bWUocGFyYW1ldGVycy5zcmNfdXJsKQotICAgICAgLnRoZW4oZnVuY3Rpb24oZnJhbWUpIHsKLSAg
ICAgICAgICBjbGllbnRfZnJhbWUgPSBmcmFtZTsKLSAgICAgICAgICByZXR1cm4gc2VydmljZV93
b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIoCi0gICAgICAgICAgICAgIHRlc3QsIHNjcmlw
dF91cmwsIHBhcmFtZXRlcnMuc2NvcGUpOwotICAgICAgICB9KQotICAgICAgLnRoZW4oZnVuY3Rp
b24ocikgewotICAgICAgICAgIHJlZ2lzdHJhdGlvbiA9IHI7Ci0gICAgICAgICAgc2VydmljZV93
b3JrZXIgPSByZWdpc3RyYXRpb24uaW5zdGFsbGluZzsKLSAgICAgICAgICByZXR1cm4gd2FpdF9m
b3Jfc3RhdGUodGVzdCwgc2VydmljZV93b3JrZXIsIHBhcmFtZXRlcnMud2FpdF9zdGF0ZSk7Ci0g
ICAgICAgIH0pCi0gICAgICAudGhlbihmdW5jdGlvbigpIHsKLSAgICAgICAgICBpZiAocGFyYW1l
dGVycy5zaG91bGRfYmVfcmVsb2FkKSB7Ci0gICAgICAgICAgICBjbGllbnRfZnJhbWUucmVtb3Zl
KCk7Ci0gICAgICAgICAgICByZXR1cm4gd2l0aF9pZnJhbWUocGFyYW1ldGVycy5zcmNfdXJsKTsK
LSAgICAgICAgICB9Ci0gICAgICAgICAgcmV0dXJuIGNsaWVudF9mcmFtZTsKLSAgICAgICAgfSkK
LSAgICAgIC50aGVuKGZ1bmN0aW9uKGZyYW1lKSB7Ci0gICAgICAgICAgY2xpZW50X2ZyYW1lID0g
ZnJhbWU7Ci0gICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsK
LSAgICAgICAgICAgICAgdmFyIGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKLSAgICAg
ICAgICAgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSB0ZXN0LnN0ZXBfZnVuYyhyZXNvbHZl
KTsKLSAgICAgICAgICAgICAgc2VydmljZV93b3JrZXIucG9zdE1lc3NhZ2UoewotICAgICAgICAg
ICAgICAgICAgcG9ydDogY2hhbm5lbC5wb3J0MiwKLSAgICAgICAgICAgICAgICAgIHVybDogcGFy
YW1ldGVycy5kZXN0X3VybCwKLSAgICAgICAgICAgICAgICAgIGV4cGVjdGVkOiBwYXJhbWV0ZXJz
LmV4cGVjdGVkLAotICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHBhcmFtZXRlcnMuZGVz
Y3JpcHRpb24sCi0gICAgICAgICAgICAgICAgfSwgW2NoYW5uZWwucG9ydDJdKTsKLSAgICAgICAg
ICAgIH0pOwotICAgICAgICB9KQotICAgICAgLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKLSAg
ICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLmRhdGEsIG51bGwpOwotICAgICAgICAgIHJl
dHVybiBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihzZXJ2aWNlX3dvcmtlcik7Ci0gICAgICAgIH0p
OworICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UuZGF0YSwgbnVsbCk7CisgICAgYXdhaXQgZmV0
Y2hfdGVzdHNfZnJvbV93b3JrZXIoc2VydmljZVdvcmtlcik7CiAgIH0sIHBhcmFtZXRlcnMuZGVz
Y3JpcHRpb24pOwogfQogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93
b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGVjMzgwYTliN2Vj
Y2Q2OWNmMWI1YWUyOTMwNjZhZTYxOWU1Mjc3NjguLmIyMDI0NGViODQ2M2FlNmIwZDM5NjlkMDcy
OTljZjM4ZTU2OWZlN2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRl
cmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtl
ci1pbnRlcmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNiBAQAogCiBGQUlM
IFZlcmlmeSBhIGRlZGljYXRlZCB3b3JrZXIgc2NyaXB0IHJlcXVlc3QgaXNzdWVkIGZyb20gYSB1
bmNvbnRyb2xsZWQgZG9jdW1lbnQgaXMgaW50ZXJjZXB0ZWQgYnkgd29ya2VyJ3Mgb3duIHNlcnZp
Y2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
dW5kZWZpbmVkCitGQUlMIFZlcmlmeSBhbiBvdXQtb2Ytc2NvcGUgZGVkaWNhdGVkIHdvcmtlciBz
Y3JpcHQgcmVxdWVzdCBpc3N1ZWQgZnJvbSBhIGNvbnRyb2xsZWQgZG9jdW1lbnQgc2hvdWxkIG5v
dCBiZSBpbnRlcmNlcHRlZCBieSBkb2N1bWVudCdzIHNlcnZpY2Ugd29ya2VyLiBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAid29ya2VyIGxvYWRpbmcgd2FzIG5vdCBpbnRlcmNlcHRlZCBieSBzZXJ2
aWNlIHdvcmtlciIgYnV0IGdvdCAid29ya2VyIGxvYWRpbmcgaW50ZXJjZXB0ZWQgYnkgc2Vydmlj
ZSB3b3JrZXIiCiBGQUlMIFZlcmlmeSBhIHNoYXJlZCB3b3JrZXIgc2NyaXB0IHJlcXVlc3QgaXNz
dWVkIGZyb20gYSB1bmNvbnRyb2xsZWQgZG9jdW1lbnQgaXMgaW50ZXJjZXB0ZWQgYnkgd29ya2Vy
J3Mgb3duIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
U2hhcmVkV29ya2VyIgogRkFJTCBWZXJpZnkgYSBzYW1lLW9yaWdpbiB3b3JrZXIgc2NyaXB0IHNl
cnZlZCBieSBhIHNlcnZpY2Ugd29ya2VyIHN1Y2NlZWRzIGluIHN0YXJ0aW5nIGEgZGVkaWNhdGVk
IHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IHVu
ZGVmaW5lZAogRkFJTCBWZXJpZnkgYSBzYW1lLW9yaWdpbiB3b3JrZXIgc2NyaXB0IHNlcnZlZCBi
eSBhIHNlcnZpY2Ugd29ya2VyIHN1Y2NlZWRzIGluIHN0YXJ0aW5nIGEgc2hhcmVkIHdvcmtlci4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVm
ZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFNoYXJlZFdvcmtlciIKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbAppbmRleCAzMDJh
MjE0YWM2MTk0MDBjMzhmNzU2NGMwNjVhNWUwYmU0N2FjNmRmLi4yZWZkZWFjZjA4NDljMjhkYjhj
ZGY0MDRiN2FiM2Y1MTgxMDhmZDZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3Jr
ZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd29ya2Vy
LWludGVyY2VwdGlvbi5odHRwcy5odG1sCkBAIC0xNyw4ICsxNyw4IEBAIGFzeW5jIGZ1bmN0aW9u
IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwgc2NvcGUpIHsKIH0K
IAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291
cmNlcy9kdW1teS1zeW50aGVzaXplZC13b3JrZXIuanM/ZGVkaWNhdGVkJzsKLSAgY29uc3Qgc2Vy
dmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMn
OworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc3ludGhlc2l6ZWQtd29y
a2VyLmpzP2RlZGljYXRlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJj
ZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2Vy
X3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91
cmwsIHNjb3BlKTsKQEAgLTMyLDggKzMyLDM1IEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsK
ICAgIGBkb2N1bWVudCBpcyBpbnRlcmNlcHRlZCBieSB3b3JrZXIncyBvd24gc2VydmljZSB3b3Jr
ZXIuYCk7CiAKIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKLSAgY29uc3Qgd29ya2VyX3VybCA9
ICdyZXNvdXJjZXMvZHVtbXktc3ludGhlc2l6ZWQtd29ya2VyLmpzP3NoYXJlZCc7Ci0gIGNvbnN0
IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktd29ya2VyLWludGVyY2VwdG9y
LmpzJzsKKyAgY29uc3QgZnJhbWVfdXJsID0gJ3Jlc291cmNlcy9jcmVhdGUtb3V0LW9mLXNjb3Bl
LXdvcmtlci5odG1sJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9z
YW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKKyAgY29uc3Qgc2NvcGUgPSBmcmFtZV91cmw7
CisKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rl
cl9hbmRfcmVnaXN0ZXIoCisgICAgICB0LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKKyAg
dC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7
CisgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0
aXZhdGVkJyk7CisKKyAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShmcmFtZV91cmwp
OworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3ZlKCkpOworCisgIGFzc2VydF9lcXVh
bHMoCisgICAgZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250
cm9sbGVyLnNjcmlwdFVSTCwKKyAgICBnZXRfbmV3ZXN0X3dvcmtlcihyZWdpc3RyYXRpb24pLnNj
cmlwdFVSTCwKKyAgICAndGhlIGZyYW1lIHNob3VsZCBiZSBjb250cm9sbGVkIGJ5IGEgc2Vydmlj
ZSB3b3JrZXInCisgICk7CisKKyAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZnJhbWUuY29udGVudFdp
bmRvdy5nZXRXb3JrZXJQcm9taXNlKCk7CisKKyAgYXNzZXJ0X2VxdWFscyhyZXN1bHQsCisgICAg
ICAgICAgICAgICAgJ3dvcmtlciBsb2FkaW5nIHdhcyBub3QgaW50ZXJjZXB0ZWQgYnkgc2Vydmlj
ZSB3b3JrZXInKTsKK30sIGBWZXJpZnkgYW4gb3V0LW9mLXNjb3BlIGRlZGljYXRlZCB3b3JrZXIg
c2NyaXB0IHJlcXVlc3QgaXNzdWVkIGZyb20gYSBgICsKKyAgIGBjb250cm9sbGVkIGRvY3VtZW50
IHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQgYnkgZG9jdW1lbnQncyBzZXJ2aWNlIGAgKworICAg
YHdvcmtlci5gKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCB3b3JrZXJf
dXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc3ludGhlc2l6ZWQtd29ya2VyLmpzP3NoYXJlZCc7Cisg
IGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRl
cmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1
cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAgLTQ3LDgg
Kzc0LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgYGRvY3VtZW50IGlzIGludGVy
Y2VwdGVkIGJ5IHdvcmtlcidzIG93biBzZXJ2aWNlIHdvcmtlci5gKTsKIAogcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1zYW1l
LW9yaWdpbi13b3JrZXIuanM/ZGVkaWNhdGVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJs
ID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3Jr
ZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc2FtZS1vcmlnaW4td29ya2VyLmpzP2RlZGljYXRl
ZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtl
ci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBhd2Fp
dCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAg
LTYyLDggKzg5LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgJ2luIHN0YXJ0aW5n
IGEgZGVkaWNhdGVkIHdvcmtlci4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBj
b25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1zYW1lLW9yaWdpbi13b3JrZXIuanM/
c2hhcmVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13
b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9z
YW1wbGUtc2FtZS1vcmlnaW4td29ya2VyLmpzP3NoYXJlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29y
a2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNv
bnN0IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0
LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAgLTc3LDggKzEwNCw4IEBAIHByb21pc2Vf
dGVzdChhc3luYyB0ID0+IHsKICAgICdpbiBzdGFydGluZyBhIHNoYXJlZCB3b3JrZXIuJyk7CiAK
IHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKLSAgY29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJj
ZXMvZHVtbXktY29ycy13b3JrZXIuanM/ZGVkaWNhdGVkJzsKLSAgY29uc3Qgc2VydmljZV93b3Jr
ZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25z
dCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtY29ycy13b3JrZXIuanM/ZGVkaWNhdGVk
JzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2Vy
LWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJfdXJsOwogCiAgIGF3YWl0
IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwgc2NvcGUpOwpAQCAt
ODksOCArMTE2LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgJ3dvcmtlciBzdGFy
dC4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0g
J3Jlc291cmNlcy9kdW1teS1jb3JzLXdvcmtlci5qcz9zaGFyZWQnOwotICBjb25zdCBzZXJ2aWNl
X3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7Cisg
IGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1jb3JzLXdvcmtlci5qcz9zaGFy
ZWQnOworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS13b3Jr
ZXItaW50ZXJjZXB0b3IuanMnOwogICBjb25zdCBzY29wZSA9IHdvcmtlcl91cmw7CiAKICAgYXdh
aXQgc2V0dXBfc2VydmljZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJfdXJsLCBzY29wZSk7CkBA
IC0xMDEsOCArMTI4LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgJ3dvcmtlciBz
dGFydC4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJs
ID0gJ3Jlc291cmNlcy9kdW1teS1uby1jb3JzLXdvcmtlci5qcz9kZWRpY2F0ZWQnOwotICBjb25z
dCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRv
ci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1uby1jb3JzLXdv
cmtlci5qcz9kZWRpY2F0ZWQnOworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3Vy
Y2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3IuanMnOwogICBjb25zdCBzY29wZSA9IHdvcmtl
cl91cmw7CiAKICAgYXdhaXQgc2V0dXBfc2VydmljZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJf
dXJsLCBzY29wZSk7CkBAIC0xMTMsOCArMTQwLDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4g
ewogICAgJ2ZhaWxzIGRlZGljYXRlZCB3b3JrZXIgc3RhcnQuJyk7CiAKIHByb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKLSAgY29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktbm8tY29y
cy13b3JrZXIuanM/c2hhcmVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291
cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3JrZXJfdXJsID0g
J3Jlc291cmNlcy9zYW1wbGUtbm8tY29ycy13b3JrZXIuanM/c2hhcmVkJzsKKyAgY29uc3Qgc2Vy
dmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpz
JzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJfdXJsOwogCiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vf
d29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwgc2NvcGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xMzI2YmZlNWM4MGVjYTY2ODViNTg4OGE1NzRmOTdhMjdkOTVm
NDE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVu
Z3RoLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACisKK1BBU1MgU2V0
dXAKK1BBU1MgU3ludGhldGljIHJlc3BvbnNlIHdpdGhvdXQgQ29udGVudC1MZW5ndGggaGVhZGVy
CitGQUlMIFN5bnRoZXRpYyByZXNwb25zZSB3aXRoIENvbnRlbnQtTGVuZ3RoIGhlYWRlciB3aXRo
IHZhbHVlIGxhcmdlciB0aGFuIHJlc3BvbnNlIGJvZHkgbGVuZ3RoIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0aCB0d28gQ29u
dGVudC1MZW5ndGggaGVhZGVycyB2YWx1ZSBsYXJnZXIgdGhhbiByZXNwb25zZSBib2R5IGxlbmd0
aCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgU3ludGhldGljIHJl
c3BvbnNlIHdpdGggYm9ndXMgQ29udGVudC1MZW5ndGggaGVhZGVyCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndp
bmRvdy5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBX
ZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94
aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFhZTMyMGU5YzNj
NTcxM2EyZDQ3MjkxZDgzYmE3ZDcyZGMwM2MxNTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93LmpzCkBAIC0wLDAgKzEs
NTUgQEAKKy8vIE1FVEE6IHNjcmlwdD1yZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcworCits
ZXQgZnJhbWU7CisKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICBjb25zdCBzY29wZSA9
ICJyZXNvdXJjZXMvZW1wdHkuaHRtbCI7CisgIGNvbnN0IHNjcmlwdCA9ICJyZXNvdXJjZXMveGhy
LWNvbnRlbnQtbGVuZ3RoLXdvcmtlci5qcyI7CisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0
IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2NvcGUp
OworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgImFj
dGl2YXRlZCIpOworICBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKK30sICJTZXR1
cCIpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHhociA9IG5ldyBmcmFt
ZS5jb250ZW50V2luZG93LlhNTEh0dHBSZXF1ZXN0KCk7CisgIHhoci5vcGVuKCJHRVQiLCAidGVz
dD90eXBlPW5vLWNvbnRlbnQtbGVuZ3RoIik7CisgIHhoci5zZW5kKCk7CisgIGNvbnN0IGV2ZW50
ID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB4aHIub25sb2FkID0gcmVzb2x2ZSk7Cisg
IGFzc2VydF9lcXVhbHMoeGhyLmdldFJlc3BvbnNlSGVhZGVyKCJjb250ZW50LWxlbmd0aCIpLCBu
dWxsKTsKKyAgYXNzZXJ0X2ZhbHNlKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUpOworICBhc3NlcnRf
ZXF1YWxzKGV2ZW50LnRvdGFsLCAwKTsKKyAgYXNzZXJ0X2VxdWFscyhldmVudC5sb2FkZWQsIHho
ci5yZXNwb25zZVRleHQubGVuZ3RoKTsKK30sIGBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0aG91dCBD
b250ZW50LUxlbmd0aCBoZWFkZXJgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBj
b25zdCB4aHIgPSBuZXcgZnJhbWUuY29udGVudFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICB4
aHIub3BlbigiR0VUIiwgInRlc3Q/dHlwZT1sYXJnZXItY29udGVudC1sZW5ndGgiKTsKKyAgeGhy
LnNlbmQoKTsKKyAgY29uc3QgZXZlbnQgPSBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHho
ci5vbmxvYWQgPSByZXNvbHZlKTsKKyAgYXNzZXJ0X2VxdWFscyh4aHIuZ2V0UmVzcG9uc2VIZWFk
ZXIoImNvbnRlbnQtbGVuZ3RoIiksICIxMDAwMCIpOworICBhc3NlcnRfdHJ1ZShldmVudC5sZW5n
dGhDb21wdXRhYmxlKTsKKyAgYXNzZXJ0X2VxdWFscyhldmVudC50b3RhbCwgMTAwMDApOworICBh
c3NlcnRfZXF1YWxzKGV2ZW50LmxvYWRlZCwgeGhyLnJlc3BvbnNlVGV4dC5sZW5ndGgpOworfSwg
YFN5bnRoZXRpYyByZXNwb25zZSB3aXRoIENvbnRlbnQtTGVuZ3RoIGhlYWRlciB3aXRoIHZhbHVl
IGxhcmdlciB0aGFuIHJlc3BvbnNlIGJvZHkgbGVuZ3RoYCk7CisKK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgY29uc3QgeGhyID0gbmV3IGZyYW1lLmNvbnRlbnRXaW5kb3cuWE1MSHR0cFJl
cXVlc3QoKTsKKyAgeGhyLm9wZW4oIkdFVCIsICJ0ZXN0P3R5cGU9ZG91YmxlLWNvbnRlbnQtbGVu
Z3RoIik7CisgIHhoci5zZW5kKCk7CisgIGNvbnN0IGV2ZW50ID0gYXdhaXQgbmV3IFByb21pc2Uo
cmVzb2x2ZSA9PiB4aHIub25sb2FkID0gcmVzb2x2ZSk7CisgIGFzc2VydF9lcXVhbHMoeGhyLmdl
dFJlc3BvbnNlSGVhZGVyKCJjb250ZW50LWxlbmd0aCIpLCAiMTAwMDAsIDEwMDAwIik7CisgIGFz
c2VydF90cnVlKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUpOworICBhc3NlcnRfZXF1YWxzKGV2ZW50
LnRvdGFsLCAxMDAwMCk7CisgIGFzc2VydF9lcXVhbHMoZXZlbnQubG9hZGVkLCB4aHIucmVzcG9u
c2VUZXh0Lmxlbmd0aCk7Cit9LCBgU3ludGhldGljIHJlc3BvbnNlIHdpdGggdHdvIENvbnRlbnQt
TGVuZ3RoIGhlYWRlcnMgdmFsdWUgbGFyZ2VyIHRoYW4gcmVzcG9uc2UgYm9keSBsZW5ndGhgKTsK
KworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29u
dGVudFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICB4aHIub3BlbigiR0VUIiwgInRlc3Q/dHlw
ZT1ib2d1cy1jb250ZW50LWxlbmd0aCIpOworICB4aHIuc2VuZCgpOworICBjb25zdCBldmVudCA9
IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geGhyLm9ubG9hZCA9IHJlc29sdmUpOworICBh
c3NlcnRfZXF1YWxzKHhoci5nZXRSZXNwb25zZUhlYWRlcigiY29udGVudC1sZW5ndGgiKSwgInRl
c3QiKTsKKyAgYXNzZXJ0X2ZhbHNlKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUpOworICBhc3NlcnRf
ZXF1YWxzKGV2ZW50LnRvdGFsLCAwKTsKKyAgYXNzZXJ0X2VxdWFscyhldmVudC5sb2FkZWQsIHho
ci5yZXNwb25zZVRleHQubGVuZ3RoKTsKK30sIGBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0aCBib2d1
cyBDb250ZW50LUxlbmd0aCBoZWFkZXJgKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3hoci1yZXNwb25zZS11cmwuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1yZXNw
b25zZS11cmwuaHR0cHMuaHRtbAppbmRleCAxYWQyY2UzODUxY2M3YmNlMjQxMjBkZDgwYmRmNTQ2
NjI3ODFhYzY2Li42NzNjYTUyY2M2NzQ1MGY4YjI5NmVhNTBmN2FjNGM0ZmVlMzEwNjAyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItcmVzcG9uc2UtdXJsLmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIveGhyLXJlc3BvbnNlLXVybC5odHRwcy5odG1sCkBAIC0zMCw3
ICszMCw3IEBAIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogLy8gd29ya2VyLgogcHJvbWlz
ZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIC8vIEJ1aWxkIGEgVVJMIHRoYXQgdGVsbHMgdGhlIHNl
cnZpY2Ugd29ya2VyIHRvIHJlc3BvbmRXaXRoKGZldGNoKHx0YXJnZXR8KSkuCi0gIGNvbnN0IHRh
cmdldCA9IG5ldyBVUkwoJ3Jlc291cmNlcy9kdW1teS50eHQnLCB3aW5kb3cubG9jYXRpb24pOwor
ICBjb25zdCB0YXJnZXQgPSBuZXcgVVJMKCdyZXNvdXJjZXMvc2FtcGxlLnR4dCcsIHdpbmRvdy5s
b2NhdGlvbik7CiAgIGNvbnN0IHVybCA9IGJ1aWxkX3VybCh7CiAgICAgcmVzcG9uZFdpdGg6ICdm
ZXRjaCcsCiAgICAgdXJsOiB0YXJnZXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Rlc3RzLW9w
dGlvbnMuanNvbiBiL0xheW91dFRlc3RzL3Rlc3RzLW9wdGlvbnMuanNvbgppbmRleCAzNTMzMzYy
NzU3NWZkNTQ1NTlkOGRlODM4YTNhMTk4YTFmMDM1NGQ5Li5jMThiNmRjYzZiMGQwMjQ5ODIwYjQ5
MjhmYjk2NzUzYzczOWI0NjBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy90ZXN0cy1vcHRpb25z
Lmpzb24KKysrIGIvTGF5b3V0VGVzdHMvdGVzdHMtb3B0aW9ucy5qc29uCkBAIC0yODQ5LDYgKzI4
NDksMTIgQEAKICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvYWN0aXZhdGlvbi5odHRwcy5odG1sIjogWwogICAgICAgICAi
c2xvdyIKICAgICBdLAorICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS1mZXRjaC5odHRwcy5odG1sIjogWworICAg
ICAgICAic2xvdyIKKyAgICBdLAorICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRt
bCI6IFsKKyAgICAgICAgInNsb3ciCisgICAgXSwKICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFs
bC1vcmRlci5odHRwcy5odG1sIjogWwogICAgICAgICAic2xvdyIKICAgICBdLApAQCAtMjkxNSw2
ICsyOTIxLDkgQEAKICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLW1pbWUtdHlwZXMuaHR0cHMuaHRt
bCI6IFsKICAgICAgICAgInNsb3ciCiAgICAgXSwKKyAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNj
aGVkdWxlLWpvYi5odHRwcy5odG1sIjogWworICAgICAgICAic2xvdyIKKyAgICBdLAogICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZWdpc3RyYXRpb24tdXBkYXRldmlhY2FjaGUuaHR0cHMuaHRtbCI6IFsKICAgICAgICAg
InNsb3ciCiAgICAgXSwKQEAgLTI5MzMsOSArMjk0MiwxNSBAQAogICAgICJpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUt
YWZ0ZXItbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1sIjogWwogICAgICAgICAic2xvdyIK
ICAgICBdLAorICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0dHBzLmh0
bWwiOiBbCisgICAgICAgICJzbG93IgorICAgIF0sCiAgICAgImltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hl
Y2suaHR0cHMuaHRtbCI6IFsKICAgICAgICAgInNsb3ciCiAgICAgXSwKKyAgICAiaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBk
YXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMuaHRtbCI6IFsKKyAgICAgICAgInNsb3ciCisg
ICAgXSwKICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLmh0dHBzLmh0bWwiOiBbCiAgICAgICAgICJzbG93Igog
ICAgIF0sCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432508</attachid>
            <date>2021-06-29 12:05:15 -0700</date>
            <delta_ts>2021-06-29 12:39:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227490-20210629120514.patch</filename>
            <type>text/plain</type>
            <size>333313</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5Mzc0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmJlYTU5YTc1YzY3MzEyYWE2N2Ji
YTYzODUzYWVkYjIxNDk0NTI1Yy4uNzFlNDFkNWFiNTI1YzU3YWRiZGQyZWY2OTVmZjA3ZGUzMGMy
MzcxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA2LTI5ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIHNlcnZpY2Utd29ya2VyIFdQVCB0ZXN0
cyBmcm9tIHVwc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjc0OTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogdGVzdHMtb3B0aW9ucy5qc29u
OgorCiAyMDIxLTA2LTI5ICBZb3NoaWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FA
c29ueS5jb20+CiAKICAgICAgICAgUC0zODQgRUMgcHVibGljIEpXSyBrZXkgaW4gbGF5b3V0IHRl
c3RzIGlzIHdyb25nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA3NTlmZmNmYTll
ZmJiMmM5ZjY3ZjU4ZjQ0ZTM2MDIzNDI1ODAyMDU5Li43NjYzYTZmMzFhYzc1Njc5YTEyZGNhMDY2
ZDU0YmQyM2EzY2MyY2I3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAyMS0wNi0yOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisg
ICAgICAgIFJlc3luYyBzZXJ2aWNlLXdvcmtlciBXUFQgdGVzdHMgZnJvbSB1cHN0cmVhbQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NDkwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzeW5jIHNlcnZp
Y2Utd29ya2VyIFdQVCB0ZXN0cyBmcm9tIHVwc3RyZWFtIGEzODYxMmYzOWU3NzUyYzM1MzIwOC4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvKjogVXBkYXRl
ZC4KKwogMjAyMS0wNi0yOSAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+
CiAKICAgICAgICAgQ1NTIHNjcm9sbCBzbmFwIHNob3VsZCBhbGxvdyBzY3JvbGxpbmcgdG8gdGhl
IG1pZGRsZSBvZiBzbmFwIGFyZWFzIHRoYXQgb3ZlcmZsb3cgdGhlIHNuYXBwb3J0CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCAyOWY0NDdhZjI2NGEzNGQwYmI1OTFjZTJmMDAzODgwMWJmYzE2NzI0Li5j
MDhhYzM1Yjg4ZmVkZTgxYTBiZDE5N2U2YmZiNWI0NmEyNmZlYWZjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTMxNiw3ICszMTYsMTAgQEAgd2Via2l0Lm9yZy9iLzIwMTY2NSBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmsKIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL211
bHRpcGFydC1pbWFnZS5odHRwcy5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW4tc2FuZGJv
eGVkLWlmcmFtZS1ieS1jc3AtZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtd29ya2VyLXRpbWluZy1mcmFtZS50ZW50YXRpdmUuaHR0cHMuaHRtbCBbIFNr
aXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLmh0bWwgWyBTa2lwIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsaWVudC1uYXZpZ2F0ZS5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXN0ZWQtYmxvYi11
cmwtd29ya2Vycy5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNv
cnMtaW1wb3J0Lmh0dHBzLmh0bWwgWyBTa2lwIF0KIAogIyBUaGVlIHRlc3RzIGFyZSBjcmFzaGlu
ZyBpbiBEZWJ1ZyAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzMx
MCkKIFsgRGVidWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
cmVkZW50aWFscy9hdXRoZW50aWNhdGlvbi1iYXNpYy5hbnkuaHRtbCBbIFNraXAgXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jlc291cmNlcy9yZXNvdXJjZS1maWxlcy5q
c29uIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jlc291cmNlcy9yZXNvdXJjZS1maWxlcy5q
c29uCmluZGV4IGZlYTNiOTIzOGYwMzg5ZmRhOGRlY2Q1MDMzNGU5YjE3NTcyMzEwOWUuLjMyYTcz
MGViMzRiZmIzODUwMzk4MzU1YmM4YTg1NjU4OTU2MWY1OWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvcmVzb3VyY2UtZmlsZXMuanNvbgorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvcmVzb3VyY2VzL3Jlc291cmNlLWZpbGVzLmpzb24KQEAgLTI2
NzUsNiArMjY3NSw3IEBACiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL211bHRpLWdsb2JhbHMvY3VycmVudC9jdXJyZW50Lmh0dHBzLmh0
bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9tdWx0aS1nbG9iYWxzL2luY3VtYmVudC9pbmN1bWJlbnQuaHR0cHMuaHRtbCIsCiAg
ICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L211bHRpLWdsb2JhbHMvcmVsZXZhbnQvcmVsZXZhbnQuaHR0cHMuaHRtbCIsCisgICAgICAgICJp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9zdmctdGFyZ2V0LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwiLAogICAgICAgICAid2ViLXBs
YXRmb3JtLXRlc3RzL3NoYWRvdy1kb20vZGVjbGFyYXRpdmUvc3VwcG9ydC9kZWNsYXJhdGl2ZS1j
aGlsZC1mcmFtZS5odG1sIiwKICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9zaGFkb3ctZG9t
L2V2ZW50LW9uLXBzZXVkby1lbGVtZW50LWNyYXNoLmh0bWwiLAogICAgICAgICAid2ViLXBsYXRm
b3JtLXRlc3RzL3NoYWRvdy1kb20vaW1wZXJhdGl2ZS1zbG90LWFwaS1jcmFzaC5odG1sIiwKQEAg
LTI3NzQsNCArMjc3NSw0IEBACiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMveGhyL3htbGh0
dHByZXF1ZXN0LXN5bmMtYmxvY2stZGVmZXItc2NyaXB0cy1zdWJmcmFtZS5odG1sIiwKICAgICAg
ICAgIndlYi1wbGF0Zm9ybS10ZXN0cy94aHIveG1saHR0cHJlcXVlc3Qtc3luYy1ub3QtaGFuZy1z
Y3JpcHRsb2FkZXItc3ViZnJhbWUuaHRtbCIKICAgICBdCi19ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQorfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9yZXNvdXJjZXMvdmFyeS5w
eSBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2UvcmVzb3VyY2VzL3ZhcnkucHkKaW5kZXggZTdhOTE0ZWNhODI3
NjMxYThiYzc4NzgxMTJjNmI2ZGU4N2U3Y2U5MS4uN2ZkZTFiMTA5NGVkNGNlNDAxOGYxNzY4OGU1
NWQzYmUwNmZmZjk5MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9yZXNvdXJjZXMvdmFy
eS5weQorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Jlc291cmNlcy92YXJ5LnB5CkBAIC0xLDUgKzEs
MyBAQAotZnJvbSBzaXggaW1wb3J0IHRleHRfdHlwZQotCiBkZWYgbWFpbihyZXF1ZXN0LCByZXNw
b25zZSk6CiAgIGlmIGIiY2xlYXItdmFyeS12YWx1ZS1vdmVycmlkZS1jb29raWUiIGluIHJlcXVl
c3QuR0VUOgogICAgIHJlc3BvbnNlLnVuc2V0X2Nvb2tpZShiInZhcnktdmFsdWUtb3ZlcnJpZGUi
KQpAQCAtMTUsOSArMTMsOSBAQCBkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CiAgICMgZm9y
IHRoZSBWQVJZIGhlYWRlciBubyBtYXR0ZXIgd2hhdCB0aGUgcXVlcnkgc3RyaW5nIGlzIHNldCB0
by4gIFRoaXMKICAgIyBvdmVycmlkZSBpcyBuZWNlc3NhcnkgdG8gdGVzdCB0aGUgY2FzZSB3aGVu
IHR3byBVUkxzIGFyZSBpZGVudGljYWwKICAgIyAoaW5jbHVkaW5nIHF1ZXJ5KSwgYnV0IGRpZmZl
ciBieSBWQVJZIGhlYWRlci4KLSAgY29va2llX3ZhcnkgPSByZXF1ZXN0LmNvb2tpZXMuZ2V0KGIi
dmFyeS12YWx1ZS1vdmVycmlkZSIpOworICBjb29raWVfdmFyeSA9IHJlcXVlc3QuY29va2llcy5n
ZXQoYiJ2YXJ5LXZhbHVlLW92ZXJyaWRlIikKICAgaWYgY29va2llX3Zhcnk6Ci0gICAgcmVzcG9u
c2UuaGVhZGVycy5zZXQoYiJ2YXJ5IiwgdGV4dF90eXBlKGNvb2tpZV92YXJ5KSkKKyAgICByZXNw
b25zZS5oZWFkZXJzLnNldChiInZhcnkiLCBzdHIoY29va2llX3ZhcnkpKQogICBlbHNlOgogICAg
ICMgSWYgdGhlcmUgaXMgbm8gY29va2llLCB0aGVuIHVzZSB0aGUgcXVlcnkgc3RyaW5nIHZhbHVl
LCBpZiBwcmVzZW50LgogICAgIHF1ZXJ5X3ZhcnkgPSByZXF1ZXN0LkdFVC5maXJzdChiInZhcnki
LCBkZWZhdWx0PWIiIikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3Rz
L2NhY2hlLWFkZC5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3RzL2NhY2hlLWFkZC5q
cwppbmRleCBmMTYxNzEwOWNmYTEzODVhMmVhYjhkMzg5ZTE5ZTk4ZmYwMDk3MGY3Li42MmI0NGM3
ODgwMTY4YjU3NjI3ODVlZDlmNzVjMmRmYTE2N2Y5NDAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNoZS1hZGQuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9z
Y3JpcHQtdGVzdHMvY2FjaGUtYWRkLmpzCkBAIC0xLDggKzEsMTEgQEAKIGlmIChzZWxmLmltcG9y
dFNjcmlwdHMpIHsKICAgICBpbXBvcnRTY3JpcHRzKCcvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpz
Jyk7CisgICAgaW1wb3J0U2NyaXB0cygnL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcycpOwog
ICAgIGltcG9ydFNjcmlwdHMoJy4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuanMnKTsKIH0KIAor
Y29uc3QgeyBSRU1PVEVfSE9TVCB9ID0gZ2V0X2hvc3RfaW5mbygpOworCiBjYWNoZV90ZXN0KGZ1
bmN0aW9uKGNhY2hlLCB0ZXN0KSB7CiAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKICAg
ICAgIHRlc3QsCkBAIC0xMDQsNiArMTA3LDIxIEBAIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUs
IHRlc3QpIHsKICAgICAgICdDYWNoZS5hZGRBbGwgc2hvdWxkIHJlamVjdCB3aXRoIFR5cGVFcnJv
ciBpZiBhbnkgcmVxdWVzdCBmYWlscycpOwogICB9LCAnQ2FjaGUuYWRkQWxsIHdpdGggMjA2IHJl
c3BvbnNlJyk7CiAKK2NhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUsIHRlc3QpIHsKKyAgICB2YXIg
dXJscyA9IFsnLi4vcmVzb3VyY2VzL2ZldGNoLXN0YXR1cy5weT9zdGF0dXM9MjA2JywKKyAgICAg
ICAgICAgICAgICAnLi4vcmVzb3VyY2VzL2ZldGNoLXN0YXR1cy5weT9zdGF0dXM9MjAwJ107Cisg
ICAgdmFyIHJlcXVlc3RzID0gdXJscy5tYXAoZnVuY3Rpb24odXJsKSB7CisgICAgICAgIHZhciBj
cm9zc19vcmlnaW5fdXJsID0gbmV3IFVSTCh1cmwsIGxvY2F0aW9uLmhyZWYpOworICAgICAgICBj
cm9zc19vcmlnaW5fdXJsLmhvc3RuYW1lID0gUkVNT1RFX0hPU1Q7CisgICAgICAgIHJldHVybiBu
ZXcgUmVxdWVzdChjcm9zc19vcmlnaW5fdXJsLmhyZWYsIHsgbW9kZTogJ25vLWNvcnMnIH0pOwor
ICAgICAgfSk7CisgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgIHRlc3QsCisg
ICAgICBUeXBlRXJyb3IsCisgICAgICBjYWNoZS5hZGRBbGwocmVxdWVzdHMpLAorICAgICAgJ0Nh
Y2hlLmFkZEFsbCBzaG91bGQgcmVqZWN0IHdpdGggVHlwZUVycm9yIGlmIGFueSByZXF1ZXN0IGZh
aWxzJyk7CisgIH0sICdDYWNoZS5hZGRBbGwgd2l0aCBvcGFxdWUtZmlsdGVyZWQgMjA2IHJlc3Bv
bnNlJyk7CisKIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUsIHRlc3QpIHsKICAgICByZXR1cm4g
cHJvbWlzZV9yZWplY3RzX2pzKAogICAgICAgdGVzdCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvc2NyaXB0LXRlc3RzL2NhY2hlLW1hdGNoLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3Jp
cHQtdGVzdHMvY2FjaGUtbWF0Y2guanMKaW5kZXggOGJmN2ZkYTMwOTY3ZmJiNGVkMjUzMjVkNDll
MGNkOTlmYzE2ZGY1NS4uNjBjMGRkMGEwMmYyMGUxZDRmYTdkMzBhNGQwYTU5Njg1MDdhY2EwMyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtbWF0Y2guanMK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtbWF0Y2guanMKQEAgLTM4
MSw2ICszODEsNyBAQCBjYWNoZV90ZXN0KGFzeW5jIChjYWNoZSkgPT4gewogY2FjaGVfdGVzdChh
c3luYyAoY2FjaGUpID0+IHsKICAgICBjb25zdCB1cmwgPSAnL2R1bW15JzsKICAgICBjb25zdCBv
cmlnaW5hbF90eXBlID0gJ3RleHQvaHRtbCc7CisgICAgY29uc3Qgb3ZlcnJpZGVfdHlwZSA9ICd0
ZXh0L3BsYWluJzsKICAgICBjb25zdCBpbml0X3dpdGhfaGVhZGVycyA9IHsKICAgICAgIGhlYWRl
cnM6IHsKICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6IG9yaWdpbmFsX3R5cGUKQEAgLTM5NCwyNCAr
Mzk1LDIyIEBAIGNhY2hlX3Rlc3QoYXN5bmMgKGNhY2hlKSA9PiB7CiAgICAgYXNzZXJ0X3RydWUo
b3JpZ2luYWxfcmVzcG9uc2VfdHlwZS5pbmNsdWRlcyhvcmlnaW5hbF90eXBlKSwKICAgICAgICAg
ICAgICAgICAnb3JpZ2luYWwgcmVzcG9uc2Ugc2hvdWxkIGluY2x1ZGUgdGhlIGV4cGVjdGVkIG1p
bWUgdHlwZScpOwogCi0gICAgLy8gVmVyaWZ5IG92ZXJ3cml0aW5nIHRoZSBjb250ZW50LXR5cGUg
aGVhZGVyIGRvZXMgbm90IGNoYW5nZSB0aGUgbWltZQotICAgIC8vIHR5cGUuICBJdCBzaG91bGQg
YmUgZml4ZWQgYXQgUmVzcG9uc2UgY29uc3RydWN0aW9uIHRpbWUuCisgICAgLy8gVmVyaWZ5IG92
ZXJ3cml0aW5nIHRoZSBjb250ZW50LXR5cGUgaGVhZGVyIGNoYW5nZXMgdGhlIG1pbWUgdHlwZS4K
ICAgICBjb25zdCBvdmVyd3JpdHRlbl9yZXNwb25zZSA9IG5ldyBSZXNwb25zZSgnaGVsbG8gd29y
bGQnLCBpbml0X3dpdGhfaGVhZGVycyk7Ci0gICAgb3ZlcndyaXR0ZW5fcmVzcG9uc2UuaGVhZGVy
cy5zZXQoJ2NvbnRlbnQtdHlwZScsICd0ZXh0L3BsYWluJyk7CisgICAgb3ZlcndyaXR0ZW5fcmVz
cG9uc2UuaGVhZGVycy5zZXQoJ2NvbnRlbnQtdHlwZScsIG92ZXJyaWRlX3R5cGUpOwogICAgIGNv
bnN0IG92ZXJ3cml0dGVuX3Jlc3BvbnNlX3R5cGUgPSAoYXdhaXQgb3ZlcndyaXR0ZW5fcmVzcG9u
c2UuYmxvYigpKS50eXBlOwotICAgIGFzc2VydF9lcXVhbHMob3ZlcndyaXR0ZW5fcmVzcG9uc2Vf
dHlwZSwgb3JpZ2luYWxfcmVzcG9uc2VfdHlwZSwKLSAgICAgICAgICAgICAgICAgICdvcmlnaW5h
bCBhbmQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2gnKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKG92ZXJ3cml0dGVuX3Jlc3BvbnNlX3R5cGUsIG92ZXJyaWRlX3R5cGUs
CisgICAgICAgICAgICAgICAgICAnbWltZSB0eXBlIGNhbiBiZSBvdmVycmlkZGVuJyk7CiAKICAg
ICAvLyBWZXJpZnkgdGhlIFJlc3BvbnNlIHJlYWQgZnJvbSBDYWNoZSB1c2VzIHRoZSBvcmlnaW5h
bCBtaW1lIHR5cGUKICAgICAvLyBjb21wdXRlZCB3aGVuIGl0IHdhcyBmaXJzdCBjb25zdHJ1Y3Rl
ZC4KICAgICBjb25zdCB0bXAgPSBuZXcgUmVzcG9uc2UoJ2hlbGxvIHdvcmxkJywgaW5pdF93aXRo
X2hlYWRlcnMpOwotICAgIHRtcC5oZWFkZXJzLnNldCgnY29udGVudC10eXBlJywgJ3RleHQvcGxh
aW4nKTsKKyAgICB0bXAuaGVhZGVycy5zZXQoJ2NvbnRlbnQtdHlwZScsIG92ZXJyaWRlX3R5cGUp
OwogICAgIGF3YWl0IGNhY2hlLnB1dCh1cmwsIHRtcCk7CiAgICAgY29uc3QgY2FjaGVfcmVzcG9u
c2UgPSBhd2FpdCBjYWNoZS5tYXRjaCh1cmwpOwogICAgIGNvbnN0IGNhY2hlX21pbWVfdHlwZSA9
IChhd2FpdCBjYWNoZV9yZXNwb25zZS5ibG9iKCkpLnR5cGU7Ci0gICAgYXNzZXJ0X2VxdWFscyhj
YWNoZV9taW1lX3R5cGUsIG9yaWdpbmFsX3Jlc3BvbnNlX3R5cGUsCi0gICAgICAgICAgICAgICAg
ICAnb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzICcg
KwotICAgICAgICAgICAgICAgICAgJ3Nob3VsZCBtYXRjaCcpOwotICB9LCAnTUlNRSB0eXBlIHNo
b3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLicpOworICAgIGFzc2VydF9l
cXVhbHMoY2FjaGVfbWltZV90eXBlLCBvdmVycmlkZV90eXBlLAorICAgICAgICAgICAgICAgICAg
J292ZXJ3cml0dGVuIGFuZCBjYWNoZWQgcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2gn
KTsKKyAgfSwgJ01JTUUgdHlwZSBzaG91bGQgcmVmbGVjdCBDb250ZW50LVR5cGUgaGVhZGVycyBv
ZiByZXNwb25zZS4nKTsKIAogZG9uZSgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9z
Y3JpcHQtdGVzdHMvY2FjaGUtcHV0LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMv
Y2FjaGUtcHV0LmpzCmluZGV4IDQ0YmE1NjVkODZjYTA1ZWRiZjYyNTU5ZjI2MmE2NGUwZGE3NWY5
NmIuLmI0NTkxMGEzYjhiYTA4OWUxNzI0ZWZhOGI5ZThhOGQ2NzljNTkzMjAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0LXRlc3RzL2NhY2hlLXB1dC5qcworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNo
ZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNoZS1wdXQuanMKQEAgLTEsMTAgKzEsMTIgQEAKIGlm
IChzZWxmLmltcG9ydFNjcmlwdHMpIHsKICAgICBpbXBvcnRTY3JpcHRzKCcvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzJyk7CisgICAgaW1wb3J0U2NyaXB0cygnL2NvbW1vbi9nZXQtaG9zdC1pbmZv
LnN1Yi5qcycpOwogICAgIGltcG9ydFNjcmlwdHMoJy4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMu
anMnKTsKIH0KIAogdmFyIHRlc3RfdXJsID0gJ2h0dHBzOi8vZXhhbXBsZS5jb20vZm9vJzsKIHZh
ciB0ZXN0X2JvZHkgPSAnSGVsbG8gd29ybGQhJzsKK2NvbnN0IHsgUkVNT1RFX0hPU1QgfSA9IGdl
dF9ob3N0X2luZm8oKTsKIAogY2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSkgewogICAgIHZhciBy
ZXF1ZXN0ID0gbmV3IFJlcXVlc3QodGVzdF91cmwpOwpAQCAtMTI5LDYgKzEzMSwyMyBAQCBjYWNo
ZV90ZXN0KGZ1bmN0aW9uKGNhY2hlLCB0ZXN0KSB7CiAgICAgICAgIH0pOwogICB9LCAnQ2FjaGUu
cHV0IHdpdGggSFRUUCAyMDYgcmVzcG9uc2UnKTsKIAorY2FjaGVfdGVzdChmdW5jdGlvbihjYWNo
ZSwgdGVzdCkgeworICAgIHZhciB0ZXN0X3VybCA9IG5ldyBVUkwoJy4uL3Jlc291cmNlcy9mZXRj
aC1zdGF0dXMucHk/c3RhdHVzPTIwNicsIGxvY2F0aW9uLmhyZWYpOworICAgIHRlc3RfdXJsLmhv
c3RuYW1lID0gUkVNT1RFX0hPU1Q7CisgICAgdmFyIHJlcXVlc3QgPSBuZXcgUmVxdWVzdCh0ZXN0
X3VybC5ocmVmLCB7IG1vZGU6ICduby1jb3JzJyB9KTsKKyAgICB2YXIgcmVzcG9uc2U7CisgICAg
cmV0dXJuIGZldGNoKHJlcXVlc3QpCisgICAgICAudGhlbihmdW5jdGlvbihmZXRjaF9yZXN1bHQp
IHsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGZldGNoX3Jlc3VsdC50eXBlLCAnb3BhcXVlJywK
KyAgICAgICAgICAgICAgJ1Rlc3QgZnJhbWV3b3JrIGVycm9yOiBUaGUgcmVzcG9uc2UgdHlwZSBz
aG91bGQgYmUgb3BhcXVlLicpOworICAgICAgICAgIGFzc2VydF9lcXVhbHMoZmV0Y2hfcmVzdWx0
LnN0YXR1cywgMCwKKyAgICAgICAgICAgICAgJ1Rlc3QgZnJhbWV3b3JrIGVycm9yOiBUaGUgc3Rh
dHVzIGNvZGUgc2hvdWxkIGJlIDAgZm9yIGFuICcgKworICAgICAgICAgICAgICAnIG9wYXF1ZS1m
aWx0ZXJlZCByZXNwb25zZS4gVGhpcyBpcyBhY3R1YWxseSBIVFRQIDIwNi4nKTsKKyAgICAgICAg
ICByZXNwb25zZSA9IGZldGNoX3Jlc3VsdC5jbG9uZSgpOworICAgICAgICAgIHJldHVybiBwcm9t
aXNlX3JlamVjdHNfanModGVzdCwgVHlwZUVycm9yLCBjYWNoZS5wdXQocmVxdWVzdCwgZmV0Y2hf
cmVzdWx0KSk7CisgICAgICAgIH0pOworICB9LCAnQ2FjaGUucHV0IHdpdGggb3BhcXVlLWZpbHRl
cmVkIEhUVFAgMjA2IHJlc3BvbnNlJyk7CisKIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUpIHsK
ICAgICB2YXIgdGVzdF91cmwgPSBuZXcgVVJMKCcuLi9yZXNvdXJjZXMvZmV0Y2gtc3RhdHVzLnB5
P3N0YXR1cz01MDAnLCBsb2NhdGlvbi5ocmVmKS5ocmVmOwogICAgIHZhciByZXF1ZXN0ID0gbmV3
IFJlcXVlc3QodGVzdF91cmwpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNl
d29ya2VyL2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Nl
cnZpY2V3b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4YjgzNTdhOGMy
ZDA5ZTIzNzg3ZDMzNjVmYWM5NTUzMTM5ODUzZTQ3Li4yMjE3MWM4NTRlN2E3NzE2NTRlZDlkNTg2
Zjc5NWE2OTE4ZTViYzhmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3Jr
ZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Nl
cnZpY2V3b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDcgQEAg
UEFTUyBDYWNoZS5hZGQgY2FsbGVkIHR3aWNlIHdpdGggdGhlIHNhbWUgUmVxdWVzdCBvYmplY3QK
IFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB3aXRoIG51bGwgYm9keSAobm90IGNvbnN1bWVk
KQogUEFTUyBDYWNoZS5hZGQgd2l0aCAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUuYWRkQWxsIHdp
dGggMjA2IHJlc3BvbnNlCitQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG9wYXF1ZS1maWx0ZXJlZCAy
MDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMgaW4g
YSBzdGF0dXMgb2YgNDA0CiBQQVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3QgdGhhdCByZXN1bHRz
IGluIGEgc3RhdHVzIG9mIDUwMAogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCBubyBhcmd1bWVudHMK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
bWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGI5YTFhNWE2ZjgyMDgxZGQzOWM2OGU5N2Ni
MDdiNzYxZTZmZTVmM2IuLjg1YWQ0ODZkOWZkOWE1ZWM5NzExNGY5MjI4MDM2MmFhOTk4NGI2OWMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5o
dHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2Nh
Y2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjMsNSArMjMsNSBAQCBQQVNTIENhY2hl
Lm1hdGNoIHdpdGggYSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlCiBQQVNTIENhY2hlIHByb2R1Y2Vz
IGxhcmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5Lgog
UEFTUyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LgogUEFT
UyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4K
LUZBSUwgTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9u
LiBhc3NlcnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNl
IG1pbWUgdHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRl
eHQvcGxhaW4iCitGQUlMIE1JTUUgdHlwZSBzaG91bGQgcmVmbGVjdCBDb250ZW50LVR5cGUgaGVh
ZGVycyBvZiByZXNwb25zZS4gYXNzZXJ0X2VxdWFsczogbWltZSB0eXBlIGNhbiBiZSBvdmVycmlk
ZGVuIGV4cGVjdGVkICJ0ZXh0L3BsYWluIiBidXQgZ290ICJ0ZXh0L2h0bWwiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1l
eHBlY3RlZC50eHQKaW5kZXggZWMxNmQ1N2YzNWY0YjZkMGNkNDc1NTdlM2UxYjM5YjY0NDM4NTc4
ZS4uMWI2MzQ0OGU2Njg3MGJhMmQ5OTdlOGJjZDBiYjBkNWI3NTE1MDNlYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1l
eHBlY3RlZC50eHQKQEAgLTgsNiArOCw3IEBAIFBBU1MgQ2FjaGUucHV0IHdpdGggYSBSZXNwb25z
ZSBjb250YWluaW5nIGFuIGVtcHR5IFVSTAogUEFTUyBDYWNoZS5wdXQgd2l0aCBhbiBlbXB0eSBy
ZXNwb25zZSBib2R5CiBQQVNTIENhY2hlLnB1dCB3aXRoIHN5bnRoZXRpYyAyMDYgcmVzcG9uc2UK
IFBBU1MgQ2FjaGUucHV0IHdpdGggSFRUUCAyMDYgcmVzcG9uc2UKK0ZBSUwgQ2FjaGUucHV0IHdp
dGggb3BhcXVlLWZpbHRlcmVkIEhUVFAgMjA2IHJlc3BvbnNlIGFzc2VydF91bnJlYWNoZWQ6IFNo
b3VsZCBoYXZlIHJlamVjdGVkOiB1bmRlZmluZWQgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCiBQ
QVNTIENhY2hlLnB1dCB3aXRoIEhUVFAgNTAwIHJlc3BvbnNlCiBQQVNTIENhY2hlLnB1dCBjYWxs
ZWQgdHdpY2Ugd2l0aCBtYXRjaGluZyBSZXF1ZXN0cyBhbmQgZGlmZmVyZW50IFJlc3BvbnNlcwog
UEFTUyBDYWNoZS5wdXQgY2FsbGVkIHR3aWNlIHdpdGggcmVxdWVzdCBVUkxzIHRoYXQgZGlmZmVy
IG9ubHkgYnkgYSBmcmFnbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cv
Y2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2Nh
Y2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNGM0NzhlMzEyMzFjYTc4M2E0MjFiYjE1
ZGVmOTgwMjAwYjBiZGI2Yi4uNWY4NWI0MGM2OTI1M2ZhNTc4MTJiYmQ2NDBmMWY4MzFjZTU0YWJm
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtYWRkLmh0dHBzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC04LDYgKzgsNyBAQCBQQVNTIENhY2hlLmFkZCBjYWxsZWQgdHdpY2Ug
d2l0aCB0aGUgc2FtZSBSZXF1ZXN0IG9iamVjdAogUEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0
IHdpdGggbnVsbCBib2R5IChub3QgY29uc3VtZWQpCiBQQVNTIENhY2hlLmFkZCB3aXRoIDIwNiBy
ZXNwb25zZQogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCAyMDYgcmVzcG9uc2UKK1BBU1MgQ2FjaGUu
YWRkQWxsIHdpdGggb3BhcXVlLWZpbHRlcmVkIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5hZGQg
d2l0aCByZXF1ZXN0IHRoYXQgcmVzdWx0cyBpbiBhIHN0YXR1cyBvZiA0MDQKIFBBU1MgQ2FjaGUu
YWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMgaW4gYSBzdGF0dXMgb2YgNTAwCiBQQVNTIENh
Y2hlLmFkZEFsbCB3aXRoIG5vIGFyZ3VtZW50cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93aW5kb3cvY2FjaGUtYWRkLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9j
YWNoZS1hZGQuaHR0cHMuaHRtbAppbmRleCA4ZGZiNzg2Y2YzNTY3NzdjZDlkZTI4NmNjZDM1MzRj
OTVlYTAxMTZjLi5iNWE2NGM2YzM2OWI1MDI4YjRhYmExMzk2NzM4ZGM4OTJiYzYyZDNiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMuaHRtbApAQCAtNCw1ICs0
LDYgQEAKIDxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgogPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9jb21t
b24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3Jlc291
cmNlcy90ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL3NjcmlwdC10
ZXN0cy9jYWNoZS1hZGQuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDBjZjJhYzhhOWI1
YjEzMDVhMGY0MWVlOTk5OTMxMDI2Mzk3OTc2NzIuLjQ1NmE5NjMzZDA5ZGNlN2RhY2IzYWIyMTQ4
MjFhOTgzYWQ2N2M2MDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hl
LW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9j
YWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIyLDUgKzIyLDUgQEAgUEFTUyBDYWNo
ZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBSZXNwb25zZQogUEFTUyBDYWNoZSBwcm9kdWNl
cyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4K
IFBBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4KIFBB
U1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHku
Ci1GQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlv
bi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25z
ZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0
ZXh0L3BsYWluIgorRkFJTCBNSU1FIHR5cGUgc2hvdWxkIHJlZmxlY3QgQ29udGVudC1UeXBlIGhl
YWRlcnMgb2YgcmVzcG9uc2UuIGFzc2VydF9lcXVhbHM6IG1pbWUgdHlwZSBjYW4gYmUgb3ZlcnJp
ZGRlbiBleHBlY3RlZCAidGV4dC9wbGFpbiIgYnV0IGdvdCAidGV4dC9odG1sIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dApp
bmRleCA3NGNiNzc2NmY0NTRiM2M5OGU5NDRiNDI5YmM0YmQ5MmIzN2Q3ZTMxLi41YzBjZDlmNWZm
ODg5OWVlZDMyMWYxOGQ5MmIwNGU1NjdkOWYxZjE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9y
YWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTcsNiArNyw3IEBA
IFBBU1MgQ2FjaGUucHV0IHdpdGggYSBSZXNwb25zZSBjb250YWluaW5nIGFuIGVtcHR5IFVSTAog
UEFTUyBDYWNoZS5wdXQgd2l0aCBhbiBlbXB0eSByZXNwb25zZSBib2R5CiBQQVNTIENhY2hlLnB1
dCB3aXRoIHN5bnRoZXRpYyAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUucHV0IHdpdGggSFRUUCAy
MDYgcmVzcG9uc2UKK0ZBSUwgQ2FjaGUucHV0IHdpdGggb3BhcXVlLWZpbHRlcmVkIEhUVFAgMjA2
IHJlc3BvbnNlIGFzc2VydF91bnJlYWNoZWQ6IFNob3VsZCBoYXZlIHJlamVjdGVkOiB1bmRlZmlu
ZWQgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCiBQQVNTIENhY2hlLnB1dCB3aXRoIEhUVFAgNTAw
IHJlc3BvbnNlCiBQQVNTIENhY2hlLnB1dCBjYWxsZWQgdHdpY2Ugd2l0aCBtYXRjaGluZyBSZXF1
ZXN0cyBhbmQgZGlmZmVyZW50IFJlc3BvbnNlcwogUEFTUyBDYWNoZS5wdXQgY2FsbGVkIHR3aWNl
IHdpdGggcmVxdWVzdCBVUkxzIHRoYXQgZGlmZmVyIG9ubHkgYnkgYSBmcmFnbWVudApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtcHV0Lmh0dHBzLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9j
YWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMuaHRtbAppbmRleCAxZWUxNGJkZDEy
NGVlZmIxNGYwN2IxNDhjNTM5MGM4MDBhZDIwODkwLi45NjQxYzM0NzA1MTg2MzZmMWQyYWZiYmM2
OTJmNzIxZjIwNzkwNzM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNo
ZS1wdXQuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQu
aHR0cHMuaHRtbApAQCAtNCw2ICs0LDcgQEAKIDxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9
ImxvbmciPgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ii4uL3NjcmlwdC10ZXN0cy9jYWNoZS1wdXQuanMiPjwvc2NyaXB0PgogPHNjcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLWFkZC5odHRwcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1hZGQuaHR0cHMtZXhw
ZWN0ZWQudHh0CmluZGV4IDRjNDc4ZTMxMjMxY2E3ODNhNDIxYmIxNWRlZjk4MDIwMGIwYmRiNmIu
LjVmODViNDBjNjkyNTNmYTU3ODEyYmJkNjQwZjFmODMxY2U1NGFiZjIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAt
OCw2ICs4LDcgQEAgUEFTUyBDYWNoZS5hZGQgY2FsbGVkIHR3aWNlIHdpdGggdGhlIHNhbWUgUmVx
dWVzdCBvYmplY3QKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB3aXRoIG51bGwgYm9keSAo
bm90IGNvbnN1bWVkKQogUEFTUyBDYWNoZS5hZGQgd2l0aCAyMDYgcmVzcG9uc2UKIFBBU1MgQ2Fj
aGUuYWRkQWxsIHdpdGggMjA2IHJlc3BvbnNlCitQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG9wYXF1
ZS1maWx0ZXJlZCAyMDYgcmVzcG9uc2UKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0
IHJlc3VsdHMgaW4gYSBzdGF0dXMgb2YgNDA0CiBQQVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3Qg
dGhhdCByZXN1bHRzIGluIGEgc3RhdHVzIG9mIDUwMAogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCBu
byBhcmd1bWVudHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1h
dGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1h
dGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCAwY2YyYWM4YTliNWIxMzA1YTBmNDFlZTk5OTkz
MTAyNjM5Nzk3NjcyLi40NTZhOTYzM2QwOWRjZTdkYWNiM2FiMjE0ODIxYTk4M2FkNjdjNjA2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0yMiw1ICsyMiw1IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5l
dHdvcmsgZXJyb3IgUmVzcG9uc2UKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2Vz
IHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuCiBQQVNTIGNvcnMtZXhwb3Nl
ZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuCiBQQVNTIE1JTUUgdHlwZSBzaG91
bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LgotRkFJTCBNSU1FIHR5cGUg
c2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6
IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91
bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKK0ZBSUwg
TUlNRSB0eXBlIHNob3VsZCByZWZsZWN0IENvbnRlbnQtVHlwZSBoZWFkZXJzIG9mIHJlc3BvbnNl
LiBhc3NlcnRfZXF1YWxzOiBtaW1lIHR5cGUgY2FuIGJlIG92ZXJyaWRkZW4gZXhwZWN0ZWQgInRl
eHQvcGxhaW4iIGJ1dCBnb3QgInRleHQvaHRtbCIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS93b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3Jh
Z2Uvd29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggMDNmODcwN2U1MDY3
NGY1YjM1YmUxMDY5NTIxNjA3ZDgxOGJjNDc3Mi4uMTVkMDg1ZWU3MWZlY2ZiOTg5NzhlZTcyOTEy
OGFhMzY3OWQ5ODRiNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUt
cHV0Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNo
ZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC03LDYgKzcsNyBAQCBQQVNTIENhY2hlLnB1dCB3
aXRoIGEgUmVzcG9uc2UgY29udGFpbmluZyBhbiBlbXB0eSBVUkwKIFBBU1MgQ2FjaGUucHV0IHdp
dGggYW4gZW1wdHkgcmVzcG9uc2UgYm9keQogUEFTUyBDYWNoZS5wdXQgd2l0aCBzeW50aGV0aWMg
MjA2IHJlc3BvbnNlCiBQQVNTIENhY2hlLnB1dCB3aXRoIEhUVFAgMjA2IHJlc3BvbnNlCitGQUlM
IENhY2hlLnB1dCB3aXRoIG9wYXF1ZS1maWx0ZXJlZCBIVFRQIDIwNiByZXNwb25zZSBhc3NlcnRf
dW5yZWFjaGVkOiBTaG91bGQgaGF2ZSByZWplY3RlZDogdW5kZWZpbmVkIFJlYWNoZWQgdW5yZWFj
aGFibGUgY29kZQogUEFTUyBDYWNoZS5wdXQgd2l0aCBIVFRQIDUwMCByZXNwb25zZQogUEFTUyBD
YWNoZS5wdXQgY2FsbGVkIHR3aWNlIHdpdGggbWF0Y2hpbmcgUmVxdWVzdHMgYW5kIGRpZmZlcmVu
dCBSZXNwb25zZXMKIFBBU1MgQ2FjaGUucHV0IGNhbGxlZCB0d2ljZSB3aXRoIHJlcXVlc3QgVVJM
cyB0aGF0IGRpZmZlciBvbmx5IGJ5IGEgZnJhZ21lbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS9mZXRjaC1vbi10aGUtcmlnaHQtaW50ZXJm
YWNlLmh0dHBzLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZS9mZXRjaC1vbi10aGUtcmlnaHQtaW50ZXJmYWNlLmh0dHBzLmFueS5qcwppbmRleCBlOThh
MDRiNmEwOTM1NzQzYjk5MTk2MDhjNmIxNDg4Y2E1N2Y4ODM3Li41Y2E1ZjY1NjgwYzk3NTRjOGYy
ZWQ4MzYxZjZjOTRiYzEzZTY1YTBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9TZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUvZmV0Y2gtb24tdGhlLXJpZ2h0LWludGVyZmFjZS5odHRwcy5h
bnkuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlL2Zl
dGNoLW9uLXRoZS1yaWdodC1pbnRlcmZhY2UuaHR0cHMuYW55LmpzCkBAIC02LDkgKzYsOSBAQCB0
ZXN0KGZ1bmN0aW9uKCkgewogICAgICAgICAnaW5zdGFuY2Ugc2hvdWxkIG5vdCBoYXZlICJmZXRj
aCIgbWV0aG9kIGFzIGl0cyBwcm9wZXJ0eS4nKTsKICAgICBhc3NlcnRfaW5oZXJpdHMoc2VsZiwg
J2ZldGNoJywgJ1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSBzaG91bGQgJyArCiAgICAgICAgICdp
bmhlcml0ICJmZXRjaCIgbWV0aG9kLicpOwotICAgIGFzc2VydF9vd25fcHJvcGVydHkoc2VsZi5f
X3Byb3RvX18uX19wcm90b19fLCAnZmV0Y2gnLAorICAgIGFzc2VydF9vd25fcHJvcGVydHkoT2Jq
ZWN0LmdldFByb3RvdHlwZU9mKE9iamVjdC5nZXRQcm90b3R5cGVPZihzZWxmKSksICdmZXRjaCcs
CiAgICAgICAgICdXb3JrZXJHbG9iYWxTY29wZSBzaG91bGQgaGF2ZSAiZmV0Y2giIHByb3Blcnkg
aW4gaXRzIHByb3RvdHlwZS4nKTsKLSAgICBhc3NlcnRfZXF1YWxzKHNlbGYuZmV0Y2gsIHNlbGYu
X19wcm90b19fLl9fcHJvdG9fXy5mZXRjaCwKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGYuZmV0Y2gs
IE9iamVjdC5nZXRQcm90b3R5cGVPZihPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc2VsZikpLmZldGNo
LAogICAgICAgICAnU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmZldGNoIHNob3VsZCBiZSB0aGUg
c2FtZSBhcyAnICsKICAgICAgICAgJ1dvcmtlckdsb2JhbFNjb3BlLmZldGNoLicpOwogfSwgJ0Zl
dGNoIG1ldGhvZCBvbiB0aGUgcmlnaHQgaW50ZXJmYWNlJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9hY3RpdmF0aW9uLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9hY3Rp
dmF0aW9uLmh0dHBzLmh0bWwKaW5kZXggZTZmMTM2ZTZiOGJiNmFlNWM3YWU0ZDQwNTU1YzkwYWJi
YzgwZmRlZi4uMjc4NDU0ZDMzODNlM2Q3MWEzOTI1NjYzZGZjZmMzNDQ0ZWRkZmY4MyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvYWN0aXZhdGlvbi5odHRwcy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2FjdGl2YXRpb24uaHR0cHMuaHRtbApAQCAtNTAsNyArNTAsNyBAQCBmdW5j
dGlvbiBzZXR1cF9hY3RpdmF0aW9uX3Rlc3QodCwgc2NvcGUsIHdvcmtlcl91cmwpIHsKICAgICAg
ICAgcmV0dXJuIHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnaW5z
dGFsbGVkJyk7CiAgICAgICB9KQogICAgIC50aGVuKCgpID0+IHsKLSAgICAgICAgcmV0dXJuIHdh
aXRfZm9yX2FjdGl2YXRpb25fb25fZHVtbXlfc2NvcGUodCwgc2VsZik7CisgICAgICAgIHJldHVy
biB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX3NhbXBsZV9zY29wZSh0LCBzZWxmKTsKICAgICAgIH0p
CiAgICAgLnRoZW4oKCkgPT4gewogICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhyZWdpc3RyYXRp
b24ud2FpdGluZywgbnVsbCk7CkBAIC03MCw3ICs3MCw3IEBAIHByb21pc2VfdGVzdCh0ID0+IHsK
ICAgICAgICAgICBpZnJhbWUgPSByZXN1bHQuaWZyYW1lOwogICAgICAgICAgIC8vIEZpbmlzaCB0
aGUgaW4tZmxpZ2h0IHJlcXVlc3QuCiAgICAgICAgICAgcmVnaXN0cmF0aW9uLmFjdGl2ZS5wb3N0
TWVzc2FnZSgnZ28nKTsKLSAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZhdGlvbl9vbl9k
dW1teV9zY29wZSh0LCBzZWxmKTsKKyAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZhdGlv
bl9vbl9zYW1wbGVfc2NvcGUodCwgc2VsZik7CiAgICAgICAgIH0pCiAgICAgICAudGhlbigoKSA9
PiB7CiAgICAgICAgICAgLy8gVGhlIG5ldyB3b3JrZXIgaXMgc3RpbGwgd2FpdGluZy4gUmVtb3Zl
IHRoZSBmcmFtZSBhbmQgaXQgc2hvdWxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9j
bGFpbS1mZXRjaC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xhaW0tZmV0Y2guaHR0
cHMuaHRtbAppbmRleCA0MDBiNTkzYWM5NjE5NDJmNmU5Mjc0YWVlOThiYWMyMjg1NmVhZjIyLi5h
ZTAwODJkZjA2YmY3OTRkMDI5OTBhN2MwYjcyMTNlMGQ4MTExNGNiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGFpbS1mZXRjaC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2NsYWltLWZldGNoLmh0dHBzLmh0bWwKQEAgLTEsNTIgKzEsNDYgQEAKIDwhZG9jdHlwZSBo
dG1sPgogPG1ldGEgY2hhcnNldD11dGYtOD4KIDx0aXRsZT48L3RpdGxlPgorPG1ldGEgbmFtZT0i
dGltZW91dCIgY29udGVudD0ibG9uZyI+CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5z
dWIuanMiPjwvc2NyaXB0PgogPGJvZHk+CiA8c2NyaXB0PgogCi1hc3luYyBmdW5jdGlvbiB0cnlf
ZmV0Y2goZmV0Y2hfZnVuYywgcGF0aCkgeworYXN5bmMgZnVuY3Rpb24gdHJ5RmV0Y2goZmV0Y2hG
dW5jLCBwYXRoKSB7CiAgIGxldCByZXNwb25zZTsKICAgdHJ5IHsKLSAgIHJlc3BvbnNlID0gYXdh
aXQgZmV0Y2hfZnVuYyhwYXRoKTsKKyAgIHJlc3BvbnNlID0gYXdhaXQgZmV0Y2hGdW5jKHBhdGgp
OwogICB9IGNhdGNoIChlcnIpIHsKICAgICB0aHJvdyAoYGZldGNoKCkgdGhyZXc6ICR7ZXJyfWAp
OwogICB9CiAKLSAgbGV0IHJlc3BvbnNlX3RleHQ7CisgIGxldCByZXNwb25zZVRleHQ7CiAgIHRy
eSB7Ci0gICByZXNwb25zZV90ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgcmVzcG9u
c2VUZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOwogICB9IGNhdGNoIChlcnIpIHsKICAgIHRo
cm93IChgdGV4dCgpIHRocmV3OiAke2Vycn1gKTsKICAgfQogCi0gIHJldHVybiByZXNwb25zZV90
ZXh0OworICByZXR1cm4gcmVzcG9uc2VUZXh0OwogfQogCiBwcm9taXNlX3Rlc3QoYXN5bmMgZnVu
Y3Rpb24odCkgewotICBsZXQgZnJhbWU7CiAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy8nOwog
ICBjb25zdCBzY3JpcHQgPSAncmVzb3VyY2VzL2NsYWltLXdvcmtlci5qcyc7Ci0gIHQuYWRkX2Ns
ZWFudXAoYXN5bmMgKCkgPT4gewotICAgIGlmIChmcmFtZSkKLSAgICAgIGZyYW1lLnJlbW92ZSgp
OwotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKLSAgfSk7
Ci0KICAgY29uc3QgcmVzb3VyY2UgPSAnc2ltcGxlLnR4dCc7CiAKICAgLy8gQ3JlYXRlIHRoZSB0
ZXN0IGZyYW1lLgotICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsK
LSAgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZSgncmVzb3VyY2VzL2JsYW5rLmh0bWwnKTsKKyAg
Y29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZSgncmVzb3VyY2VzL2JsYW5rLmh0bWwnKTsK
KyAgdC5hZGRfY2xlYW51cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CiAKICAgLy8gQ2hlY2sgdGhl
IGNvbnRyb2xsZXIgYW5kIHRlc3Qgd2l0aCBmZXRjaC4KICAgYXNzZXJ0X2VxdWFscyhmcmFtZS5j
b250ZW50V2luZG93Lm5hdmlnYXRvci5jb250cm9sbGVyLCB1bmRlZmluZWQsCiAgICAgICAgICAg
ICAgICAgJ1Nob3VsZCBoYXZlIG5vIGNvbnRyb2xsZXIuJyk7CiAgIGxldCByZXNwb25zZTsKICAg
dHJ5IHsKLSAgICByZXNwb25zZSA9IGF3YWl0IHRyeV9mZXRjaChmcmFtZS5jb250ZW50V2luZG93
LmZldGNoLCByZXNvdXJjZSk7CisgICAgcmVzcG9uc2UgPSBhd2FpdCB0cnlGZXRjaChmcmFtZS5j
b250ZW50V2luZG93LmZldGNoLCByZXNvdXJjZSk7CiAgIH0gY2F0Y2ggKGVycikgewogICAgIGFz
c2VydF91bnJlYWNoZWQoYHVuY29udHJvbGxlZCBmZXRjaCBmYWlsZWQ6ICR7ZXJyfWApOwogICB9
CkBAIC01NCwyNyArNDgsMzcgQEAgcHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uKHQpIHsKICAg
ICAgICAgICAgICAgICAnZmV0Y2goKSBzaG91bGQgbm90IGJlIGludGVyY2VwdGVkLicpOwogCiAg
IC8vIFJlZ2lzdGVyIGEgc2VydmljZSB3b3JrZXIuCi0gIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3
YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdCwge3Njb3BlfSk7Cisg
IGNvbnN0IHJlZ2lzdHJhdGlvbiA9CisgICAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rl
cl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBzY29wZSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4g
cmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CiAgIGNvbnN0IHdvcmtlciA9IHJlZ2lzdHJhdGlv
bi5pbnN0YWxsaW5nOwogICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCB3b3JrZXIsICdhY3RpdmF0
ZWQnKTsKIAorICAvLyBSZWdpc3RlciBhIGNvbnRyb2xsZXJjaGFuZ2UgZXZlbnQgdG8gd2FpdCB1
bnRpbCB0aGUgY29udHJvbGxlciBpcyB1cGRhdGVkCisgIC8vIGFuZCBjaGVjayBpZiB0aGUgZnJh
bWUgaXMgY29udHJvbGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyLgorICBjb25zdCBjb250cm9sbGVy
Q2hhbmdlZCA9IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CisgICAgZnJhbWUuY29udGVudFdp
bmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5vbmNvbnRyb2xsZXJjaGFuZ2UgPSAoKSA9PiB7
CisgICAgICByZXNvbHZlKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3Jr
ZXIuY29udHJvbGxlcik7CisgICAgfTsKKyAgfSk7CisKICAgLy8gVGVsbCB0aGUgc2VydmljZSB3
b3JrZXIgdG8gY2xhaW0gdGhlIGlmcmFtZS4KLSAgY29uc3Qgc2F3X21lc3NhZ2UgPSBuZXcgUHJv
bWlzZSgocmVzb2x2ZSkgPT4geworICBjb25zdCBzYXdNZXNzYWdlID0gbmV3IFByb21pc2UoKHJl
c29sdmUpID0+IHsKICAgICBjb25zdCBjaGFubmVsID0gbmV3IE1lc3NhZ2VDaGFubmVsKCk7CiAg
ICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSB0LnN0ZXBfZnVuYygoZXZlbnQpID0+IHsKICAg
ICAgIHJlc29sdmUoZXZlbnQuZGF0YSk7CiAgICAgfSk7CiAgICAgd29ya2VyLnBvc3RNZXNzYWdl
KHtwb3J0OiBjaGFubmVsLnBvcnQyfSwgW2NoYW5uZWwucG9ydDJdKTsKICAgfSk7Ci0gIGNvbnN0
IGRhdGEgPSBhd2FpdCBzYXdfbWVzc2FnZTsKKyAgY29uc3QgZGF0YSA9IGF3YWl0IHNhd01lc3Nh
Z2U7CiAgIGFzc2VydF9lcXVhbHMoZGF0YSwgJ1BBU1MnLCAnV29ya2VyIGNhbGwgdG8gY2xhaW0o
KSBzaG91bGQgZnVsZmlsbC4nKTsKIAotICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVz
dCB3aXRoIGZldGNoLgotICBjb25zdCBjb250cm9sbGVyID0gZnJhbWUuY29udGVudFdpbmRvdy5u
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyOworICAvLyBDaGVjayBpZiB0aGUgY29u
dHJvbGxlciBpcyB1cGRhdGVkIGFmdGVyIGNsYWltKCkgYW5kIHRlc3Qgd2l0aCBmZXRjaC4KKyAg
Y29uc3QgY29udHJvbGxlciA9IGF3YWl0IGNvbnRyb2xsZXJDaGFuZ2VkOwogICBhc3NlcnRfdHJ1
ZShjb250cm9sbGVyIGluc3RhbmNlb2YgZnJhbWUuY29udGVudFdpbmRvdy5TZXJ2aWNlV29ya2Vy
LAogICAgICAgICAgICAgICAnaWZyYW1lIHNob3VsZCBiZSBjb250cm9sbGVkLicpOwogICB0cnkg
ewotICAgIHJlc3BvbnNlID0gYXdhaXQgdHJ5X2ZldGNoKGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0
Y2gsIHJlc291cmNlKTsKKyAgICByZXNwb25zZSA9IGF3YWl0IHRyeUZldGNoKGZyYW1lLmNvbnRl
bnRXaW5kb3cuZmV0Y2gsIHJlc291cmNlKTsKICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgYXNzZXJ0
X3VucmVhY2hlZChgY29udHJvbGxlZCBmZXRjaCBmYWlsZWQ6ICR7ZXJyfWApOwogICB9CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCA0MTBiMThhMmM1Njk1Zjc1MGNkM2EzNGE2NGIyOTA2MDMwYTVkN2I2Li42
ODE5OWVmNzdjYzVjYWE4YTJjYjVmMDYyNjFmYzk0MjZmMmMyOTBmIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSwxMSBAQAogCisKK0hhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0g
bnVsbAorCiBQQVNTIGZldGNoKCkgaW4gV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRl
ciB0aGUgY2xpZW50IGlzIGNsYWltZWQuCiBGQUlMIGZldGNoKCkgaW4gbmVzdGVkIFdvcmtlciBz
aG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLiBhc3NlcnRf
ZXF1YWxzOiBmZXRjaCgpIHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuIGV4cGVjdGVkICJhIHNp
bXBsZSB0ZXh0IGZpbGVcbiIgYnV0IGdvdCAiRmFpbDogdW5kZWZpbmVkIgorUEFTUyBmZXRjaCgp
IGluIGJsb2IgVVJMIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVu
dCBpcyBjbGFpbWVkLgorVElNRU9VVCBmZXRjaCgpIGluIG5lc3RlZCBibG9iIFVSTCBXb3JrZXIg
Y3JlYXRlZCBmcm9tIGEgYmxvYiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRl
ciB0aGUgY2xpZW50IGlzIGNsYWltZWQuIFRlc3QgdGltZWQgb3V0CitOT1RSVU4gZmV0Y2goKSBp
biBuZXN0ZWQgV29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJMIFdvcmtlciBzaG91bGQgYmUg
aW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLgorTk9UUlVOIGZldGNoKCkg
aW4gbmVzdGVkIGJsb2IgVVJMIFdvcmtlciBjcmVhdGVkIGZyb20gYSBXb3JrZXIgc2hvdWxkIGJl
IGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMuaHRtbAppbmRleCA0YjQ5YTgxNTJh
NDJjOWU0NTEwNDEzOWI0NmI5ZmE1Njc2MmRlNmJiLi43Y2IyNmM3NDJiOTdkM2Q3NjhlMDFlYzA5
YWRiMWNlZWNhOTlkYzg2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3Jr
ZXItZmV0Y2guaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXIt
ZmV0Y2guaHR0cHMuaHRtbApAQCAtNyw3MyArNyw3NiBAQAogPGJvZHk+CiA8c2NyaXB0PgogCi1w
cm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgeworcHJvbWlzZV90ZXN0KCh0KSA9PiB7CiAgIHJldHVy
biBydW5UZXN0KHQsICdyZXNvdXJjZXMvY2xhaW0td29ya2VyLWZldGNoLWlmcmFtZS5odG1sJyk7
CiB9LCAnZmV0Y2goKSBpbiBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBj
bGllbnQgaXMgY2xhaW1lZC4nKTsKIAotcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKK3Byb21p
c2VfdGVzdCgodCkgPT4gewogICByZXR1cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL2NsYWltLW5l
c3RlZC13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwnKTsKIH0sICdmZXRjaCgpIGluIG5lc3RlZCBX
b3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4n
KTsKIAotZnVuY3Rpb24gcnVuVGVzdCh0LCBpZnJhbWVfdXJsKSB7Ci0gIHZhciByZXNvdXJjZSA9
ICdzaW1wbGUudHh0JzsKK3Byb21pc2VfdGVzdCgodCkgPT4geworICByZXR1cm4gcnVuVGVzdCh0
LCAncmVzb3VyY2VzL2NsYWltLWJsb2ItdXJsLXdvcmtlci1mZXRjaC1pZnJhbWUuaHRtbCcpOwor
fSwgJ2ZldGNoKCkgaW4gYmxvYiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRl
ciB0aGUgY2xpZW50IGlzIGNsYWltZWQuJyk7CiAKLSAgdmFyIGZyYW1lOwotICB2YXIgcmVnaXN0
cmF0aW9uOwotICB2YXIgd29ya2VyOwotICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzLyc7Ci0gIHZh
ciBzY3JpcHQgPSAncmVzb3VyY2VzL2NsYWltLXdvcmtlci5qcyc7Citwcm9taXNlX3Rlc3QoKHQp
ID0+IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29y
a2Vycy5odG1sJyk7Cit9LCAnZmV0Y2goKSBpbiBuZXN0ZWQgYmxvYiBVUkwgV29ya2VyIGNyZWF0
ZWQgZnJvbSBhIGJsb2IgVVJMIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhl
IGNsaWVudCBpcyBjbGFpbWVkLicpOwogCi0gIHJldHVybiBQcm9taXNlLnJlc29sdmUoKQotICAg
IC8vIENyZWF0ZSB0aGUgdGVzdCBpZnJhbWUgd2l0aCBhIGRlZGljYXRlZCB3b3JrZXIuCi0gICAg
LnRoZW4oKCkgPT4gd2l0aF9pZnJhbWUoaWZyYW1lX3VybCkpCi0gICAgLnRoZW4oZiA9PiB7Ci0g
ICAgICB0LmFkZF9jbGVhbnVwKCgpID0+IGYucmVtb3ZlKCkpOwotICAgICAgZnJhbWUgPSBmOwot
ICAgIH0pCitwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291
cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRtbCcpOwor
fSwgJ2ZldGNoKCkgaW4gbmVzdGVkIFdvcmtlciBjcmVhdGVkIGZyb20gYSBibG9iIFVSTCBXb3Jr
ZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4nKTsK
IAotICAgIC8vIENoZWNrIHRoZSBjb250cm9sbGVyIGFuZCB0ZXN0IHdpdGggZmV0Y2ggaW4gdGhl
IHdvcmtlci4KLSAgICAudGhlbigoKSA9PiBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRlbnRXaW5k
b3cubmF2aWdhdG9yLmNvbnRyb2xsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bmRlZmluZWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnU2hvdWxkIGhhdmUgbm8g
Y29udHJvbGxlci4nKSkKLSAgICAudGhlbigoKSA9PiBmcmFtZS5jb250ZW50V2luZG93LmZldGNo
X2luX3dvcmtlcihyZXNvdXJjZSkpCi0gICAgLnRoZW4ocmVzcG9uc2VfdGV4dCA9PiBhc3NlcnRf
ZXF1YWxzKHJlc3BvbnNlX3RleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICdhIHNpbXBsZSB0ZXh0IGZpbGVcbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICdmZXRjaCgpIHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuJykpCi0g
ICAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KLSAgICAudGhlbigoKSA9PiBzZXJ2aWNl
X3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3BlKSkKLSAgICAu
dGhlbihyID0+IHsKLSAgICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gci51bnJlZ2lzdGVyKCkpOwot
ICAgICAgd29ya2VyID0gci5pbnN0YWxsaW5nOwotICAgIH0pCi0gICAgLnRoZW4oKCkgPT4gd2Fp
dF9mb3Jfc3RhdGUodCwgd29ya2VyLCAnYWN0aXZhdGVkJykpCitwcm9taXNlX3Rlc3QoKHQpID0+
IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vy
LWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbCcpOworfSwgJ2ZldGNoKCkgaW4gbmVzdGVkIGJsb2Ig
VVJMIFdvcmtlciBjcmVhdGVkIGZyb20gYSBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFm
dGVyIHRoZSBjbGllbnQgaXMgY2xhaW1lZC4nKTsKIAotICAgIC8vIExldCB0aGUgc2VydmljZSB3
b3JrZXIgY2xhaW0gdGhlIGlmcmFtZSBhbmQgdGhlIHdvcmtlci4KLSAgICAudGhlbigoKSA9PiB7
Ci0gICAgICB2YXIgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOwotICAgICAgdmFyIHNh
d19tZXNzYWdlID0gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkgewotICAgICAgICBjaGFu
bmVsLnBvcnQxLm9ubWVzc2FnZSA9IHQuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsKLSAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGUuZGF0YSwgJ1BBU1MnLAotICAgICAgICAgICAgICAgICAgICAgICAg
J1dvcmtlciBjYWxsIHRvIGNsYWltKCkgc2hvdWxkIGZ1bGZpbGwuJyk7Ci0gICAgICAgICAgcmVz
b2x2ZSgpOwotICAgICAgICB9KTsKLSAgICAgIH0pOwotICAgICAgd29ya2VyLnBvc3RNZXNzYWdl
KHtwb3J0OiBjaGFubmVsLnBvcnQyfSwgW2NoYW5uZWwucG9ydDJdKTsKLSAgICAgIHJldHVybiBz
YXdfbWVzc2FnZTsKLSAgICB9KQorYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCh0LCBpZnJhbWVfdXJs
KSB7CisgIGNvbnN0IHJlc291cmNlID0gJ3NpbXBsZS50eHQnOworICBjb25zdCBzY29wZSA9ICdy
ZXNvdXJjZXMvJzsKKyAgY29uc3Qgc2NyaXB0ID0gJ3Jlc291cmNlcy9jbGFpbS13b3JrZXIuanMn
OwogCi0gICAgLy8gQ2hlY2sgdGhlIGNvbnRyb2xsZXIgYW5kIHRlc3Qgd2l0aCBmZXRjaCBpbiB0
aGUgd29ya2VyLgotICAgIC50aGVuKCgpID0+IGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9y
LnNlcnZpY2VXb3JrZXIuZ2V0UmVnaXN0cmF0aW9uKHNjb3BlKSkKLSAgICAudGhlbihyID0+IHJl
Z2lzdHJhdGlvbiA9IHIpCi0gICAgLnRoZW4oKCkgPT4gYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250
ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJlZ2lzdHJhdGlvbi5hY3RpdmUsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICdUZXN0IGlmcmFtZSBzaG91bGQgYmUgY2xhaW1lZC4nKSkKKyAgLy8gQ3Jl
YXRlIHRoZSB0ZXN0IGlmcmFtZSB3aXRoIGEgZGVkaWNhdGVkIHdvcmtlci4KKyAgY29uc3QgZnJh
bWUgPSBhd2FpdCB3aXRoX2lmcmFtZShpZnJhbWVfdXJsKTsKKyAgdC5hZGRfY2xlYW51cChfID0+
IGZyYW1lLnJlbW92ZSgpKTsKKworICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3
aXRoIGZldGNoIGluIHRoZSB3b3JrZXIuCisgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudFdp
bmRvdy5uYXZpZ2F0b3IuY29udHJvbGxlciwKKyAgICAgICAgICAgICAgICB1bmRlZmluZWQsICdT
aG91bGQgaGF2ZSBubyBjb250cm9sbGVyLicpOworICB7CisgICAgY29uc3QgcmVzcG9uc2VfdGV4
dCA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2hfaW5fd29ya2VyKHJlc291cmNlKTsK
KyAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlX3RleHQsICdhIHNpbXBsZSB0ZXh0IGZpbGVcbics
CisgICAgICAgICAgICAgICAgICAnZmV0Y2goKSBzaG91bGQgbm90IGJlIGludGVyY2VwdGVkLicp
OworICB9CisKKyAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KKyAgY29uc3QgcmVnID0g
YXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBz
Y29wZSk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiByZWcudW5yZWdpc3RlcigpKTsKKyAgYXdhaXQg
d2FpdF9mb3Jfc3RhdGUodCwgcmVnLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICAvLyBM
ZXQgdGhlIHNlcnZpY2Ugd29ya2VyIGNsYWltIHRoZSBpZnJhbWUgYW5kIHRoZSB3b3JrZXIuCisg
IGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAgY29uc3Qgc2F3X21lc3Nh
Z2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKSB7CisgICAgY2hhbm5lbC5wb3J0MS5v
bm1lc3NhZ2UgPSB0LnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KGUuZGF0YSwgJ1BBU1MnLCAnV29ya2VyIGNhbGwgdG8gY2xhaW0oKSBzaG91bGQgZnVsZmlsbC4n
KTsKKyAgICAgIHJlc29sdmUoKTsKKyAgICB9KTsKKyAgfSk7CisgIHJlZy5hY3RpdmUucG9zdE1l
c3NhZ2Uoe3BvcnQ6IGNoYW5uZWwucG9ydDJ9LCBbY2hhbm5lbC5wb3J0Ml0pOworICBhd2FpdCBz
YXdfbWVzc2FnZTsKKworICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3aXRoIGZl
dGNoIGluIHRoZSB3b3JrZXIuCisgIGNvbnN0IHJlZzIgPQorICAgIGF3YWl0IGZyYW1lLmNvbnRl
bnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuZ2V0UmVnaXN0cmF0aW9uKHNjb3BlKTsK
KyAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29y
a2VyLmNvbnRyb2xsZXIsCisgICAgICAgICAgICAgICAgcmVnMi5hY3RpdmUsICdUZXN0IGlmcmFt
ZSBzaG91bGQgYmUgY2xhaW1lZC4nKTsKKworICB7CiAgICAgLy8gVE9ETyhob3JvKTogQ2hlY2sg
dGhlIHdvcmtlcidzIG5hdmlnYXRvci5zZXZpY2VXb3JrZXIuY29udHJvbGxlci4KLSAgICAudGhl
bigoKSA9PiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoX2luX3dvcmtlcihyZXNvdXJjZSkpCi0g
ICAgLnRoZW4ocmVzcG9uc2VfdGV4dCA9PgotICAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9u
c2VfdGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICdJbnRlcmNlcHRlZCEnLAotICAgICAg
ICAgICAgICAgICAgICAgICAgJ2ZldGNoKCkgaW4gdGhlIHdvcmtlciBzaG91bGQgYmUgaW50ZXJj
ZXB0ZWQuJykpOworICAgIGNvbnN0IHJlc3BvbnNlX3RleHQgPSBhd2FpdCBmcmFtZS5jb250ZW50
V2luZG93LmZldGNoX2luX3dvcmtlcihyZXNvdXJjZSk7CisgICAgYXNzZXJ0X2VxdWFscyhyZXNw
b25zZV90ZXh0LCAnSW50ZXJjZXB0ZWQhJywKKyAgICAgICAgICAgICAgICAgICdmZXRjaCgpIGlu
IHRoZSB3b3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkLicpOworICB9CiB9CiAKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbAppbmRleCA2
MTEyZTM3YzM0ZWU5OTEwOTRlZThmY2JlNjIzZTljMWUyNmY2ZTdjLi5mNDBhMDg2MzVjZmQxZTAz
NDVhNjQyMjhjY2FiODIzMDI0MzlmN2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9j
bGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQt
bmF2aWdhdGUuaHR0cHMuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDwhZG9jdHlwZSBodG1sPgogPG1l
dGEgY2hhcnNldD11dGYtOD4KKzxtZXRhIG5hbWU9InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgog
PHRpdGxlPlNlcnZpY2UgV29ya2VyOiBXaW5kb3dDbGllbnQubmF2aWdhdGU8L3RpdGxlPgogPHNj
cmlwdCBzcmM9L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PS9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanM+PC9zY3JpcHQ+CkBAIC0zMiwxNTQgKzMz
LDc1IEBACiAgICAgfSk7CiAgIH0KIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAg
IHZhciB3b3JrZXIgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOwotICAg
IHZhciBzY29wZSA9ICJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwotICAg
IHZhciBjb250cm9sbGVyLCBmcmFtZSwgY2xpZW50SWQ7CisgIGFzeW5jIGZ1bmN0aW9uIHdpdGhf
Y29udHJvbGxlZF9pZnJhbWVfYW5kX3VybCh0LCBuYW1lLCBmKSB7CisgICAgY29uc3QgU0NSSVBU
ID0gInJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIjsKKyAgICBjb25zdCBTQ09Q
RSA9ICJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwogCi0gICAgcmV0dXJu
IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUp
Ci0gICAgICAudGhlbihyZWcgPT4gewotICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxp
bmc7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFj
dGl2YXRlZCIpOwotICAgICAgfSkKLSAgICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29w
ZSkpCi0gICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRj
aF90ZXN0c19mcm9tX3dvcmtlcihjb250cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9y
X21lc3NhZ2UoKQotICAgICAgfSkKLSAgICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlk
KQotICAgICAgLnRoZW4oX19fID0+IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVz
dF9jbGllbnRfbmF2aWdhdGVfc3VjY2VzcyIpKQotICAgICAgLnRoZW4oKHtyZXN1bHQsIHVybH0p
ID0+IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXN1bHQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0
ZV9zdWNjZXNzIik7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAgdXJsLCBuZXcg
VVJMKCJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgbG9jYXRpb24pLnRvU3RyaW5nKCkpOwotICAgICAgICBhc3NlcnRfZXF1YWxz
KAotICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24uaHJlZiwKLSAgICAgICAg
ICBuZXcgVVJMKCJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKLSAgICAg
ICAgICAgICAgICAgIGxvY2F0aW9uKS50b1N0cmluZygpKTsKLSAgICAgICAgZnJhbWUucmVtb3Zl
KCk7Ci0gICAgICB9KQotICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAg
ICAudGhlbihfX18gPT4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSkpOwotICB9
LCAiRnJhbWUgbG9jYXRpb24gc2hvdWxkIHVwZGF0ZSBvbiBzdWNjZXNzZnVsIG5hdmlnYXRpb24i
KTsKKyAgICAvLyBSZWdpc3RlciBzZXJ2aWNlIHdvcmtlciBhbmQgd2FpdCBmb3IgaXQgdG8gYmVj
b21lIGFjdGl2YXRlZAorICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29y
a2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIFNDUklQVCwgU0NPUEUpOworICAgIHQuYWRk
X2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgd29y
a2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUo
dCwgd29ya2VyLCAnYWN0aXZhdGVkJyk7CisKKyAgICAvLyBDcmVhdGUgY2hpbGQgaWZyYW1lIGFu
ZCBtYWtlIHN1cmUgd2UgcmVnaXN0ZXIgYSBsaXN0ZW5lciBmb3IgdGhlIG1lc3NhZ2UKKyAgICAv
LyBpdCBzZW5kcyBiZWZvcmUgaXQncyBjcmVhdGVkCisgICAgY29uc3QgY2xpZW50X2lkX3Byb21p
c2UgPSB3YWl0X2Zvcl9tZXNzYWdlKCk7CisgICAgY29uc3QgaWZyYW1lID0gYXdhaXQgd2l0aF9p
ZnJhbWUoU0NPUEUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gaWZyYW1lLnJlbW92ZSgpKTsK
KyAgICBjb25zdCB7IGlkIH0gPSBhd2FpdCBjbGllbnRfaWRfcHJvbWlzZTsKKworICAgIC8vIFJ1
biB0aGUgdGVzdCBpbiB0aGUgc2VydmljZSB3b3JrZXIgYW5kIGZldGNoIGl0CisgICAgY29uc3Qg
eyByZXN1bHQsIHVybCB9ID0gYXdhaXQgcnVuX3Rlc3Qod29ya2VyLCBpZCwgbmFtZSk7CisgICAg
ZmV0Y2hfdGVzdHNfZnJvbV93b3JrZXIod29ya2VyKTsKKyAgICBhc3NlcnRfZXF1YWxzKHJlc3Vs
dCwgbmFtZSk7CisKKyAgICAvLyBIYW5kIG92ZXIgdGhlIGlmcmFtZSBhbmQgVVJMIGZyb20gdGhl
IHNlcnZpY2Ugd29ya2VyIHRvIHRoZSBjYWxsYmFjaworICAgIGF3YWl0IGYoaWZyYW1lLCB1cmwp
OworICB9CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgd29ya2VyID0g
InJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIjsKLSAgICB2YXIgc2NvcGUgPSAi
cmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sIjsKLSAgICB2YXIgY29udHJvbGxl
ciwgZnJhbWUsIGNsaWVudElkOworICAgIHJldHVybiB3aXRoX2NvbnRyb2xsZWRfaWZyYW1lX2Fu
ZF91cmwodCwgJ3Rlc3RfY2xpZW50X25hdmlnYXRlX3N1Y2Nlc3MnLCBhc3luYyAoaWZyYW1lLCB1
cmwpID0+IHsKKyAgICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAgIHVybCwgbmV3IFVSTCgicmVz
b3VyY2VzL2NsaWVudC1uYXZpZ2F0ZWQtZnJhbWUuaHRtbCIsCisgICAgICAgICAgICAgICAgICAg
ICAgbG9jYXRpb24pLnRvU3RyaW5nKCkpOworICAgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAg
aWZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24uaHJlZiwKKyAgICAgICAgbmV3IFVSTCgicmVz
b3VyY2VzL2NsaWVudC1uYXZpZ2F0ZWQtZnJhbWUuaHRtbCIsCisgICAgICAgICAgICAgICAgbG9j
YXRpb24pLnRvU3RyaW5nKCkpOworICAgIH0pOworICB9LCAiRnJhbWUgbG9jYXRpb24gc2hvdWxk
IHVwZGF0ZSBvbiBzdWNjZXNzZnVsIG5hdmlnYXRpb24iKTsKIAotICAgIHJldHVybiBzZXJ2aWNl
X3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXIsIHNjb3BlKQotICAgICAg
LnRoZW4ocmVnID0+IHsKLSAgICAgICAgY29udHJvbGxlciA9IHJlZy5pbnN0YWxsaW5nOwotICAg
ICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgcmVnLmluc3RhbGxpbmcsICJhY3RpdmF0ZWQi
KTsKLSAgICAgIH0pCi0gICAgICAudGhlbihfX18gPT4gd2l0aF9pZnJhbWUoc2NvcGUpKQotICAg
ICAgLnRoZW4oZiA9PiB7Ci0gICAgICAgIGZyYW1lID0gZjsKLSAgICAgICAgZmV0Y2hfdGVzdHNf
ZnJvbV93b3JrZXIoY29udHJvbGxlcik7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9tZXNzYWdl
KCkKLSAgICAgIH0pCi0gICAgICAudGhlbigoe2lkfSkgPT4gY2xpZW50SWQgPSBpZCkKLSAgICAg
IC50aGVuKF9fXyA9PiBydW5fdGVzdChjb250cm9sbGVyLCBjbGllbnRJZCwgInRlc3RfY2xpZW50
X25hdmlnYXRlX3JlZGlyZWN0IikpCi0gICAgICAudGhlbigoe3Jlc3VsdCwgdXJsfSkgPT4gewot
ICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgInRlc3RfY2xpZW50X25hdmlnYXRlX3JlZGly
ZWN0Iik7Ci0gICAgICAgIGFzc2VydF9lcXVhbHModXJsLCAiIik7Ci0gICAgICAgIGFzc2VydF90
aHJvd3NfZG9tKCJTZWN1cml0eUVycm9yIiwgZnVuY3Rpb24oKSB7IHJldHVybiBmcmFtZS5jb250
ZW50V2luZG93LmxvY2F0aW9uLmhyZWYgfSk7Ci0gICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAg
ICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4o
X19fID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpKTsKKyAgcHJvbWlzZV90
ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgICByZXR1cm4gd2l0aF9jb250cm9sbGVkX2lmcmFtZV9hbmRf
dXJsKHQsICd0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9yZWRpcmVjdCcsIGFzeW5jIChpZnJhbWUsIHVy
bCkgPT4geworICAgICAgYXNzZXJ0X2VxdWFscyh1cmwsICIiKTsKKyAgICAgIGFzc2VydF90aHJv
d3NfZG9tKCJTZWN1cml0eUVycm9yIiwgZnVuY3Rpb24oKSB7IHJldHVybiBpZnJhbWUuY29udGVu
dFdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pOworICAgIH0pOwogICB9LCAiRnJhbWUgbG9jYXRpb24g
c2hvdWxkIG5vdCBiZSBhY2Nlc3NpYmxlIGFmdGVyIHJlZGlyZWN0Iik7CiAKICAgcHJvbWlzZV90
ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgd29ya2VyID0gInJlc291cmNlcy9jbGllbnQtbmF2
aWdhdGUtd29ya2VyLmpzIjsKLSAgICB2YXIgc2NvcGUgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZS1mcmFtZS5odG1sIjsKLSAgICB2YXIgY29udHJvbGxlciwgZnJhbWUsIGNsaWVudElkOwot
Ci0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdv
cmtlciwgc2NvcGUpCi0gICAgICAudGhlbihyZWcgPT4gewotICAgICAgICBjb250cm9sbGVyID0g
cmVnLmluc3RhbGxpbmc7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5z
dGFsbGluZywgImFjdGl2YXRlZCIpOwotICAgICAgfSkKLSAgICAgIC50aGVuKF9fXyA9PiB3aXRo
X2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwot
ICAgICAgICBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihjb250cm9sbGVyKTsKLSAgICAgICAgcmV0
dXJuIHdhaXRfZm9yX21lc3NhZ2UoKQotICAgICAgfSkKLSAgICAgIC50aGVuKCh7aWR9KSA9PiBj
bGllbnRJZCA9IGlkKQotICAgICAgLnRoZW4oX19fID0+IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNs
aWVudElkLCAidGVzdF9jbGllbnRfbmF2aWdhdGVfY3Jvc3Nfb3JpZ2luIikpCi0gICAgICAudGhl
bigoe3Jlc3VsdCwgdXJsfSkgPT4gewotICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgInRl
c3RfY2xpZW50X25hdmlnYXRlX2Nyb3NzX29yaWdpbiIpOwotICAgICAgICBhc3NlcnRfZXF1YWxz
KHVybCwgIiIpOwotICAgICAgICBhc3NlcnRfdGhyb3dzX2RvbSgiU2VjdXJpdHlFcnJvciIsIGZ1
bmN0aW9uKCkgeyByZXR1cm4gZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pOwot
ICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgIH0pCi0gICAgICAuY2F0Y2godW5yZWFjaGVk
X3JlamVjdGlvbih0KSkKLSAgICAgIC50aGVuKF9fXyA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lz
dGVyKHQsIHNjb3BlKSk7CisgICAgcmV0dXJuIHdpdGhfY29udHJvbGxlZF9pZnJhbWVfYW5kX3Vy
bCh0LCAndGVzdF9jbGllbnRfbmF2aWdhdGVfY3Jvc3Nfb3JpZ2luJywgYXN5bmMgKGlmcmFtZSwg
dXJsKSA9PiB7CisgICAgICBhc3NlcnRfZXF1YWxzKHVybCwgIiIpOworICAgICAgYXNzZXJ0X3Ro
cm93c19kb20oIlNlY3VyaXR5RXJyb3IiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGlmcmFtZS5jb250
ZW50V2luZG93LmxvY2F0aW9uLmhyZWYgfSk7CisgICAgfSk7CiAgIH0sICJGcmFtZSBsb2NhdGlv
biBzaG91bGQgbm90IGJlIGFjY2Vzc2libGUgYWZ0ZXIgY3Jvc3Mtb3JpZ2luIG5hdmlnYXRpb24i
KTsKIAogICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB3b3JrZXIgPSAicmVz
b3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOwotICAgIHZhciBzY29wZSA9ICJyZXNv
dXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwotICAgIHZhciBjb250cm9sbGVyLCBm
cmFtZSwgY2xpZW50SWQ7Ci0KLSAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9h
bmRfcmVnaXN0ZXIodCwgd29ya2VyLCBzY29wZSkKLSAgICAgIC50aGVuKHJlZyA9PiB7Ci0gICAg
ICAgIGNvbnRyb2xsZXIgPSByZWcuaW5zdGFsbGluZzsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9y
X3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7Ci0gICAgICB9KQotICAgICAg
LnRoZW4oX19fID0+IHdpdGhfaWZyYW1lKHNjb3BlKSkKLSAgICAgIC50aGVuKGYgPT4gewotICAg
ICAgICBmcmFtZSA9IGY7Ci0gICAgICAgIGZldGNoX3Rlc3RzX2Zyb21fd29ya2VyKGNvbnRyb2xs
ZXIpOwotICAgICAgICByZXR1cm4gd2FpdF9mb3JfbWVzc2FnZSgpCi0gICAgICB9KQotICAgICAg
LnRoZW4oKHtpZH0pID0+IGNsaWVudElkID0gaWQpCi0gICAgICAudGhlbihfX18gPT4gcnVuX3Rl
c3QoY29udHJvbGxlciwgY2xpZW50SWQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9hYm91dF9ibGFu
ayIpKQotICAgICAgLnRoZW4oKHtyZXN1bHQsIHVybH0pID0+IHsKLSAgICAgICAgYXNzZXJ0X2Vx
dWFscyhyZXN1bHQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9hYm91dF9ibGFuayIpOwotICAgICAg
ICBhc3NlcnRfZXF1YWxzKAotICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24u
aHJlZiwKKyAgICByZXR1cm4gd2l0aF9jb250cm9sbGVkX2lmcmFtZV9hbmRfdXJsKHQsICd0ZXN0
X2NsaWVudF9uYXZpZ2F0ZV9hYm91dF9ibGFuaycsIGFzeW5jIChpZnJhbWUsIHVybCkgPT4gewor
ICAgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgICBpZnJhbWUuY29udGVudFdpbmRvdy5sb2Nh
dGlvbi5ocmVmLAogICAgICAgICAgIG5ldyBVUkwoInJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUt
ZnJhbWUuaHRtbCIsCiAgICAgICAgICAgICAgICAgICBsb2NhdGlvbikudG9TdHJpbmcoKSk7Ci0g
ICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5zdHlsZSA9ICJiYWNrZ3Jv
dW5kLWNvbG9yOiBncmVlbiIKLSAgICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgICB9KQotICAg
ICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbihfX18gPT4gc2Vy
dmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSkpOworICAgICAgaWZyYW1lLmNvbnRlbnRX
aW5kb3cuZG9jdW1lbnQuYm9keS5zdHlsZSA9ICJiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbiIKKyAg
ICB9KTsKICAgfSwgIkZyYW1lIGxvY2F0aW9uIHNob3VsZCBub3QgdXBkYXRlIG9uIGZhaWxlZCBh
Ym91dDpibGFuayBuYXZpZ2F0aW9uIik7CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsK
LSAgICB2YXIgd29ya2VyID0gInJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIjsK
LSAgICB2YXIgc2NvcGUgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sIjsK
LSAgICB2YXIgY29udHJvbGxlciwgZnJhbWUsIGNsaWVudElkOwotCi0gICAgcmV0dXJuIHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUpCi0gICAg
ICAudGhlbihyZWcgPT4gewotICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxpbmc7Ci0g
ICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFjdGl2YXRl
ZCIpOwotICAgICAgfSkKLSAgICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0g
ICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRjaF90ZXN0
c19mcm9tX3dvcmtlcihjb250cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX21lc3Nh
Z2UoKQotICAgICAgfSkKLSAgICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlkKQotICAg
ICAgLnRoZW4oX19fID0+IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVzdF9jbGll
bnRfbmF2aWdhdGVfbWl4ZWRfY29udGVudCIpKQotICAgICAgLnRoZW4oKHtyZXN1bHQsIHVybH0p
ID0+IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXN1bHQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0
ZV9taXhlZF9jb250ZW50Iik7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAgZnJh
bWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmLAorICAgIHJldHVybiB3aXRoX2NvbnRyb2xs
ZWRfaWZyYW1lX2FuZF91cmwodCwgJ3Rlc3RfY2xpZW50X25hdmlnYXRlX21peGVkX2NvbnRlbnQn
LCBhc3luYyAoaWZyYW1lLCB1cmwpID0+IHsKKyAgICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAg
ICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24uaHJlZiwKICAgICAgICAgICBuZXcgVVJM
KCJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiLAogICAgICAgICAgICAgICAg
ICAgbG9jYXRpb24pLnRvU3RyaW5nKCkpOwotICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmRv
Y3VtZW50LmJvZHkuc3R5bGUgPSAiYmFja2dyb3VuZC1jb2xvcjogZ3JlZW4iCi0gICAgICAgIGZy
YW1lLnJlbW92ZSgpOwotICAgICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9u
KHQpKQotICAgICAgLnRoZW4oX19fID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2Nv
cGUpKTsKKyAgICAgIGlmcmFtZS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuc3R5bGUgPSAi
YmFja2dyb3VuZC1jb2xvcjogZ3JlZW4iCisgICAgfSk7CiAgIH0sICJGcmFtZSBsb2NhdGlvbiBz
aG91bGQgbm90IHVwZGF0ZSBvbiBmYWlsZWQgbWl4ZWQtY29udGVudCBuYXZpZ2F0aW9uIik7CiA8
L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC11cmwtb2YtYmxv
Yi11cmwtd29ya2VyLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVu
dC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
ZjdhN2MxODkyNTY4ZjhlNzU0ZWE5Y2M5MmIzZGJkYWZhNzc3ZGRkCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIENsaWVudC51cmwgb2YgYSBibG9i
IFVSTCB3b3JrZXIgc2hvdWxkIGJlIGEgYmxvYiBVUkwuIGFzc2VydF9ub3RfZXF1YWxzOiB3b3Jr
ZXIgY2xpZW50IHNob3VsZCBleGlzdCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAib25lIHdvcmtlciBj
bGllbnQgc2hvdWxkIGV4aXN0IgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGll
bnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
Y2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45N2Ey
ZmNmOThmMjkwYzI5MGIzNDg5YjgxYzkxODc5MjJlM2U3MTFiCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRt
bApAQCAtMCwwICsxLDI5IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5TZXJ2aWNlIFdvcmtl
cjogY2xpZW50LnVybCBvZiBhIHdvcmtlciBjcmVhdGVkIGZyb20gYSBibG9iIFVSTDwvdGl0bGU+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPHNjcmlw
dD4KKworY29uc3QgU0NSSVBUID0gJ3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdv
cmtlci5qcyc7Citjb25zdCBTQ09QRSA9ICdyZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVy
bC13b3JrZXIuaHRtbCc7CisKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICBjb25zdCBy
ZWcgPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJ
UFQsIFNDT1BFKTsKKyAgdC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBh
d2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisg
IGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoU0NPUEUpOworICB0LmFkZF9jbGVhbnVw
KF8gPT4gZnJhbWUucmVtb3ZlKCkpOworICBhc3NlcnRfbm90X2VxdWFscyhmcmFtZS5jb250ZW50
V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsCisgICAgICAgICAgICAg
ICAgICAgIG51bGwsICdmcmFtZSBzaG91bGQgYmUgY29udHJvbGxlZCcpOworCisgIGNvbnN0IHJl
c3BvbnNlID0gYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy5jcmVhdGVBbmRGZXRjaEZyb21CbG9i
V29ya2VyKCk7CisKKyAgYXNzZXJ0X25vdF9lcXVhbHMocmVzcG9uc2UucmVzdWx0LCAnb25lIHdv
cmtlciBjbGllbnQgc2hvdWxkIGV4aXN0JywKKyAgICAgICAgICAgICAgICAgICAgJ3dvcmtlciBj
bGllbnQgc2hvdWxkIGV4aXN0Jyk7CisgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UucmVzdWx0LCBy
ZXNwb25zZS5leHBlY3RlZCwKKyAgICAgICAgICAgICAgICAnY2xpZW50LnVybCBhbmQgd29ya2Vy
IGxvY2F0aW9uIGhyZWYgc2hvdWxkIGJlIHRoZSBzYW1lJyk7CisKK30sICdDbGllbnQudXJsIG9m
IGEgYmxvYiBVUkwgd29ya2VyIHNob3VsZCBiZSBhIGJsb2IgVVJMLicpOworPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdv
cmtlci5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNo
YWxsLWJsb2ItdXJsLXdvcmtlci5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODM2YmFm
YWY2ODQyOWUxMWY5M2I0OGEzNTNkM2FmZGIyZDlmMTg1ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworRkFJTCBUZXN0IENsaWVudHMubWF0Y2hBbGwo
KSB3aXRoIGEgYmxvYiBVUkwgd29ya2VyIGNsaWVudC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
MSBidXQgZ290IDAKK0ZBSUwgVGVzdCBDbGllbnRzLm1hdGNoQWxsKCkgd2l0aCBhbiB1bmNvbnRy
b2xsZWQgYmxvYiBVUkwgd29ya2VyIGNsaWVudC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMSBi
dXQgZ290IDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFs
bC1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMt
bWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzI5YmFjOGI4
OTRhMmM1MDgyOGFlMzQ2OWQzZTE4MWQyMjdmZTdhYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLmh0bWwK
QEAgLTAsMCArMSw4NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+U2VydmljZSBXb3JrZXI6
IENsaWVudHMubWF0Y2hBbGwgd2l0aCBhIGJsb2IgVVJMIHdvcmtlciBjbGllbnQ8L3RpdGxlPgor
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+
Citjb25zdCBTQ1JJUFQgPSAncmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtd29ya2VyLmpzJzsK
KworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNl
cy9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odG1sJzsKKworICBjb25zdCByZWcg
PSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQs
IHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2Fp
dCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIGNv
bnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICB0LmFkZF9jbGVhbnVwKF8g
PT4gZnJhbWUucmVtb3ZlKCkpOworCisgIHsKKyAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZnJh
bWUuY29udGVudFdpbmRvdy53YWl0Rm9yV29ya2VyKCk7CisgICAgYXNzZXJ0X2VxdWFscyhtZXNz
YWdlLmRhdGEsICdXb3JrZXIgaXMgcmVhZHkuJywKKyAgICAgICAgICAgICAgICAgICdXb3JrZXIg
c2hvdWxkIHJlcGx5IHRvIHRoZSBtZXNzYWdlLicpOworICB9CisKKyAgY29uc3QgY2hhbm5lbCA9
IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOworICBjb25zdCBtZXNzYWdlID0gYXdhaXQgbmV3IFByb21p
c2UocmVzb2x2ZSA9PiB7CisgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSByZXNvbHZlOwor
ICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxl
ci5wb3N0TWVzc2FnZSgKKyAgICAgIHtwb3J0OiBjaGFubmVsLnBvcnQyLCBvcHRpb25zOiB7dHlw
ZTogJ3dvcmtlcid9fSwgW2NoYW5uZWwucG9ydDJdKTsKKyAgfSk7CisKKyAgY2hlY2tNZXNzYWdl
RXZlbnQobWVzc2FnZSk7CisKK30sICdUZXN0IENsaWVudHMubWF0Y2hBbGwoKSB3aXRoIGEgYmxv
YiBVUkwgd29ya2VyIGNsaWVudC4nKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7Cisg
IGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9ibGFuay5odG1sJzsKKworICBjb25zdCByZWcgPSBh
d2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIHNj
b3BlKTsKKyAgdC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2FpdCB3
YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIGNvbnN0
IHdvcmtlclNjcmlwdCA9IGAKKyAgICBzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7CisgICAgICBz
ZWxmLnBvc3RNZXNzYWdlKCJXb3JrZXIgaXMgcmVhZHkuIik7CisgICAgfTsKKyAgYDsKKyAgY29u
c3QgYmxvYiA9IG5ldyBCbG9iKFt3b3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3Jp
cHQnIH0pOworICBjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKKyAg
Y29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihibG9iVXJsKTsKKworICB7CisgICAgY29uc3QgbWVz
c2FnZSA9IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgICAgd29ya2VyLm9ubWVz
c2FnZSA9IHJlc29sdmU7CisgICAgICB3b3JrZXIucG9zdE1lc3NhZ2UoIlBpbmcgdG8gd29ya2Vy
LiIpOworICAgIH0pOworICAgIGFzc2VydF9lcXVhbHMobWVzc2FnZS5kYXRhLCAnV29ya2VyIGlz
IHJlYWR5LicsCisgICAgICAgICAgICAgICAgICAnV29ya2VyIHNob3VsZCByZXBseSB0byB0aGUg
bWVzc2FnZS4nKTsKKyAgfQorCisgIGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwo
KTsKKyAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAg
IGNoYW5uZWwucG9ydDEub25tZXNzYWdlID0gcmVzb2x2ZTsKKyAgICByZWcuYWN0aXZlLnBvc3RN
ZXNzYWdlKAorICAgICAge3BvcnQ6IGNoYW5uZWwucG9ydDIsCisgICAgICAgb3B0aW9uczoge2lu
Y2x1ZGVVbmNvbnRyb2xsZWQ6IHRydWUsIHR5cGU6ICd3b3JrZXInfX0sCisgICAgICBbY2hhbm5l
bC5wb3J0Ml0KKyAgICApOworICB9KTsKKworICBjaGVja01lc3NhZ2VFdmVudChtZXNzYWdlKTsK
KworfSwgJ1Rlc3QgQ2xpZW50cy5tYXRjaEFsbCgpIHdpdGggYW4gdW5jb250cm9sbGVkIGJsb2Ig
VVJMIHdvcmtlciBjbGllbnQuJyk7CisKK2Z1bmN0aW9uIGNoZWNrTWVzc2FnZUV2ZW50KGUpIHsK
KyAgYXNzZXJ0X2VxdWFscyhlLmRhdGEubGVuZ3RoLCAxKTsKKworICBjb25zdCB3b3JrZXJDbGll
bnQgPSBlLmRhdGFbMF07CisgIGFzc2VydF9lcXVhbHMod29ya2VyQ2xpZW50WzBdLCB1bmRlZmlu
ZWQpOyAvLyB2aXNpYmlsaXR5U3RhdGUKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbMV0s
IHVuZGVmaW5lZCk7IC8vIGZvY3VzZWQKKyAgYXNzZXJ0X3RydWUod29ya2VyQ2xpZW50WzJdLmlu
Y2x1ZGVzKCdibG9iOicpKTsgLy8gdXJsCisgIGFzc2VydF9lcXVhbHMod29ya2VyQ2xpZW50WzNd
LCAnd29ya2VyJyk7IC8vIHR5cGUKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbNF0sICdu
b25lJyk7IC8vIGZyYW1lVHlwZQorfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9jcmVkZW50aWFscy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9jcmVkZW50aWFscy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggYjY0NzBiNGEyMWUxOGQ0NzQx
ODMwNDdkMjY4MWNkZTZkM2Y2MGNhNC4uOWQzZTRjYzNkYWZkOGYzYmJlNGM1M2EwZDNjNzJlN2E3
NTcyZDIwZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY3JlZGVudGlhbHMuaHR0cHMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxzLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMiw0ICsyLDYgQEAKIFBBU1MgU2V0IGNvb2tpZXMgYXMgaW5pdGlhbGl6
YXRpb24KIFBBU1MgTWFpbiBzY3JpcHQgc2hvdWxkIGhhdmUgY3JlZGVudGlhbHMKIEZBSUwgSW1w
b3J0ZWQgc2NyaXB0IHNob3VsZCBoYXZlIGNyZWRlbnRpYWxzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogbnVsbCBpcyBub3Qg
YW4gb2JqZWN0IChldmFsdWF0aW5nICd3b3JrZXIucG9zdE1lc3NhZ2UnKSIKK0ZBSUwgTW9kdWxl
IHdpdGggYW4gaW1wb3J0ZWQgc3RhdGVtZW50IHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IG51bGwgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnd29ya2VyLnBvc3RNZXNz
YWdlJykiCitGQUlMIFNjcmlwdCB3aXRoIHNlcnZpY2Ugd29ya2VyIHNlcnZlZCBhcyBtb2R1bGVz
IHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscyBhc3NlcnRfZXF1YWxzOiBuZXcgbW9kdWxlIHdv
cmtlciBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlhbHMgZXhwZWN0ZWQgKHVuZGVmaW5lZCkgdW5k
ZWZpbmVkIGJ1dCBnb3QgKHN0cmluZykgIjEiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2NyZWRlbnRpYWxzLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVkZW50aWFs
cy5odHRwcy5odG1sCmluZGV4IDlkNjE1ZWRhMWRkOGM3Yjk5NGFkOGFhMjBjZmUyYmNhY2FkZTRk
YTguLjBhOTBkYzI4OTdjMjczMjM2ODJhNmUxNmJmZDZhYWE1MzcwODU1ZTAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxzLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvY3JlZGVudGlhbHMuaHR0cHMuaHRtbApAQCAtNjEsNSArNjEsNDAgQEAgcHJvbWlz
ZV90ZXN0KGFzeW5jIHQgPT4gewogICBhc3NlcnRfZXF1YWxzKHVwZGF0ZWRfY29va2llc1tDT09L
SUVfTkFNRV0sICcxJywKICAgICAgICAgICAgICAgICAndXBkYXRlZCB3b3JrZXIgaGFzIGNyZWRl
bnRpYWxzJyk7CiB9LCAnSW1wb3J0ZWQgc2NyaXB0IHNob3VsZCBoYXZlIGNyZWRlbnRpYWxzJyk7
CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3Qga2V5ID0gdG9rZW4oKTsKKyAg
Y29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRf
cmVnaXN0ZXIoCisgICAgICB0LCBgcmVzb3VyY2VzL2ltcG9ydC1lY2hvLWNvb2tpZS13b3JrZXIt
bW9kdWxlLnB5P2tleT0ke2tleX1gLCBTQ09QRSwge3R5cGU6ICdtb2R1bGUnfSk7CisgIHQuYWRk
X2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgIGNvbnN0IHdvcmtl
ciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOworCisgIGNvbnN0IGNvb2tpZXMgPSBhd2FpdCBn
ZXRfY29va2llcyh3b3JrZXIpOworICBhc3NlcnRfZXF1YWxzKGNvb2tpZXNbQ09PS0lFX05BTUVd
LCB1bmRlZmluZWQsICduZXcgbW9kdWxlIHdvcmtlciBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlh
bHMnKTsKKworICBhd2FpdCByZWdpc3RyYXRpb24udXBkYXRlKCk7CisgIGNvbnN0IHVwZGF0ZWRf
d29ya2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7CisgIGNvbnN0IHVwZGF0ZWRfY29va2ll
cyA9IGF3YWl0IGdldF9jb29raWVzKHVwZGF0ZWRfd29ya2VyKTsKKyAgYXNzZXJ0X2VxdWFscyh1
cGRhdGVkX2Nvb2tpZXNbQ09PS0lFX05BTUVdLCB1bmRlZmluZWQsCisgICAgICAgICAgICAgICAg
J3VwZGF0ZWQgd29ya2VyIHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworfSwgJ01vZHVs
ZSB3aXRoIGFuIGltcG9ydGVkIHN0YXRlbWVudCBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlhbHMn
KTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCBrZXkgPSB0b2tlbigpOwor
ICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2Fu
ZF9yZWdpc3RlcigKK3QsIGByZXNvdXJjZXMvZWNoby1jb29raWUtd29ya2VyLnB5P2tleT0ke2tl
eX1gLCBTQ09QRSwge3R5cGU6ICdtb2R1bGUnfSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVn
aXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgIGNvbnN0IHdvcmtlciA9IHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nOworCisgIGNvbnN0IGNvb2tpZXMgPSBhd2FpdCBnZXRfY29va2llcyh3b3JrZXIp
OworICBhc3NlcnRfZXF1YWxzKGNvb2tpZXNbQ09PS0lFX05BTUVdLCB1bmRlZmluZWQsICduZXcg
bW9kdWxlIHdvcmtlciBzaG91bGQgbm90IGhhdmUgY3JlZGVudGlhbHMnKTsKKworICBhd2FpdCBy
ZWdpc3RyYXRpb24udXBkYXRlKCk7CisgIGNvbnN0IHVwZGF0ZWRfd29ya2VyID0gcmVnaXN0cmF0
aW9uLmluc3RhbGxpbmc7CisgIGNvbnN0IHVwZGF0ZWRfY29va2llcyA9IGF3YWl0IGdldF9jb29r
aWVzKHVwZGF0ZWRfd29ya2VyKTsKKyAgYXNzZXJ0X2VxdWFscyh1cGRhdGVkX2Nvb2tpZXNbQ09P
S0lFX05BTUVdLCB1bmRlZmluZWQsCisgICAgICAgICAgICAgICAgJ3VwZGF0ZWQgd29ya2VyIHNo
b3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworfSwgJ1NjcmlwdCB3aXRoIHNlcnZpY2Ugd29y
a2VyIHNlcnZlZCBhcyBtb2R1bGVzIHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworCiA8
L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RhdGEtdHJh
bnNmZXItZmlsZXMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10
cmFuc2Zlci1maWxlcy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggOGViYmZjM2MxODYxMzI1YmQ1
ZjhkNzQzZDJlN2IyYzc0ZjZhNjdlYy4uYzg1YzY3YTgyNzQ5NzAwYzZiY2M2MmI2MTI0YmE1NWFh
ZGFjN2NhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxl
cy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zl
ci1maWxlcy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKIAogCi1QQVNTIFBv
c3RpbmcgYSBGaWxlIGluIGEgbmF2aWdhdGlvbiBoYW5kbGVkIGJ5IGEgc2VydmljZSB3b3JrZXIK
K0ZBSUwgUG9zdGluZyBhIEZpbGUgaW4gYSBuYXZpZ2F0aW9uIGhhbmRsZWQgYnkgYSBzZXJ2aWNl
IHdvcmtlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiZm9vYmFyIiBidXQgZ290ICJGaWVsZFN0
b3JhZ2UoJ3Rlc3RpbnB1dCcsICduYW1lJywgJ2Zvb2JhcicpIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVzLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVzLmh0dHBzLmh0bWwKaW5kZXggY2M4YWI2ZTY3Mjcy
NmUxNjhiNDRkZmVlNWI0NzIwMDEyZmZmZWUwYS4uYzUwM2EyOGY5NjViMjk2YjM0NmRlMjM3YWVl
NzdiNDY0MTRiYjdjZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zl
ci1maWxlcy5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RhdGEtdHJhbnNmZXIt
ZmlsZXMuaHR0cHMuaHRtbApAQCAtMzUsNyArMzUsNyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHQp
ID0+IHsKICAgICAgIHJlc29sdmUoZS5kYXRhKTsKICAgICB9OwogICB9KTsKLSAgYXNzZXJ0X2Vx
dWFscyhkYXRhLCAiRmllbGRTdG9yYWdlKCd0ZXN0aW5wdXQnLCAnbmFtZScsICdmb29iYXInKSIp
OworICBhc3NlcnRfZXF1YWxzKGRhdGEsICJmb29iYXIiKTsKIH0sICdQb3N0aW5nIGEgRmlsZSBp
biBhIG5hdmlnYXRpb24gaGFuZGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyJyk7CiA8L3NjcmlwdD4K
IDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RldGFjaGVkLWNvbnRleHQu
aHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RldGFjaGVkLWNvbnRleHQuaHR0cHMuaHRt
bAppbmRleCBjYmI4MThmN2FjMGViY2I4N2VhNTNkOTRlODViNTA0NWQ5ZWFkMzVlLi43NDdhOTUz
ZjYyMDM3NThmMGZmN2QxOGZjNmViOGNjOWMxOWYxN2RlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9kZXRhY2hlZC1jb250ZXh0Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZGV0YWNoZWQtY29udGV4dC5odHRwcy5odG1sCkBAIC00NywxNCArNDcsMTQgQEAgcHJvbWlz
ZV90ZXN0KHQgPT4gewogICAgICAgICAgIC8vIHJlc29sdmUgb24gYSBkZXRhY2hlZCByZWdpc3Ry
YXRpb24uICBXZSBjYW4ndCBjaGVjayBmb3IKICAgICAgICAgICAvLyBhbiBleHBsaWNpdCByZWpl
Y3Rpb24sIHRob3VnaCwgYmVjYXVzZSBub3QgYWxsIGJyb3dzZXJzCiAgICAgICAgICAgLy8gZmly
ZSByZWplY3Rpb24gY2FsbGJhY2tzIG9uIGRldGFjaGVkIHByb21pc2VzLiAgSW5zdGVhZAotICAg
ICAgICAgIC8vIHdlIHdhaXQgZm9yIGEgZHVtbXkgc2NvcGUgdG8gaW5zdGFsbCwgYWN0aXZhdGUs
IGFuZAorICAgICAgICAgIC8vIHdlIHdhaXQgZm9yIGEgc2FtcGxlIHNjb3BlIHRvIGluc3RhbGws
IGFjdGl2YXRlLCBhbmQKICAgICAgICAgICAvLyB1bnJlZ2lzdGVyIGJlZm9yZSBkZWNsYXJpbmcg
dGhhdCB0aGUgcHJvbWlzZXMgZGlkIG5vdAogICAgICAgICAgIC8vIHJlc29sdmUuCiAgICAgICAg
ICAgci51bnJlZ2lzdGVyKCkudGhlbigoKSA9PiByZXNvbHZlZENvdW50ICs9IDEsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB7fSk7CiAgICAgICAgICAgci51cGRhdGUoKS50
aGVuKCgpID0+IHJlc29sdmVkQ291bnQgKz0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
KCkgPT4ge30pOwotICAgICAgICAgIHJldHVybiB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15
X3Njb3BlKHQsIHdpbmRvdyk7CisgICAgICAgICAgcmV0dXJuIHdhaXRfZm9yX2FjdGl2YXRpb25f
b25fc2FtcGxlX3Njb3BlKHQsIHdpbmRvdyk7CiAgICAgICAgIH0pCiAgICAgICAudGhlbigoKSA9
PiB7CiAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNvbHZlZENvdW50LCAwLApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY3NwLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1jc3AuaHR0cHMuaHRtbAppbmRleCA0ZjE3NjIyMGQ2MTAwYzRlZmIxYmZkYTgx
N2I4NGNmNWY1M2E0ZjNkLi4yNTIyZjQ4MjhiZDAyOTA3ZTc0MDEyMDYyZGE2OGQ2OGY1N2FhZTgz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jc3AuaHR0cHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jc3AuaHR0cHMuaHRtbApAQCAtNTksNyArNTksNyBA
QCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAgICAgIHJldHVybiBhc3NlcnRfcmVz
b2x2ZXMoCiAgICAgICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9hZF9pbWFnZSgKICAg
ICAgICAgICAgICAgICAgIC8vIFRoZSByZXF1ZXN0IGZvciBJTUFHRV9VUkwgd2lsbCBiZSBmZXRj
aGVkIGluIFNXLgotICAgICAgICAgICAgICAgICAgJy4vZHVtbXk/dXJsPScgKyBlbmNvZGVVUklD
b21wb25lbnQoSU1BR0VfVVJMKSksCisgICAgICAgICAgICAgICAgICAnLi9zYW1wbGU/dXJsPScg
KyBlbmNvZGVVUklDb21wb25lbnQoSU1BR0VfVVJMKSksCiAgICAgICAgICAgICAgICdBbGxvd2Vk
IHNjb3BlIGltYWdlIHJlc291cmNlIHdoaWNoIHdhcyBmZXRjaGVkIHZpYSBTVyBzaG91bGQgJyAr
CiAgICAgICAgICAgICAgICdiZSBsb2FkZWQuJyk7CiAgICAgICAgIH0pCkBAIC02Nyw3ICs2Nyw3
IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgcmV0dXJuIGFzc2VydF9y
ZWplY3RzKAogICAgICAgICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmxvYWRfaW1hZ2UoCiAg
ICAgICAgICAgICAgICAgICAvLyBUaGUgcmVxdWVzdCBmb3IgUkVNT1RFX0lNQUdFX1VSTCB3aWxs
IGJlIGZldGNoZWQgaW4gU1cuCi0gICAgICAgICAgICAgICAgICAnLi9kdW1teT9tb2RlPW5vLWNv
cnMmdXJsPScgKworICAgICAgICAgICAgICAgICAgJy4vc2FtcGxlP21vZGU9bm8tY29ycyZ1cmw9
JyArCiAgICAgICAgICAgICAgICAgICBlbmNvZGVVUklDb21wb25lbnQoUkVNT1RFX0lNQUdFX1VS
TCkpLAogICAgICAgICAgICAgICAnRGlzYWxsb3dlZCBzY29wZSBpbWFnZSByZXNvdXJjZSB3aGlj
aCB3YXMgZmV0Y2hlZCB2aWEgU1cgJyArCiAgICAgICAgICAgICAgICdzaG91bGQgbm90IGJlIGxv
YWRlZC4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWhhbmRs
ZWQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWhhbmRsZWQuaHR0
cHMuaHRtbAppbmRleCA4OWYzZDc5YTY4MWEyMmNmZDY4ODliM2MwNjAzZjczODhkNDYwNDcyLi44
ZDM5YjY1YmI2MjhiOGRjZGEwN2M4MDQxNjI1ODNjODA5ODZhNmMzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1oYW5kbGVkLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaGFuZGxlZC5odHRwcy5odG1sCkBAIC00MCw3ICs0MCw3
IEBAIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICAgICcgbmF2aWdhdGlvbiByZXF1ZXN0
Jyk7CiAKIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewotICBmcmFtZS5jb250ZW50V2luZG93
LmZldGNoKCdkdW1teS50eHQ/cmVzcG9uZFdpdGgtbm90LWNhbGxlZCcpOworICBmcmFtZS5jb250
ZW50V2luZG93LmZldGNoKCdzYW1wbGUudHh0P3Jlc3BvbmRXaXRoLW5vdC1jYWxsZWQnKTsKICAg
Y29uc3QgbWVzc2FnZSA9IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAg
YXNzZXJ0X2VxdWFscyhtZXNzYWdlLCAnUkVTT0xWRUQnKTsKIH0sICdGZXRjaEV2ZW50LmhhbmRs
ZWQgc2hvdWxkIHJlc29sdmUgd2hlbiByZXNwb25kV2l0aCgpIGlzIG5vdCBjYWxsZWQgZm9yIGEn
ICsKQEAgLTQ4LDcgKzQ4LDcgQEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAKIHByb21p
c2VfdGVzdChhc3luYyAodCkgPT4gewogICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKAotICAg
ICAgJ2R1bW15LnR4dD9yZXNwb25kV2l0aC1ub3QtY2FsbGVkLWFuZC1ldmVudC1jYW5jZWxlZCcp
LmNhdGNoKChlKSA9PiB7fSk7CisgICAgICAnc2FtcGxlLnR4dD9yZXNwb25kV2l0aC1ub3QtY2Fs
bGVkLWFuZC1ldmVudC1jYW5jZWxlZCcpLmNhdGNoKChlKSA9PiB7fSk7CiAgIGNvbnN0IG1lc3Nh
Z2UgPSBhd2FpdCB3YWl0X2Zvcl9tZXNzYWdlX2Zyb21fd29ya2VyKCk7CiAgIGFzc2VydF9lcXVh
bHMobWVzc2FnZSwgJ1JFSkVDVEVEJyk7CiB9LCAnRmV0Y2hFdmVudC5oYW5kbGVkIHNob3VsZCBy
ZWplY3Qgd2hlbiByZXNwb25kV2l0aCgpIGlzIG5vdCBjYWxsZWQgYW5kIHRoZScgKwpAQCAtNTYs
NyArNTYsNyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKIAogcHJvbWlzZV90ZXN0KGFz
eW5jICh0KSA9PiB7CiAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goCi0gICAgICAnZHVtbXku
dHh0P3Jlc3BvbmRXaXRoLWNhbGxlZC1hbmQtcHJvbWlzZS1yZXNvbHZlZCcpOworICAgICAgJ3Nh
bXBsZS50eHQ/cmVzcG9uZFdpdGgtY2FsbGVkLWFuZC1wcm9taXNlLXJlc29sdmVkJyk7CiAgIGNv
bnN0IG1lc3NhZ2UgPSBhd2FpdCB3YWl0X2Zvcl9tZXNzYWdlX2Zyb21fd29ya2VyKCk7CiAgIGFz
c2VydF9lcXVhbHMobWVzc2FnZSwgJ1JFU09MVkVEJyk7CiB9LCAnRmV0Y2hFdmVudC5oYW5kbGVk
IHNob3VsZCByZXNvbHZlIHdoZW4gdGhlIHByb21pc2UgcHJvdmlkZWQnICsKQEAgLTY0LDcgKzY0
LDcgQEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAKIHByb21pc2VfdGVzdChhc3luYyAo
dCkgPT4gewogICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKAotICAgICAgJ2R1bW15LnR4dD9y
ZXNwb25kV2l0aC1jYWxsZWQtYW5kLXByb21pc2UtcmVzb2x2ZWQtdG8taW52YWxpZC1yZXNwb25z
ZScpCisgICAgICAnc2FtcGxlLnR4dD9yZXNwb25kV2l0aC1jYWxsZWQtYW5kLXByb21pc2UtcmVz
b2x2ZWQtdG8taW52YWxpZC1yZXNwb25zZScpCiAgICAgICAuY2F0Y2goKGUpID0+IHt9KTsKICAg
Y29uc3QgbWVzc2FnZSA9IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAg
YXNzZXJ0X2VxdWFscyhtZXNzYWdlLCAnUkVKRUNURUQnKTsKQEAgLTczLDcgKzczLDcgQEAgcHJv
bWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAKIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewog
ICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKAotICAgICAgJ2R1bW15LnR4dD9yZXNwb25kV2l0
aC1jYWxsZWQtYW5kLXByb21pc2UtcmVqZWN0ZWQnKS5jYXRjaCgoZSkgPT4ge30pOworICAgICAg
J3NhbXBsZS50eHQ/cmVzcG9uZFdpdGgtY2FsbGVkLWFuZC1wcm9taXNlLXJlamVjdGVkJykuY2F0
Y2goKGUpID0+IHt9KTsKICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2Vf
ZnJvbV93b3JrZXIoKTsKICAgYXNzZXJ0X2VxdWFscyhtZXNzYWdlLCAnUkVKRUNURUQnKTsKIH0s
ICdGZXRjaEV2ZW50LmhhbmRsZWQgc2hvdWxkIHJlamVjdCB3aGVuIHRoZSBwcm9taXNlIHByb3Zp
ZGVkIHRvJyArCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1o
aXN0b3J5LWJhY2t3YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWJhY2t3YXJkLW5hdmlnYXRpb24tbWFudWFs
Lmh0dHBzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjZjU5MjJmMzk2YWZl
NGZhNGE0Nzg3OTE3ZmUwYWIzZmFhMzZmMGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtaGlzdG9y
eS1iYWNrd2FyZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxib2R5PgotPHA+Q2xpY2sgPGEgaHJlZj0i
cmVzb3VyY2VzL2luc3RhbGwtd29ya2VyLmh0bWw/aXNIaXN0b3J5TmF2aWdhdGlvbiZhbXA7c2Ny
aXB0PWZldGNoLWV2ZW50LXRlc3Qtd29ya2VyLmpzIj50aGlzIGxpbms8L2E+LgotICAgT25jZSB5
b3Ugc2VlICZxdW90O21ldGhvZCA9IEdFVCwuLi4mcXVvdDsgaW4gdGhlIHBhZ2UsIGdvIHRvIGFu
b3RoZXIgcGFnZSwgYW5kIHRoZW4gZ28gYmFjayB0byB0aGUgcGFnZSB1c2luZyB0aGUgQmFja3dh
cmQgYnV0dG9uLgotICAgWW91IHNob3VsZCBzZWUgJnF1b3Q7bWV0aG9kID0gR0VULCBpc0hpc3Rv
cnlOYXZpZ2F0aW9uID0gdHJ1ZSZxdW90Oy4KLTwvcD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLWhpc3RvcnktZm9yd2FyZC1u
YXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZl
bnQtaXMtaGlzdG9yeS1mb3J3YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQwMTkzOWIzY2IyZDkxOWExNWZmZDE2ZDM4Y2MzZTBj
ODY2YjQzZTkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtaGlzdG9yeS1mb3J3YXJkLW5hdmlnYXRp
b24tbWFudWFsLmh0dHBzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGJvZHk+Ci08cD5DbGljayA8YSBocmVmPSJyZXNvdXJjZXMvaW5zdGFsbC13
b3JrZXIuaHRtbD9pc0hpc3RvcnlOYXZpZ2F0aW9uJmFtcDtzY3JpcHQ9ZmV0Y2gtZXZlbnQtdGVz
dC13b3JrZXIuanMiPnRoaXMgbGluazwvYT4uCi0gICBPbmNlIHlvdSBzZWUgJnF1b3Q7bWV0aG9k
ID0gR0VULC4uLiZxdW90OyBpbiB0aGUgcGFnZSwgZ28gYmFjayB0byB0aGlzIHBhZ2UgdXNpbmcg
dGhlIEJhY2t3YXJkIGJ1dHRvbiwgYW5kIHRoZW4gZ28gdG8gdGhlIHNlY29uZCBwYWdlIHVzaW5n
IHRoZSBGb3J3YXJkIGJ1dHRvbi4KLSAgIFlvdSBzaG91bGQgc2VlICZxdW90O21ldGhvZCA9IEdF
VCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHRydWUmcXVvdDsuCi08L3A+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1yZWxvYWQt
aWZyYW1lLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51YWwuaHR0
cHMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NTZkZmI3MmEy
MTk1MDBiMDI1Y2Y2ZjViYWM1OWE4ZGU0MDQ5NTYwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJl
bG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsNCArMCwwIEBACi0KLQotRkFJTCBGZXRjaEV2ZW50I3JlcXVlc3QuaXNSZWxv
YWROYXZpZ2F0aW9uIGlzIHRydWUgZm9yIG1hbnVhbCByZWxvYWQuIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkICJtZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNlIiBidXQgZ290
ICJtZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1uYXZp
Z2F0aW9uLW1hbnVhbC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQt
aXMtcmVsb2FkLWlmcmFtZS1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBjZjFmZWNjZjZlNDQxMmUxMmYyMmE3Y2UxZWJlNTVhNTRiYTc0
OGYxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdhdGlvbi1tYW51
YWwuaHR0cHMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhRE9DVFlQRSBo
dG1sPgotPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KLTxib2R5
PgotPHNjcmlwdD4KLWNvbnN0IHdvcmtlciA9ICdyZXNvdXJjZXMvZmV0Y2gtZXZlbnQtdGVzdC13
b3JrZXIuanMnOwotCi1wcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKLSAgY29uc3Qgc2NvcGUg
PSAncmVzb3VyY2VzL3NpbXBsZS5odG1sP2lzUmVsb2FkTmF2aWdhdGlvbic7Ci0KLSAgY29uc3Qg
cmVnID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29y
a2VyLCBzY29wZSk7Ci0gIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAn
YWN0aXZhdGVkJyk7Ci0gIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOwot
ICBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRlbnREb2N1bWVudC5ib2R5LnRleHRDb250ZW50LAot
ICAgICAgICAgICAgICAgICdtZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNl
Jyk7Ci0gIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7Ci0gICAgZnJhbWUuYWRkRXZl
bnRMaXN0ZW5lcignbG9hZCcsIHJlc29sdmUpOwotICAgIGZyYW1lLmNvbnRlbnREb2N1bWVudC5i
b2R5LmlubmVyVGV4dCA9Ci0gICAgICAnUmVsb2FkIHRoaXMgZnJhbWUgbWFudWFsbHkhJzsKLSAg
fSk7Ci0gIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRl
bnQsCi0gICAgICAnbWV0aG9kID0gR0VULCBpc1JlbG9hZE5hdmlnYXRpb24gPSB0cnVlJyk7Ci0g
IGZyYW1lLnJlbW92ZSgpOwotICBhd2FpdCByZWcudW5yZWdpc3RlcigpOwotfSwgJ0ZldGNoRXZl
bnQjcmVxdWVzdC5pc1JlbG9hZE5hdmlnYXRpb24gaXMgdHJ1ZSBmb3IgbWFudWFsIHJlbG9hZC4n
KTsKLQotPC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1ldmVudC1pcy1yZWxvYWQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1h
bnVhbC5odHRwcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMzQ5ZjA3YzM2
YzIyNmU3NzMyM2FiZGEwNWVlZmVjMjVmYzNiMjFkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJl
bG9hZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOCAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxib2R5PgotPHA+Q2xpY2sgPGEgaHJlZj0icmVzb3Vy
Y2VzL2luc3RhbGwtd29ya2VyLmh0bWw/aXNSZWxvYWROYXZpZ2F0aW9uJnNjcmlwdD1mZXRjaC1l
dmVudC10ZXN0LXdvcmtlci5qcyI+dGhpcyBsaW5rPC9hPi4KLSAgIE9uY2UgeW91IHNlZSAmcXVv
dDttZXRob2QgPSBHRVQsLi4uJnF1b3Q7IGluIHRoZSBwYWdlLCByZWxvYWQgdGhlIHBhZ2UuCi0g
ICBZb3Ugd2lsbCBzZWUgJnF1b3Q7bWV0aG9kID0gR0VULCBpc1JlbG9hZE5hdmlnYXRpb24gPSB0
cnVlJnF1b3Q7LgotPC9wPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy1leHBl
Y3RlZC50eHQKaW5kZXggMTgxOGUwZDMxMDZhYTQ5Y2ZiZDMwZDVhYzA3MTJmZWQzMGU2MzJjNC4u
ZjZhNGYxYmJlYzY0MDNiM2ZjYjE0MmU4MjIzNmU2Y2M2NzI0MjdjMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZWZlcnJlci1wb2xpY3ku
aHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAKIEZBSUwgU2VydmljZSBXb3Jr
ZXIgcmVzcG9uZHMgdG8gZmV0Y2ggZXZlbnQgd2l0aCB0aGUgcmVmZXJyZXIgcG9saWN5IHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogTm90IGFsbG93ZWQgdG8gcmVxdWVzdCByZXNvdXJjZSIKLVBBU1MgU2VydmljZSBXb3JrZXIg
c2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgZGVmYXVsdCByZWZlcnJlciBwb2xpY3kK
LVBBU1MgU2VydmljZSBXb3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgcmVm
ZXJyZXIgVVJMIHdoZW4gYSBtZW1iZXIgb2YgUmVxdWVzdEluaXQgaXMgcHJlc2VudCAtIERlZmF1
bHQgUmVmZXJyZXIKK0ZBSUwgU2VydmljZSBXb3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2gg
d2l0aCB0aGUgZGVmYXVsdCByZWZlcnJlciBwb2xpY3kgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
IlJlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luIiBidXQgZ290
ICJSZWZlcnJlclBvbGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUiCitGQUlMIFNlcnZp
Y2UgV29ya2VyIHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggdGhlIHJlZmVycmVyIFVSTCB3
aGVuIGEgbWVtYmVyIG9mIFJlcXVlc3RJbml0IGlzIHByZXNlbnQgLSBEZWZhdWx0IFJlZmVycmVy
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJSZWZlcnJlcjogaHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NpbXBsZS5odG1sP3Jl
ZmVycmVyUG9saWN5XG5SZWZlcnJlclBvbGljeTogc3RyaWN0LW9yaWdpbi13aGVuLWNyb3NzLW9y
aWdpbiIgYnV0IGdvdCAiUmVmZXJyZXI6IGh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zaW1wbGUuaHRtbD9yZWZlcnJlclBvbGlj
eVxuUmVmZXJyZXJQb2xpY3k6IG5vLXJlZmVycmVyLXdoZW4tZG93bmdyYWRlIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZWZlcnJlci1wb2xpY3kuaHR0cHMu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRw
cy5odG1sCmluZGV4IDgwNGZkOWI0MjA0YzQyMjRjYjE1MjY3ZTI3OWQ3NGU4NzcwZWY3YzkuLmFm
NGIyMGE5YTRhN2I3NjY1MDk5NDRiNTlkYjMzMmZlNzBlOGNmNzggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1s
CkBAIC0yMiw3ICsyMiw3IEBAIGZ1bmN0aW9uIHJ1bl9yZWZlcnJlcl9wb2xpY3lfdGVzdHMoZnJh
bWUsIHJlZmVycmVyLCBocmVmLCBvcmlnaW4pIHsKICAgICAgICAgICBkb190ZXN0KHJlZmVycmVy
LAogICAgICAgICAgICAgcmVzcG9uc2VfdGV4dCwKICAgICAgICAgICAgICdSZWZlcnJlcjogJyAr
IGhyZWYgKyAnXG4nICsKLSAgICAgICAgICAgICdSZWZlcnJlclBvbGljeTogbm8tcmVmZXJyZXIt
d2hlbi1kb3duZ3JhZGUnLAorICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3Jp
Z2luLXdoZW4tY3Jvc3Mtb3JpZ2luJywKICAgICAgICAgICAgICdTZXJ2aWNlIFdvcmtlciBzaG91
bGQgcmVzcG9uZCB0byBmZXRjaCB3aXRoIHRoZSByZWZlcnJlciBVUkwgd2hlbiBhIG1lbWJlciBv
ZiBSZXF1ZXN0SW5pdCBpcyBwcmVzZW50Jyk7CiAgICAgICAgICAgdmFyIGh0dHBfdXJsID0gZ2V0
X2hvc3RfaW5mbygpWydIVFRQX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKwogICAgICAgICAgICAg
ICAgICAgICAgICAgICcvcmVzb3VyY2VzL3NpbXBsZS5odG1sP3JlZmVycmVyRnVsbCc7CkBAIC0z
NCw3ICszNCw3IEBAIGZ1bmN0aW9uIHJ1bl9yZWZlcnJlcl9wb2xpY3lfdGVzdHMoZnJhbWUsIHJl
ZmVycmVyLCBocmVmLCBvcmlnaW4pIHsKICAgICAgICAgICBkb190ZXN0KHJlZmVycmVyLAogICAg
ICAgICAgICAgcmVzcG9uc2VfdGV4dCwKICAgICAgICAgICAgICdSZWZlcnJlcjogXG4nICsKLSAg
ICAgICAgICAgICdSZWZlcnJlclBvbGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnLAor
ICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3Jp
Z2luJywKICAgICAgICAgICAgICdTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRj
aCB3aXRoIG5vIHJlZmVycmVyIHdoZW4gYSBtZW1iZXIgb2YgUmVxdWVzdEluaXQgaXMgcHJlc2Vu
dCB3aXRoIGFuIEhUVFAgcmVxdWVzdCcpOwogICAgICAgICAgIHJldHVybiBmcmFtZS5jb250ZW50
V2luZG93LmZldGNoKCdyZXNvdXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJGdWxsJywKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVmZXJyZXJQb2xpY3k6ICIi
LCByZWZlcnJlcjogcmVmZXJyZXJ9KTsKQEAgLTQ0LDcgKzQ0LDcgQEAgZnVuY3Rpb24gcnVuX3Jl
ZmVycmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgcmVmZXJyZXIsIGhyZWYsIG9yaWdpbikgewogICAg
ICAgICAgIGRvX3Rlc3QocmVmZXJyZXIsCiAgICAgICAgICAgICByZXNwb25zZV90ZXh0LAogICAg
ICAgICAgICAgJ1JlZmVycmVyOiAnICsgaHJlZiArICdcbicgKwotICAgICAgICAgICAgJ1JlZmVy
cmVyUG9saWN5OiBuby1yZWZlcnJlci13aGVuLWRvd25ncmFkZScsCisgICAgICAgICAgICAnUmVm
ZXJyZXJQb2xpY3k6IHN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nLAogICAgICAgICAg
ICAgJ1NlcnZpY2UgV29ya2VyIHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggdGhlIHJlZmVy
cmVyIHdpdGggIiInKTsKICAgICAgICAgICB2YXIgaHR0cF91cmwgPSBnZXRfaG9zdF9pbmZvKClb
J0hUVFBfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCiAgICAgICAgICAgICAgICAgICAgICAgICAg
Jy9yZXNvdXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJGdWxsJzsKQEAgLTU2LDcgKzU2LDcgQEAg
ZnVuY3Rpb24gcnVuX3JlZmVycmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgcmVmZXJyZXIsIGhyZWYs
IG9yaWdpbikgewogICAgICAgICAgIGRvX3Rlc3QocmVmZXJyZXIsCiAgICAgICAgICAgICByZXNw
b25zZV90ZXh0LAogICAgICAgICAgICAgJ1JlZmVycmVyOiBcbicgKwotICAgICAgICAgICAgJ1Jl
ZmVycmVyUG9saWN5OiBuby1yZWZlcnJlci13aGVuLWRvd25ncmFkZScsCisgICAgICAgICAgICAn
UmVmZXJyZXJQb2xpY3k6IHN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nLAogICAgICAg
ICAgICAgJ1NlcnZpY2UgV29ya2VyIHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggbm8gcmVm
ZXJyZXIgd2l0aCAiIicpOwogICAgICAgICAgIHJldHVybiBmcmFtZS5jb250ZW50V2luZG93LmZl
dGNoKCdyZXNvdXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJGdWxsJywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVmZXJyZXJQb2xpY3k6ICJvcmlnaW4iLCBy
ZWZlcnJlcjogcmVmZXJyZXJ9KTsKQEAgLTI1Myw3ICsyNTMsNyBAQCBwcm9taXNlX3Rlc3QoZnVu
Y3Rpb24odCkgewogICAgICAgLnRoZW4oZnVuY3Rpb24oZikgewogICAgICAgICAgIGZyYW1lID0g
ZjsKICAgICAgICAgICB0ZXN0KCgpID0+IHsKLSAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJh
bWUuY29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRlbnQsICdSZWZlcnJlclBvbGljeTogbm8t
cmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnKTsKKyAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZnJh
bWUuY29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRlbnQsICdSZWZlcnJlclBvbGljeTogc3Ry
aWN0LW9yaWdpbi13aGVuLWNyb3NzLW9yaWdpbicpOwogICAgICAgICAgIH0sICdTZXJ2aWNlIFdv
cmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRjaCB3aXRoIHRoZSBkZWZhdWx0IHJlZmVycmVyIHBv
bGljeScpOwogICAgICAgICAgIC8vIEZpcnN0LCBydW4gdGhlIHJlZmVycmVyIHBvbGljeSB0ZXN0
cyB3aXRob3V0IHBhc3NpbmcgYSByZWZlcnJlciBpbiBSZXF1ZXN0SW5pdC4KICAgICAgICAgICBy
ZXR1cm4gcnVuX3JlZmVycmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgdW5kZWZpbmVkLCBmcmFtZS5j
b250ZW50RG9jdW1lbnQubG9jYXRpb24uaHJlZiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtd2l0aGluLXN3Lmh0dHBzLmh0bWwKaW5kZXggZjVhNjBjMzA2MDk2MWEyYjE2
NzRjODk1OWM1ZDRhMGFmN2I1NDUyYS4uMGI1MmIxODMwNWZhYTFlMzZlYTY4NzNlZDUzNDkxM2Fk
YjZlNWM3NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGlu
LXN3Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGlu
LXN3Lmh0dHBzLmh0bWwKQEAgLTI4LDEyICsyOCwxMiBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9
PiB7CiAKICAgY29uc3QgaWZyYW1lID0gYXdhaXQgcmVnaXN0ZXJTd0FuZE9wZW5GcmFtZSh0KTsK
ICAgY29uc3QgZmV0Y2hUZXh0ID0KLSAgICAgIGF3YWl0IGlmcmFtZS5jb250ZW50V2luZG93LmZl
dGNoKCdkdW1teS50eHQnKS50aGVuKHIgPT4gci50ZXh0KCkpOworICAgICAgYXdhaXQgaWZyYW1l
LmNvbnRlbnRXaW5kb3cuZmV0Y2goJ3NhbXBsZS50eHQnKS50aGVuKHIgPT4gci50ZXh0KCkpOwog
CiAgIGNvbnN0IGNhY2hlID0gYXdhaXQgaWZyYW1lLmNvbnRlbnRXaW5kb3cuY2FjaGVzLm9wZW4o
J3Rlc3QnKTsKLSAgYXdhaXQgY2FjaGUuYWRkKCdkdW1teS50eHQnKTsKKyAgYXdhaXQgY2FjaGUu
YWRkKCdzYW1wbGUudHh0Jyk7CiAKLSAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5tYXRj
aCgnZHVtbXkudHh0Jyk7CisgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2FjaGUubWF0Y2goJ3Nh
bXBsZS50eHQnKTsKICAgY29uc3QgY2FjaGVUZXh0ID0gYXdhaXQgKHJlc3BvbnNlID8gcmVzcG9u
c2UudGV4dCgpIDogJ2NhY2hlIG1hdGNoIGZhaWxlZCcpOwogICBhc3NlcnRfZXF1YWxzKGZldGNo
VGV4dCwgJ2ludGVyY2VwdGVkJywgJ2ZldGNoIGludGVyY2VwdGVkJyk7CiAgIGFzc2VydF9lcXVh
bHMoY2FjaGVUZXh0LCAnaW50ZXJjZXB0ZWQnLCAnY2FjaGUuYWRkIGludGVyY2VwdGVkJyk7CkBA
IC00Miw4ICs0Miw4IEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKIHByb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKICAgY29uc3QgaWZyYW1lID0gYXdhaXQgcmVnaXN0ZXJTd0FuZE9wZW5GcmFt
ZSh0KTsKICAgY29uc3QgW2ZldGNoVGV4dCwgY2FjaGVUZXh0XSA9IGF3YWl0IFByb21pc2UuYWxs
KFsKLSAgICBpZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCgnZHVtbXkudHh0LWlubmVyLWZldGNo
JykudGhlbihyID0+IHIudGV4dCgpKSwKLSAgICBpZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCgn
ZHVtbXkudHh0LWlubmVyLWNhY2hlJykudGhlbihyID0+IHIudGV4dCgpKQorICAgIGlmcmFtZS5j
b250ZW50V2luZG93LmZldGNoKCdzYW1wbGUudHh0LWlubmVyLWZldGNoJykudGhlbihyID0+IHIu
dGV4dCgpKSwKKyAgICBpZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCgnc2FtcGxlLnR4dC1pbm5l
ci1jYWNoZScpLnRoZW4ociA9PiByLnRleHQoKSkKICAgXSk7CiAgIGFzc2VydF9lcXVhbHMoZmV0
Y2hUZXh0LCAnSGVsbG8gd29ybGRcbicsICdmZXRjaCB3aXRoaW4gU1cgbm90IGludGVyY2VwdGVk
Jyk7CiAgIGFzc2VydF9lcXVhbHMoY2FjaGVUZXh0LCAnSGVsbG8gd29ybGRcbicsCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRwcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNmZm
YTVlNWQxMDFhYWFhMDQ2NDFmNTNlZDNkODQ3ZjlhOTIxYzIyMC4uNWQyYjlhNDMyZGEwMzQ1Zjkw
MzA3N2YwMGI2ZWYwYTYwZmVlMmRiNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtZXZlbnQuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LWV2ZW50Lmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjEsNiArMjEsMTYgQEAgUEFTUyBTZXJ2aWNl
IFdvcmtlciByZXNwb25kcyB0byBmZXRjaCBldmVudCB3aXRoIHRoZSBjb3JyZWN0IGludGVncml0
eV9tZXRhZGF0YQogUEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBzdHJpbmcKIEZBSUwgRmV0Y2hF
dmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IFJlYWRhYmxlU3Ry
ZWFtIHVwbG9hZGluZyBpcyBub3Qgc3VwcG9ydGVkIgogUEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMg
YSBzdHJpbmcgYW5kIGlzIHBhc3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrCitGQUlMIEZldGNoRXZl
bnQjYm9keSBpcyBhIFJlYWRhYmxlU3RyZWFtIGFuZCBpcyBwYXNzZWQgdG8gbmV0d29yayBmYWxs
YmFjayBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogUmVhZGFibGVTdHJlYW0gdXBsb2FkaW5nIGlzIG5vdCBzdXBw
b3J0ZWQiCitGQUlMIEZldGNoRXZlbnQjYm9keSBpcyBhIG5vbmUgVWludDhBcnJheSBSZWFkYWJs
ZVN0cmVhbSBhbmQgaXMgcGFzc2VkIHRvIGEgc2VydmljZSB3b3JrZXIgcHJvbWlzZV9yZWplY3Rz
X2pzOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyB0aHJvdyBlIH0iIHRocmV3IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IFJlYWRhYmxlU3RyZWFtIHVwbG9hZGluZyBpcyBub3Qgc3VwcG9ydGVk
IiAoIk5vdFN1cHBvcnRlZEVycm9yIikgZXhwZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1
bmN0aW9uIFR5cGVFcnJvcigpIHsKKyAgICBbbmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIp
CitQQVNTIEZldGNoRXZlbnQjYm9keSBpcyBhIHN0cmluZywgdXNlZCBhbmQgcGFzc2VkIHRvIG5l
dHdvcmsgZmFsbGJhY2sKK0ZBSUwgRmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0s
IHVzZWQgYW5kIHBhc3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrIHByb21pc2VfcmVqZWN0c19qczog
ZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgdGhyb3cgZSB9IiB0aHJldyBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBSZWFkYWJsZVN0cmVhbSB1cGxvYWRpbmcgaXMgbm90IHN1cHBvcnRlZCIgKCJO
b3RTdXBwb3J0ZWRFcnJvciIpIGV4cGVjdGVkIGluc3RhbmNlIG9mIGZ1bmN0aW9uICJmdW5jdGlv
biBUeXBlRXJyb3IoKSB7CisgICAgW25hdGl2ZSBjb2RlXQorfSIgKCJUeXBlRXJyb3IiKQorUEFT
UyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBzdHJpbmcsIGNsb25lZCBhbmQgcGFzc2VkIHRvIG5ldHdv
cmsgZmFsbGJhY2sKK1BBU1MgRmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0sIGNs
b25lZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sKIFBBU1MgRmV0Y2hFdmVudCNib2R5
IGlzIGEgYmxvYgogUEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBibG9iIGFuZCBpcyBwYXNzZWQg
dG8gbmV0d29yayBmYWxsYmFjawogUEFTUyBTZXJ2aWNlIFdvcmtlciByZXNwb25kcyB0byBmZXRj
aCBldmVudCB3aXRoIHRoZSBjb3JyZWN0IGtlZXBhbGl2ZSB2YWx1ZQpAQCAtMzUsNSArNDUsOCBA
QCBGQUlMIEZldGNoRXZlbnQjcmVxdWVzdC5pc0hpc3RvcnlOYXZpZ2F0aW9uIGlzIGZhbHNlICh3
aXRoIGxvY2F0aW9uLnJlbG9hZCkgYXNzZQogRkFJTCBGZXRjaEV2ZW50I3JlcXVlc3QuaXNIaXN0
b3J5TmF2aWdhdGlvbiBpcyB0cnVlICh3aXRoIGhpc3RvcnkuZ28oLTIpKSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAibWV0aG9kID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gZmFsc2UiIGJ1
dCBnb3QgIm1ldGhvZCA9IEdFVCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKIEZB
SUwgRmV0Y2hFdmVudCNyZXF1ZXN0LmlzSGlzdG9yeU5hdmlnYXRpb24gaXMgdHJ1ZSAod2l0aCBo
aXN0b3J5LmdvKDIpKSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAibWV0aG9kID0gR0VULCBpc0hp
c3RvcnlOYXZpZ2F0aW9uID0gZmFsc2UiIGJ1dCBnb3QgIm1ldGhvZCA9IEdFVCwgaXNIaXN0b3J5
TmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKIEZBSUwgRmV0Y2hFdmVudCNyZXF1ZXN0LmlzSGlzdG9y
eU5hdmlnYXRpb24gaXMgdHJ1ZSAoUE9TVCArIGhpc3RvcnkuZ28oLTEpKSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAibWV0aG9kID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gZmFsc2UiIGJ1
dCBnb3QgIm1ldGhvZCA9IEdFVCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHVuZGVmaW5lZCIKK1BB
U1MgWEhSIHVwbG9hZCBwcm9ncmVzcyBldmVudHMgZm9yIHJlc3BvbnNlIGNvbWluZyBmcm9tIFNX
CitQQVNTIFhIUiB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzIGZvciBuZXR3b3JrIGZhbGxiYWNrCitQ
QVNTIEZldGNoIHdpdGggUE9TVCB3aXRoIHRleHQgb24gc3cgNDIxIHJlc3BvbnNlIHNob3VsZCBu
b3QgYmUgcmV0cmllZC4KIFBBU1MgcmVzdG9yZSBnbG9iYWwgc3RhdGUKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLWV2ZW50Lmh0dHBzLmh0bWwKaW5kZXggNDhmNzFlNDZjYjIyMTM2OTU4ZjYzYWVk
ZDNmZjE2NzU4YTVkZTU4MS4uNzcxZjFlMzE5Y2E0N2U2Y2ZlNjBkYjgzZmM3ZDQyYzJjNTVjYjY0
OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRwcy5odG1sCkBAIC0xNyw2ICsx
Nyw4IEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgICBjb25zdCByZWdpc3RyYXRpb24g
PQogICAgICAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0
LCB3b3JrZXIsIHNjb3BlKTsKICAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRp
b24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgICAgLy8gVGhpcyB3aWxsIGhhcHBlbiBh
ZnRlciBhbGwgb3RoZXIgdGVzdHMKICAgICBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAgICAgIHJl
dHVybiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpOwogICAgICAgfSwgJ3Jlc3RvcmUgZ2xvYmFs
IHN0YXRlJyk7CkBAIC00ODAsNiArNDgyLDE2NCBAQCBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAg
ICAgIH0pOwogICB9LCAnRmV0Y2hFdmVudCNib2R5IGlzIGEgc3RyaW5nIGFuZCBpcyBwYXNzZWQg
dG8gbmV0d29yayBmYWxsYmFjaycpOwogCisvLyBUZXN0IHRoYXQgdGhlIHJlcXVlc3QgYm9keSBp
cyBzZW50IHRvIG5ldHdvcmsgdXBvbiBuZXR3b3JrIGZhbGxiYWNrLAorLy8gZm9yIGEgUmVhZGFi
bGVTdHJlYW0gYm9keS4KK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBycyA9
IG5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoYykgeworICAgICAgYy5lbnF1ZXVlKCdpIGEnKTsK
KyAgICAgIGMuZW5xdWV1ZSgnbSB0aGUgcmVxdWVzdCcpOworICAgICAgdC5zdGVwX3RpbWVvdXQo
dC5zdGVwX2Z1bmMoKCkgPT4geworICAgICAgICBjLmVucXVldWUoJyBib2R5Jyk7CisgICAgICAg
IGMuY2xvc2UoKTsKKyAgICAgIH0sIDEwKSk7CisgICAgfX0pOworICAgIC8vIFNldCBwYWdlX3Vy
bCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gbmV0d29y
aworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4
IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAgY29uc3Qg
cGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxsYmFjay1z
dHJpbmcnOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91cmwpOwor
ICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisgICAgLy8gQWRk
ICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBlY2hvLWNvbnRl
bnQucHkuCisgICAgY29uc3QgZWNob191cmwgPSAnL2ZldGNoL2FwaS9yZXNvdXJjZXMvZWNoby1j
b250ZW50LnB5P2lnbm9yZSc7CisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmcmFtZS5jb250
ZW50V2luZG93LmZldGNoKGVjaG9fdXJsLCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAg
ICAgICBib2R5OiBycy5waXBlVGhyb3VnaChuZXcgVGV4dEVuY29kZXJTdHJlYW0oKSkKKyAgICB9
KTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgIGFzc2VydF9l
cXVhbHModGV4dCwKKyAgICAgICAgJ2kgYW0gdGhlIHJlcXVlc3QgYm9keScsCisgICAgICAgICd0
aGUgbmV0d29yayBmYWxsYmFjayByZXF1ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJv
ZHknKTsKKyAgfSwgJ0ZldGNoRXZlbnQjYm9keSBpcyBhIFJlYWRhYmxlU3RyZWFtIGFuZCBpcyBw
YXNzZWQgdG8gbmV0d29yayBmYWxsYmFjaycpOworCisgIC8vIFRlc3QgdGhhdCB0aGUgcmVxdWVz
dCBib2R5IGlzIHNlbnQgdG8gbmV0d29yayB1cG9uIG5ldHdvcmsgZmFsbGJhY2ssCisvLyBmb3Ig
YSBSZWFkYWJsZVN0cmVhbSBib2R5LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNv
bnN0IHJzID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtzdGFydChjKSB7CisgICAgICBjLmVucXVldWUo
J2kgYScpOworICAgICAgYy5lbnF1ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7CisgICAgICB0LnN0ZXBf
dGltZW91dCh0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgICAgIGMuZW5xdWV1ZSgnIGJvZHknKTsK
KyAgICAgICAgYy5jbG9zZSgpOworICAgICAgfSwgMTApKTsKKyAgICB9fSk7CisgICAgLy8gU2V0
IHBhZ2VfdXJsIHRvICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0
byBuZXR3b3JrCisgICAgLy8gZm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBhZGQg
YSBzdWZmaXggdG8gYXZvaWQgY29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4KKyAg
ICBjb25zdCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5LWZh
bGxiYWNrLXN0cmluZyc7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdl
X3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAg
ICAvLyBBZGQgIj9pZ25vcmUiIHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIGVj
aG8tY29udGVudC5weS4KKyAgICBjb25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNl
cy9lY2hvLWNvbnRlbnQucHk/aWdub3JlJzsKKyAgICBjb25zdCB3ID0gZnJhbWUuY29udGVudFdp
bmRvdzsKKyAgICBhd2FpdCBwcm9taXNlX3JlamVjdHNfanModCwgdy5UeXBlRXJyb3IsICB3LmZl
dGNoKGVjaG9fdXJsLCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiBy
cworICAgIH0pKTsKKyAgfSwgJ0ZldGNoRXZlbnQjYm9keSBpcyBhIG5vbmUgVWludDhBcnJheSBS
ZWFkYWJsZVN0cmVhbSBhbmQgaXMgcGFzc2VkIHRvIGEgc2VydmljZSB3b3JrZXInKTsKKworLy8g
VGVzdCB0aGF0IHRoZSByZXF1ZXN0IGJvZHkgaXMgc2VudCB0byBuZXR3b3JrIHVwb24gbmV0d29y
ayBmYWxsYmFjayBldmVuIHdoZW4KKy8vIHRoZSByZXF1ZXN0IGJvZHkgaXMgdXNlZCBpbiB0aGUg
c2VydmljZSB3b3JrZXIsIGZvciBhIHN0cmluZyBib2R5LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4geworICAgIC8vIFNldCBwYWdlX3VybCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29y
a2VyIGZhbGxzIGJhY2sgdG8gbmV0d29yaworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSBy
ZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGgg
b3RoZXIgdGVzdHMuCisgICAgY29uc3QgcGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9y
LXJlcXVlc3QtYm9keS1mYWxsYmFjay1zdHJpbmcnOworCisgICAgY29uc3QgZnJhbWUgPSBhd2Fp
dCB3aXRoX2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1l
LnJlbW92ZSgpOyB9KTsKKyAgICAvLyBBZGQgIj91c2UtYW5kLWlnbm9yZSIgc28gdGhlIHNlcnZp
Y2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gZWNoby1jb250ZW50LnB5LgorICAgIGNvbnN0IGVjaG9f
dXJsID0gJy9mZXRjaC9hcGkvcmVzb3VyY2VzL2VjaG8tY29udGVudC5weT91c2UtYW5kLWlnbm9y
ZSc7CisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNo
KGVjaG9fdXJsLCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAnaSBh
bSB0aGUgcmVxdWVzdCBib2R5JworICAgIH0pOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNw
b25zZS50ZXh0KCk7CisgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgdGV4dCwKKyAgICAgICAg
J2kgYW0gdGhlIHJlcXVlc3QgYm9keScsCisgICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFjayBy
ZXF1ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNoRXZl
bnQjYm9keSBpcyBhIHN0cmluZywgdXNlZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sn
KTsKKworLy8gV2hlbiB0aGUgc3RyZWFtaW5nIGJvZHkgaXMgdXNlZCBpbiB0aGUgc2VydmljZSB3
b3JrZXIsIG5ldHdvcmsgZmFsbGJhY2sKKy8vIGZhaWxzLgorcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4geworICAgIGNvbnN0IHJzID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtzdGFydChjKSB7CisgICAg
ICBjLmVucXVldWUoJ2kgYScpOworICAgICAgYy5lbnF1ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7Cisg
ICAgICB0LnN0ZXBfdGltZW91dCh0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgICAgIGMuZW5xdWV1
ZSgnIGJvZHknKTsKKyAgICAgICAgYy5jbG9zZSgpOworICAgICAgfSwgMTApKTsKKyAgICB9fSk7
CisgICAgLy8gU2V0IHBhZ2VfdXJsIHRvICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIg
ZmFsbHMgYmFjayB0byBuZXR3b3JrCisgICAgLy8gZm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVl
c3QsIGFuZCBhZGQgYSBzdWZmaXggdG8gYXZvaWQgY29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhl
ciB0ZXN0cy4KKyAgICBjb25zdCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVx
dWVzdC1ib2R5LWZhbGxiYWNrLXN0cmluZyc7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRo
X2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92
ZSgpOyB9KTsKKyAgICBjb25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9lY2hv
LWNvbnRlbnQucHk/dXNlLWFuZC1pZ25vcmUnOworICAgIGNvbnN0IHcgPSBmcmFtZS5jb250ZW50
V2luZG93OworICAgIGF3YWl0IHByb21pc2VfcmVqZWN0c19qcyh0LCB3LlR5cGVFcnJvciwgdy5m
ZXRjaChlY2hvX3VybCwgeworICAgICAgICBtZXRob2Q6ICdQT1NUJywKKyAgICAgICAgYm9keTog
cnMucGlwZVRocm91Z2gobmV3IFRleHRFbmNvZGVyU3RyZWFtKCkpCisgICAgfSkpOworICB9LCAn
RmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0sIHVzZWQgYW5kIHBhc3NlZCB0byBu
ZXR3b3JrIGZhbGxiYWNrJyk7CisKKy8vIFRlc3QgdGhhdCB0aGUgcmVxdWVzdCBib2R5IGlzIHNl
bnQgdG8gbmV0d29yayB1cG9uIG5ldHdvcmsgZmFsbGJhY2sgZXZlbiB3aGVuCisvLyB0aGUgcmVx
dWVzdCBib2R5IGlzIHVzZWQgYnkgY2xvbmUoKSBpbiB0aGUgc2VydmljZSB3b3JrZXIsIGZvciBh
IHN0cmluZyBib2R5LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIC8vIFNldCBwYWdl
X3VybCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gbmV0
d29yaworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEgc3Vm
Zml4IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAgY29u
c3QgcGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxsYmFj
ay1zdHJpbmcnOworCisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3Vy
bCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICAv
LyBBZGQgIj9jbG9uZS1hbmQtaWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFj
ayB0bworICAgIC8vIGVjaG8tY29udGVudC5weS4KKyAgICBjb25zdCBlY2hvX3VybCA9ICcvZmV0
Y2gvYXBpL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHk/Y2xvbmUtYW5kLWlnbm9yZSc7CisgICAg
Y29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVjaG9fdXJs
LCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAnaSBhbSB0aGUgcmVx
dWVzdCBib2R5JworICAgIH0pOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0
KCk7CisgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgdGV4dCwKKyAgICAgICAgJ2kgYW0gdGhl
IHJlcXVlc3QgYm9keScsCisgICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFjayByZXF1ZXN0IHNo
b3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNoRXZlbnQjYm9keSBp
cyBhIHN0cmluZywgY2xvbmVkIGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFjaycpOworCisv
LyBXaGVuIHRoZSBzdHJlYW1pbmcgYm9keSBpcyB1c2VkIGJ5IGNsb25lKCkgaW4gdGhlIHNlcnZp
Y2Ugd29ya2VyLCBuZXR3b3JrCisvLyBmYWxsYmFjayBmYWlscy4KK3Byb21pc2VfdGVzdChhc3lu
YyB0ID0+IHsKKyAgICBjb25zdCBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoYykgewor
ICAgICAgYy5lbnF1ZXVlKCdpIGEnKTsKKyAgICAgIGMuZW5xdWV1ZSgnbSB0aGUgcmVxdWVzdCcp
OworICAgICAgdC5zdGVwX3RpbWVvdXQodC5zdGVwX2Z1bmMoKCkgPT4geworICAgICAgICBjLmVu
cXVldWUoJyBib2R5Jyk7CisgICAgICAgIGMuY2xvc2UoKTsKKyAgICAgIH0sIDEwKSk7CisgICAg
fX0pOworICAgIC8vIFNldCBwYWdlX3VybCB0byAiP2lnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29y
a2VyIGZhbGxzIGJhY2sgdG8gbmV0d29yaworICAgIC8vIGZvciB0aGUgbWFpbiByZXNvdXJjZSBy
ZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4IHRvIGF2b2lkIGNvbGxpZGluZworICAgIC8vIHdpdGgg
b3RoZXIgdGVzdHMuCisgICAgY29uc3QgcGFnZV91cmwgPSAncmVzb3VyY2VzLz9pZ25vcmUtZm9y
LXJlcXVlc3QtYm9keS1mYWxsYmFjay1zdHJpbmcnOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQg
d2l0aF9pZnJhbWUocGFnZV91cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5y
ZW1vdmUoKTsgfSk7CisgICAgLy8gQWRkICI/Y2xvbmUtYW5kLWlnbm9yZSIgc28gdGhlIHNlcnZp
Y2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8KKyAgICAvLyBlY2hvLWNvbnRlbnQucHkuCisgICAgY29u
c3QgZWNob191cmwgPSAnL2ZldGNoL2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P2Nsb25l
LWFuZC1pZ25vcmUnOworICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZnJhbWUuY29udGVudFdp
bmRvdy5mZXRjaChlY2hvX3VybCwgeworICAgICAgICBtZXRob2Q6ICdQT1NUJywKKyAgICAgICAg
Ym9keTogJ2kgYW0gdGhlIHJlcXVlc3QgYm9keScKKyAgICB9KTsKKyAgICBjb25zdCB0ZXh0ID0g
YXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAgIHRleHQs
CisgICAgICAgICdpIGFtIHRoZSByZXF1ZXN0IGJvZHknLAorICAgICAgICAndGhlIG5ldHdvcmsg
ZmFsbGJhY2sgcmVxdWVzdCBzaG91bGQgaW5jbHVkZSB0aGUgcmVxdWVzdCBib2R5Jyk7CisgIH0s
ICdGZXRjaEV2ZW50I2JvZHkgaXMgYSBSZWFkYWJsZVN0cmVhbSwgY2xvbmVkIGFuZCBwYXNzZWQg
dG8gbmV0d29yayBmYWxsYmFjaycpOworCiAvLyBUZXN0IHRoYXQgdGhlIHNlcnZpY2Ugd29ya2Vy
IGNhbiByZWFkIEZldGNoRXZlbnQjYm9keSB3aGVuIGl0IGlzIGEgYmxvYi4KIC8vIEl0IHJlc3Bv
bmRzIHdpdGggcmVxdWVzdCBib2R5IGl0IHJlYWQuCiBwcm9taXNlX3Rlc3QodCA9PiB7CkBAIC04
NTEsNSArMTAxMSw3NCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKICAgICBhc3NlcnRf
ZXF1YWxzKGZyYW1lLmNvbnRlbnREb2N1bWVudC5ib2R5LnRleHRDb250ZW50LAogICAgICAgICAg
ICAgICAgICAgJ21ldGhvZCA9IFBPU1QsIGlzSGlzdG9yeU5hdmlnYXRpb24gPSB0cnVlJyk7CiAg
IH0sICdGZXRjaEV2ZW50I3JlcXVlc3QuaXNIaXN0b3J5TmF2aWdhdGlvbiBpcyB0cnVlIChQT1NU
ICsgaGlzdG9yeS5nbygtMSkpJyk7CisKKy8vIFdoZW4gc2VydmljZSB3b3JrZXIgcmVzcG9uZHMg
d2l0aCBhIFJlc3BvbnNlLCBubyBYSFIgdXBsb2FkIHByb2dyZXNzCisvLyBldmVudHMgYXJlIGRl
bGl2ZXJlZC4KK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBwYWdlX3VybCA9
ICdyZXNvdXJjZXMvc2ltcGxlLmh0bWw/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktc3RyaW5nJzsK
KyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHBhZ2VfdXJsKTsKKyAgICB0LmFk
ZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0pOworCisgICAgY29uc3QgeGhyID0g
bmV3IGZyYW1lLmNvbnRlbnRXaW5kb3cuWE1MSHR0cFJlcXVlc3QoKTsKKyAgICB4aHIub3Blbign
UE9TVCcsICdzaW1wbGUuaHRtbD9yZXF1ZXN0LWJvZHknKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2
ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgdC51bnJlYWNoZWRfZnVuYygncHJvZ3Jlc3MnKSk7Cisg
ICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHQudW5yZWFjaGVkX2Z1bmMo
J2Vycm9yJykpOworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB0LnVu
cmVhY2hlZF9mdW5jKCdhYm9ydCcpKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIo
J3RpbWVvdXQnLCB0LnVucmVhY2hlZF9mdW5jKCd0aW1lb3V0JykpOworICAgIHhoci51cGxvYWQu
YWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHQudW5yZWFjaGVkX2Z1bmMoJ2xvYWQnKSk7CisgICAg
eGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdsb2FkZW5kJywgdC51bnJlYWNoZWRfZnVuYygn
bG9hZGVuZCcpKTsKKyAgICB4aHIuc2VuZCgnaSBhbSB0aGUgcmVxdWVzdCBib2R5Jyk7CisKKyAg
ICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geGhyLmFkZEV2ZW50TGlzdGVuZXIoJ2xv
YWQnLCByZXNvbHZlKSk7CisgIH0sICdYSFIgdXBsb2FkIHByb2dyZXNzIGV2ZW50cyBmb3IgcmVz
cG9uc2UgY29taW5nIGZyb20gU1cnKTsKKworLy8gVXBsb2FkIHByb2dyZXNzIGV2ZW50cyBzaG91
bGQgYmUgZGVsaXZlcmVkIGZvciB0aGUgbmV0d29yayBmYWxsYmFjayBjYXNlLgorcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHBhZ2VfdXJsID0gJ3Jlc291cmNlcy9zaW1wbGUu
aHRtbD9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1zdHJpbmcnOworICAgIGNvbnN0IGZyYW1lID0g
YXdhaXQgd2l0aF9pZnJhbWUocGFnZV91cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBm
cmFtZS5yZW1vdmUoKTsgfSk7CisKKyAgICBsZXQgcHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICBsZXQg
bG9hZCA9IGZhbHNlOworICAgIGxldCBsb2FkZW5kID0gZmFsc2U7CisKKyAgICBjb25zdCB4aHIg
PSBuZXcgZnJhbWUuY29udGVudFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICAgIHhoci5vcGVu
KCdQT1NUJywgJy9mZXRjaC9hcGkvcmVzb3VyY2VzL2VjaG8tY29udGVudC5weT9pZ25vcmUnKTsK
KyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgKCkgPT4gcHJvZ3Jl
c3MgPSB0cnVlKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgdC51
bnJlYWNoZWRfZnVuYygnZXJyb3InKSk7CisgICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVy
KCdhYm9ydCcsIHQudW5yZWFjaGVkX2Z1bmMoJ2Fib3J0JykpOworICAgIHhoci51cGxvYWQuYWRk
RXZlbnRMaXN0ZW5lcigndGltZW91dCcsIHQudW5yZWFjaGVkX2Z1bmMoJ3RpbWVvdXQnKSk7Cisg
ICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4gbG9hZCA9IHRydWUp
OworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZGVuZCcsICgpID0+IGxvYWRl
bmQgPSB0cnVlKTsKKyAgICB4aHIuc2VuZCgnaSBhbSB0aGUgcmVxdWVzdCBib2R5Jyk7CisKKyAg
ICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geGhyLmFkZEV2ZW50TGlzdGVuZXIoJ2xv
YWQnLCByZXNvbHZlKSk7CisgICAgYXNzZXJ0X3RydWUocHJvZ3Jlc3MsICdwcm9ncmVzcycpOwor
ICAgIGFzc2VydF90cnVlKGxvYWQsICdsb2FkJyk7CisgICAgYXNzZXJ0X3RydWUobG9hZGVuZCwg
J2xvYWRlbmQnKTsKKyAgfSwgJ1hIUiB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzIGZvciBuZXR3b3Jr
IGZhbGxiYWNrJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICAvLyBTZXQgcGFn
ZV91cmwgdG8gIj9pZ25vcmUiIHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIG5l
dHdvcmsKKyAgICAvLyBmb3IgdGhlIG1haW4gcmVzb3VyY2UgcmVxdWVzdCwgYW5kIGFkZCBhIHN1
ZmZpeCB0byBhdm9pZCBjb2xsaWRpbmcKKyAgICAvLyB3aXRoIG90aGVyIHRlc3RzLgorICAgIGNv
bnN0IHBhZ2VfdXJsID0gJ3Jlc291cmNlcy8/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktZmFsbGJh
Y2stc3RyaW5nJzsKKworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91
cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisgICAg
Ly8gQWRkICI/Y2xvbmUtYW5kLWlnbm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJh
Y2sgdG8KKyAgICAvLyBlY2hvLWNvbnRlbnQucHkuCisgICAgY29uc3QgZWNob191cmwgPSAnL2Zl
dGNoL2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P3N0YXR1cz00MjEnOworICAgIGNvbnN0
IHJlc3BvbnNlID0gYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaChlY2hvX3VybCwgewor
ICAgICAgICBtZXRob2Q6ICdQT1NUJywKKyAgICAgICAgYm9keTogJ3RleHQgYm9keScKKyAgICB9
KTsKKyAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgNDIxKTsKKyAgICBjb25zdCB0
ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgIGFzc2VydF9lcXVhbHMoCisgICAgICAg
IHRleHQsCisgICAgICAgICd0ZXh0IGJvZHkuIFJlcXVlc3Qgd2FzIHNlbnQgMSB0aW1lcy4nLAor
ICAgICAgICAndGhlIG5ldHdvcmsgZmFsbGJhY2sgcmVxdWVzdCBzaG91bGQgaW5jbHVkZSB0aGUg
cmVxdWVzdCBib2R5Jyk7CisgIH0sICdGZXRjaCB3aXRoIFBPU1Qgd2l0aCB0ZXh0IG9uIHN3IDQy
MSByZXNwb25zZSBzaG91bGQgbm90IGJlIHJldHJpZWQuJyk7CiA8L3NjcmlwdD4KIDwvYm9keT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJs
Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVy
bC5odHRwcy5odG1sCmluZGV4IGEwOGUwYzc0ODgxMzY0ZjdmZDI5ZDNlNmFjMzMyYTdlMWQ5NGJm
N2EuLjQ2N2E2NmNlZTQ2NGU2ODcyMzhjMjVkYTJmYjE3Y2IwMTUwMWZiMGQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLmh0dHBzLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwuaHR0cHMu
aHRtbApAQCAtNzAsMTMgKzcwLDEzIEBAIGNvbnN0IGNzc0ZpbGUgPSAnZmV0Y2gtcmVxdWVzdC1j
c3MtYmFzZS11cmwtc3R5bGUuY3NzJzsKIAogYmFzZV91cmxfdGVzdCh7CiAgIGZyYW1lUGF0aDog
U0NPUEUgKyAnP2ZldGNoJywKLSAgZXhwZWN0SW1hZ2VSZXF1ZXN0UGF0aDogJ3Jlc291cmNlcy9k
dW1teS5wbmcnLAorICBleHBlY3RJbWFnZVJlcXVlc3RQYXRoOiAncmVzb3VyY2VzL3NhbXBsZS5w
bmcnLAogICBleHBlY3RJbWFnZVJlcXVlc3RSZWZlcnJlcjogYHJlc291cmNlcy8ke2Nzc0ZpbGV9
P2ZldGNoYCwKICAgZGVzY3JpcHRpb246ICdiYXNlIFVSTCB3aGVuIHNlcnZpY2Ugd29ya2VyIGRv
ZXMgcmVzcG9uZFdpdGgoZmV0Y2gocmVzcG9uc2VVcmwpKS4nfSk7CiAKIGJhc2VfdXJsX3Rlc3Qo
ewogICBmcmFtZVBhdGg6IFNDT1BFICsgJz9uZXdSZXNwb25zZScsCi0gIGV4cGVjdEltYWdlUmVx
dWVzdFBhdGg6ICdyZXNvdXJjZXMvcmVxdWVzdC11cmwtcGF0aC9kdW1teS5wbmcnLAorICBleHBl
Y3RJbWFnZVJlcXVlc3RQYXRoOiAncmVzb3VyY2VzL3JlcXVlc3QtdXJsLXBhdGgvc2FtcGxlLnBu
ZycsCiAgIGV4cGVjdEltYWdlUmVxdWVzdFJlZmVycmVyOiBgcmVzb3VyY2VzL3JlcXVlc3QtdXJs
LXBhdGgvJHtjc3NGaWxlfT9uZXdSZXNwb25zZWAsCiAgIGRlc2NyaXB0aW9uOiAnYmFzZSBVUkwg
d2hlbiBzZXJ2aWNlIHdvcmtlciBkb2VzIHJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgpKS4nfSk7
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWltYWdl
cy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2Vz
Lmh0dHBzLmh0bWwKaW5kZXggOTU4ZGUxYWY4NWY0ZWU2YmE1OGI0N2RlMzg5NzFmOWZmMmFhMmJh
MC4uNTg2ZGVhMjYxMzVmYzUzNWJmODEyZDg2Yzk4NTQ1NDFkYWFiYmMzOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwK
QEAgLTksOSArOSw5IEBAIHZhciBTQ09QRSA9ICdyZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNv
dXJjZXMtaWZyYW1lLmh0dHBzLmh0bWwnOwogdmFyIFNDUklQVCA9ICdyZXNvdXJjZXMvZmV0Y2gt
cmVxdWVzdC1yZXNvdXJjZXMtd29ya2VyLmpzJzsKIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9p
bmZvKCk7CiB2YXIgTE9DQUxfVVJMID0KLSAgaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJh
c2VfcGF0aCgpICsgJ3Jlc291cmNlcy9kdW1teT90ZXN0JzsKKyAgaG9zdF9pbmZvWydIVFRQU19P
UklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291cmNlcy9zYW1wbGU/dGVzdCc7CiB2YXIgUkVN
T1RFX1VSTCA9Ci0gIGhvc3RfaW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRo
KCkgKyAncmVzb3VyY2VzL2R1bW15P3Rlc3QnOworICBob3N0X2luZm9bJ0hUVFBTX1JFTU9URV9P
UklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291cmNlcy9zYW1wbGU/dGVzdCc7CiAKIGZ1bmN0
aW9uIGNzc19pbWFnZV90ZXN0KGV4cGVjdGVkX3Jlc3VsdHMsIGZyYW1lLCB1cmwsIHR5cGUsCiAg
ICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9tb2RlLCBleHBlY3RlZF9jcmVkZW50aWFs
cykgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVj
dC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5o
dHRwcy5odG1sCmluZGV4IDU3ZmI4ZWI0Yzk1ZDU0YjIwZDY3NDcyODI3MGUxNDBkYjBmNmI0NzMu
LjVjZTAxNWI0MjFmY2FmNzM3Nzc5MjZiNmNiMWYxYTJhYTBhMWQzMGYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtcmVkaXJlY3QuaHR0cHMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlZGlyZWN0Lmh0dHBzLmh0bWwKQEAgLTYz
LDcgKzYzLDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICB2YXIgSU1BR0VfVVJM
ID0gYmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NxdWFyZS5wbmcnOwogICAgIHZhciBBVURJT19V
UkwgPSBnZXRBdWRpb1VSSSgiL21lZGlhL3NvdW5kXzUiKTsKICAgICB2YXIgWEhSX1VSTCA9IGJh
c2VfcGF0aCgpICsgJ3Jlc291cmNlcy9zaW1wbGUudHh0JzsKLSAgICB2YXIgSFRNTF9VUkwgPSBi
YXNlX3BhdGgoKSArICdyZXNvdXJjZXMvZHVtbXkuaHRtbCc7CisgICAgdmFyIEhUTUxfVVJMID0g
YmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZS5odG1sJzsKIAogICAgIHZhciBSRURJUkVD
VF9UT19JTUFHRV9VUkwgPSBSRURJUkVDVF9VUkwgKyBlbmNvZGVVUklDb21wb25lbnQoSU1BR0Vf
VVJMKTsKICAgICB2YXIgUkVESVJFQ1RfVE9fQVVESU9fVVJMID0gUkVESVJFQ1RfVVJMICsgZW5j
b2RlVVJJQ29tcG9uZW50KEFVRElPX1VSTCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXgg
NzI0NDlmYTNkZDZmNWQzYmE1ODFmMmFjZTY4NTllY2U4YTg1MmVlZS4uMjFhMjkwMTBjNDU0ZmE5
MjcwN2EzZDcwYzk0YmJhMjZkNWI4ZDY0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAt
MSw2NSArMSw2NSBAQAogCiBQQVNTIFZlcmlmeSBGZXRjaEV2ZW50IGZvciByZXNvdXJjZXMuCi1Q
QVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDEgY3Jvc3Nfb3JpZ2luOikKLVBB
U1MgSW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MiBjcm9zc19vcmlnaW46KQotUEFT
UyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MyBjcm9zc19vcmlnaW46KQotUEFTUyBD
U1MgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NCBjcm9zc19vcmlnaW46KQotUEFTUyBJbWFn
ZSBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1IGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCi1Q
QVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDYgY3Jvc3Nfb3JpZ2luOnVzZS1j
cmVkZW50aWFscykKLVBBU1MgSW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NyBjcm9z
c19vcmlnaW46KQotUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q4IGNyb3Nz
X29yaWdpbjphbm9ueW1vdXMpCi1QQVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAu
MTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVz
dDkgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZHVtbXk/dGVzdDEwIGNyb3NzX29yaWdpbjopCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6
aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3QxMSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBTY3JpcHQg
bG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTIgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFs
cykKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDEzIGNyb3NzX29yaWdp
bjopCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QxNCBjcm9zc19vcmln
aW46YW5vbnltb3VzKQotUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0
NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTUg
Y3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZHVtbXk/dGVzdDE2IGNyb3NzX29yaWdpbjopCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1
bW15P3Rlc3QxNyBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MTggY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgQ1NT
IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDE5IGNyb3NzX29yaWdpbjopCi1QQVNTIENTUyBs
b2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyMCBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFT
UyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MjEgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVk
ZW50aWFscykKLUZBSUwgRm9udEZhY2UgbG9hZCAodXJsOiBodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDIyKSBh
c3NlcnRfZXF1YWxzOiBtb2RlIG9mIG11c3QgYmUgY29ycy4gZXhwZWN0ZWQgImNvcnMiIGJ1dCBn
b3QgIm5vLWNvcnMiCi1GQUlMIEZvbnRGYWNlIGxvYWQgKHVybDogaHR0cHM6Ly8xMjcuMC4wLjE6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Qy
MykgYXNzZXJ0X2VxdWFsczogbW9kZSBvZiBtdXN0IGJlIGNvcnMuIGV4cGVjdGVkICJjb3JzIiBi
dXQgZ290ICJuby1jb3JzIgotUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
MjQpCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyNSkKLVBBU1MgU2Ny
aXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDI2KQotUEFTUyBTY3JpcHQgbG9hZCAodXJs
Omh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0MjcpCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2Nh
bGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3QyOCkKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDI5KQotUEFT
UyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzApCi1QQVNTIENTUyBsb2FkICh1cmw6
aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3QzMSkKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9z
dDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVz
dDMyKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzMpCi1QQVNTIENTUyBs
b2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QzNCkKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZHVtbXk/dGVzdDM1KQotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzYgbW9kZTpz
YW1lLW9yaWdpbiBjcmVkZW50aWFsczpvbWl0KSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBv
ZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzYgbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50
aWFsczpvbWl0KSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZB
SUwgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM3IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVu
dGlhbHM6c2FtZS1vcmlnaW4pIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3QzNyBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOnNhbWUt
b3JpZ2luKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwg
ZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM4IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlh
bHM6aW5jbHVkZSkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDM4IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6aW5jbHVkZSkgbXVz
dCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6
aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3QzOSBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6b21pdCkgYXNzZXJ0
X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDM5IG1v
ZGU6bm8tY29ycyBjcmVkZW50aWFsczpvbWl0KSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1w
dHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQwIG1vZGU6
bm8tY29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRp
b24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQwIG1vZGU6bm8tY29ycyBjcmVkZW50
aWFsczpzYW1lLW9yaWdpbikgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290
ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0MSBtb2RlOm5vLWNvcnMgY3Jl
ZGVudGlhbHM6aW5jbHVkZSkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXk/dGVzdDQxIG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBt
dXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZHVtbXk/dGVzdDQyIG1vZGU6Y29ycyBjcmVkZW50aWFsczpvbWl0KSBhc3NlcnRf
ZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDIgbW9k
ZTpjb3JzIGNyZWRlbnRpYWxzOm9taXQpIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIg
YnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDMgbW9kZTpjb3Jz
IGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBm
ZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDMgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUt
b3JpZ2luKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwg
ZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ0IG1vZGU6Y29ycyBjcmVkZW50aWFsczppbmNs
dWRlKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9j
YWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1t
eT90ZXN0NDQgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpIG11c3QgYmUgZW1wdHkuIGV4
cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAu
MC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90
ZXN0NDUgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOm9taXQpIGFzc2VydF9lcXVhbHM6IGRlc3Rp
bmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0NSBtb2RlOm5vLWNvcnMgY3Jl
ZGVudGlhbHM6b21pdCkgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIi
Ci1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0NiBtb2RlOm5vLWNvcnMgY3JlZGVu
dGlhbHM6c2FtZS1vcmlnaW4pIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1
cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3Q0NiBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6c2FtZS1vcmln
aW4pIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRj
aCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDcgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOmluY2x1
ZGUpIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3Q0NyBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgbXVzdCBiZSBlbXB0eS4g
ZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3Q0OCBtb2RlOmNvcnMgY3JlZGVudGlhbHM6b21pdCkgYXNzZXJ0X2VxdWFsczogZGVzdGlu
YXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ4IG1vZGU6Y29ycyBjcmVkZW50
aWFsczpvbWl0KSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZB
SUwgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ5IG1vZGU6Y29ycyBjcmVkZW50aWFsczpz
YW1lLW9yaWdpbikgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRw
czovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDQ5IG1vZGU6Y29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikgbXVzdCBi
ZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0
cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2R1bW15P3Rlc3Q1MCBtb2RlOmNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgYXNzZXJ0X2Vx
dWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDUwIG1vZGU6
Y29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHki
IGJ1dCBnb3QgIiIKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTEgY3Jv
c3Nfb3JpZ2luOikKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTIgY3Jv
c3Nfb3JpZ2luOmFub255bW91cykKLVBBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90
ZXN0NTMgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgQXVkaW8gbG9hZCAodXJs
Omh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0NTQgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgQXVkaW8gbG9hZCAodXJs
Omh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0NTUgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKLVBBU1MgQXVkaW8g
bG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTYgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFs
cykKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTcgY3Jvc3Nfb3JpZ2lu
OikKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTggY3Jvc3Nfb3JpZ2lu
OmFub255bW91cykKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTkgY3Jv
c3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8v
MTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9k
dW1teT90ZXN0NjAgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8v
MTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9k
dW1teT90ZXN0NjEgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKLVBBU1MgVmlkZW8gbG9hZCAodXJs
Omh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0NjIgY3Jvc3Nfb3JpZ2luOnVzZS1jcmVkZW50aWFscykKK1BBU1Mg
SW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDEgY3Jvc3Nfb3JpZ2luOikKK1BBU1Mg
SW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDIgY3Jvc3Nfb3JpZ2luOikKK1BBU1Mg
Q1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzIGNyb3NzX29yaWdpbjopCitQQVNTIENT
UyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NCBjcm9zc19vcmlnaW46KQorUEFTUyBJbWFn
ZSBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQor
UEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NiBjcm9zc19vcmlnaW46dXNl
LWNyZWRlbnRpYWxzKQorUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NyBj
cm9zc19vcmlnaW46KQorUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0OCBj
cm9zc19vcmlnaW46YW5vbnltb3VzKQorUEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBs
ZT90ZXN0OSBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBTY3JpcHQgbG9hZCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDEwIGNyb3NzX29yaWdpbjopCitQQVNTIFNjcmlwdCBsb2Fk
ICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MTEgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1Mg
U2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QxMiBjcm9zc19vcmlnaW46dXNlLWNy
ZWRlbnRpYWxzKQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDEzIGNy
b3NzX29yaWdpbjopCitQQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MTQg
Y3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovLzEy
Ny4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2Ft
cGxlP3Rlc3QxNSBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBDU1MgbG9hZCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDE2IGNyb3NzX29yaWdpbjopCitQQVNTIENTUyBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0MTcgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgQ1NT
IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QxOCBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRp
YWxzKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDE5IGNyb3NzX29yaWdp
bjopCitQQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MjAgY3Jvc3Nfb3JpZ2lu
OmFub255bW91cykKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyMSBjcm9z
c19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorRkFJTCBGb250RmFjZSBsb2FkICh1cmw6IGh0dHBz
Oi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9zYW1wbGU/dGVzdDIyKSBhc3NlcnRfZXF1YWxzOiBtb2RlIG9mIG11c3QgYmUgY29ycy4gZXhw
ZWN0ZWQgImNvcnMiIGJ1dCBnb3QgIm5vLWNvcnMiCitGQUlMIEZvbnRGYWNlIGxvYWQgKHVybDog
aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3NhbXBsZT90ZXN0MjMpIGFzc2VydF9lcXVhbHM6IG1vZGUgb2YgbXVzdCBiZSBjb3Jz
LiBleHBlY3RlZCAiY29ycyIgYnV0IGdvdCAibm8tY29ycyIKK1BBU1MgU2NyaXB0IGxvYWQgKHVy
bDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNCkKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xv
Y2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2Ft
cGxlP3Rlc3QyNSkKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNikK
K1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyNykKK1BBU1MgU2NyaXB0
IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyOCkKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2FtcGxlP3Rlc3QyOSkKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9z
dDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rl
c3QzMCkKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzMSkKK1BBU1MgQ1NT
IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzMikKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2FtcGxlP3Rlc3QzMykKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5
NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Qz
NCkKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzNSkKK1BBU1MgZmV0Y2gg
KHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzNiBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOm9t
aXQpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MzcgbW9kZTpzYW1lLW9yaWdp
biBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovL2xvY2Fs
aG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxl
P3Rlc3QzOCBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOmluY2x1ZGUpCitQQVNTIGZldGNo
ICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MzkgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOm9taXQp
CitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDAgbW9kZTpuby1jb3JzIGNyZWRl
bnRpYWxzOnNhbWUtb3JpZ2luKQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0
NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQx
IG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczppbmNsdWRlKQorUEFTUyBmZXRjaCAodXJsOmh0dHBz
Oi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9zYW1wbGU/dGVzdDQyIG1vZGU6Y29ycyBjcmVkZW50aWFsczpvbWl0KQorUEFTUyBmZXRjaCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDQzIG1vZGU6Y29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdp
bikKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0NCBtb2RlOmNvcnMgY3JlZGVu
dGlhbHM6aW5jbHVkZSkKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0NSBtb2Rl
Om5vLWNvcnMgY3JlZGVudGlhbHM6b21pdCkKK1BBU1MgZmV0Y2ggKHVybDpodHRwczovLzEyNy4w
LjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxl
P3Rlc3Q0NiBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4pCitQQVNTIGZldGNo
ICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDcgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOmluY2x1
ZGUpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDggbW9kZTpjb3JzIGNyZWRl
bnRpYWxzOm9taXQpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDkgbW9kZTpj
b3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vMTI3
LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1w
bGU/dGVzdDUwIG1vZGU6Y29ycyBjcmVkZW50aWFsczppbmNsdWRlKQorUEFTUyBBdWRpbyBsb2Fk
ICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NTEgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQXVkaW8gbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDUyIGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNT
IEF1ZGlvIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q1MyBjcm9zc19vcmlnaW46dXNlLWNy
ZWRlbnRpYWxzKQorUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NTQgY3Jv
c3Nfb3JpZ2luOikKK1BBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDU1IGNy
b3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNTIEF1ZGlvIGxvYWQgKHVybDpodHRwczovLzEyNy4w
LjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxl
P3Rlc3Q1NiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBWaWRlbyBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0NTcgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgVmlkZW8gbG9hZCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDU4IGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNTIFZp
ZGVvIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q1OSBjcm9zc19vcmlnaW46dXNlLWNyZWRl
bnRpYWxzKQorUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NjAgY3Jvc3Nf
b3JpZ2luOikKK1BBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDYxIGNyb3Nz
X29yaWdpbjphbm9ueW1vdXMpCitQQVNTIFZpZGVvIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAu
MTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rl
c3Q2MiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMuaHR0cHMuaHRtbAppbmRleCBmZTIyN2Q5
Y2UyZjQ5NDNlYzhhMmFhOTM2ODgyZjdiNDZkYWNhMjhmLi5iNDY4MGMzY2NkNThkOWQ3ZGVmOWQ2
OWZmMWQxMDQ4YTZhZTAyOTA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1y
ZXF1ZXN0LXJlc291cmNlcy5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LXJlcXVlc3QtcmVzb3VyY2VzLmh0dHBzLmh0bWwKQEAgLTExNyw3ICsxMTcsNyBAQCBmdW5jdGlv
biBmZXRjaF90ZXN0KGZyYW1lLCB1cmwsIG1vZGUsIGNyZWRlbnRpYWxzLAogICAgICAgY3JlZGVu
dGlhbHM6IGV4cGVjdGVkX2NyZWRlbnRpYWxzLAogICAgICAgcmVkaXJlY3Q6ICdmb2xsb3cnLAog
ICAgICAgaW50ZWdyaXR5OiAnJywKLSAgICAgIGRlc3RpbmF0aW9uOiAnZW1wdHknLAorICAgICAg
ZGVzdGluYXRpb246ICcnLAogICAgICAgbWVzc2FnZTogYGZldGNoICh1cmw6JHthY3R1YWxfdXJs
fSBtb2RlOiR7bW9kZX0gYCArCiAgICAgICAgICAgICAgICBgY3JlZGVudGlhbHM6JHtjcmVkZW50
aWFsc30pYAogICAgIH07CkBAIC0xNjIsOSArMTYyLDkgQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4gewogICBjb25zdCBTQ1JJUFQgPSAncmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2Vz
LXdvcmtlci5qcyc7CiAgIGNvbnN0IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKICAgY29u
c3QgTE9DQUxfVVJMID0KLSAgICAgIGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3Bh
dGgoKSArICdyZXNvdXJjZXMvZHVtbXk/dGVzdCc7CisgICAgICBob3N0X2luZm9bJ0hUVFBTX09S
SUdJTiddICsgYmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0JzsKICAgY29uc3Qg
UkVNT1RFX1VSTCA9Ci0gICAgICBob3N0X2luZm9bJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIGJh
c2VfcGF0aCgpICsgJ3Jlc291cmNlcy9kdW1teT90ZXN0JzsKKyAgICAgIGhvc3RfaW5mb1snSFRU
UFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0
JzsKIAogICBjb25zdCByZWdpc3RyYXRpb24gPQogICAgICAgYXdhaXQgc2VydmljZV93b3JrZXJf
dW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgU0NSSVBULCBTQ09QRSk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5j
LWVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGJkZTEwNDAxZDk3
NWRjZDMzNTk2Y2MwZTczMzhkNjM1Zjg0YjdmNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworRkFJTCBWZXJpZnkgc3luY2hyb25vdXMgWE1MSHR0
cFJlcXVlc3QgYWx3YXlzIHRocm93cyBhIE5ldHdvcmtFcnJvciBmb3IgUmVhZGFibGVTdHJlYW0g
ZXJyb3JzIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gZnJhbWUuY29udGVudFdp
bmRvdy5wZXJmb3JtU3luY1hIUigibm9uLWV4aXN0ZW50LXN0cmVhbS0xLnR4dCIpIiBkaWQgbm90
IHRocm93CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhy
LXN5bmMtZXJyb3IuaHR0cHMud2luZG93Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1y
ZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5
MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRv
dy5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJL
aXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci5odHRwcy53aW5kb3cuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTZjMDIxMzkyODY2OWQyMTA4OTk4MjczMGMwMzM0Y2RlOGMyMGY2YQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3Iu
aHR0cHMud2luZG93LmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIE1FVEE6IHNjcmlwdD1yZXNvdXJj
ZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcworCisidXNlIHN0cmljdCI7CisKK3Byb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKKyAgY29uc3QgdXJsID0gInJlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1z
eW5jLWVycm9yLXdvcmtlci5qcyI7CisgIGNvbnN0IHNjb3BlID0gInJlc291cmNlcy9mZXRjaC1y
ZXF1ZXN0LXhoci1zeW5jLWlmcmFtZS5odG1sIjsKKworICBjb25zdCByZWdpc3RyYXRpb24gPSBh
d2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB1cmwsIHNjb3Bl
KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKwor
ICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2
YXRlZCcpOworICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgdC5h
ZGRfY2xlYW51cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CisKKyAgYXNzZXJ0X3Rocm93c19kb20o
Ik5ldHdvcmtFcnJvciIsIGZyYW1lLmNvbnRlbnRXaW5kb3cuRE9NRXhjZXB0aW9uLCAoKSA9PiBm
cmFtZS5jb250ZW50V2luZG93LnBlcmZvcm1TeW5jWEhSKCJub24tZXhpc3RlbnQtc3RyZWFtLTEu
dHh0IikpOworICBhc3NlcnRfdGhyb3dzX2RvbSgiTmV0d29ya0Vycm9yIiwgZnJhbWUuY29udGVu
dFdpbmRvdy5ET01FeGNlcHRpb24sICgpID0+IGZyYW1lLmNvbnRlbnRXaW5kb3cucGVyZm9ybVN5
bmNYSFIoIm5vbi1leGlzdGVudC1zdHJlYW0tMi50eHQiKSk7CisgIGFzc2VydF90aHJvd3NfZG9t
KCJOZXR3b3JrRXJyb3IiLCBmcmFtZS5jb250ZW50V2luZG93LkRPTUV4Y2VwdGlvbiwgKCkgPT4g
ZnJhbWUuY29udGVudFdpbmRvdy5wZXJmb3JtU3luY1hIUigibm9uLWV4aXN0ZW50LXN0cmVhbS0z
LnR4dCIpKTsKK30sICJWZXJpZnkgc3luY2hyb25vdXMgWE1MSHR0cFJlcXVlc3QgYWx3YXlzIHRo
cm93cyBhIE5ldHdvcmtFcnJvciBmb3IgUmVhZGFibGVTdHJlYW0gZXJyb3JzIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIwYjNkZGZiZjdi
ODgzMDI2YjcwNjkyY2YwZjkwN2RjOTNmNWFkMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5qcwpAQCAtMCwwICsxLDUgQEAKKy8vIE1F
VEE6IGdsb2JhbD1zZXJ2aWNld29ya2VyCisKK3Rlc3QoKHQpID0+IHsKKyAgYXNzZXJ0X2ZhbHNl
KCd0YXJnZXRDbGllbnRJZCcgaW4gRmV0Y2hFdmVudC5wcm90b3R5cGUpCit9LCAndGFyZ2V0Q2xp
ZW50SWQgc2hvdWxkIG5vdCBiZSBvbiBGZXRjaEV2ZW50Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4OTkzOTg3YmVjZTgwZGZmMmQxMzJhMWQ4MmU2MWEx
ZmViOTg3OTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9oaXN0b3JpY2Fs
Lmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKwor
RkFJTCB0YXJnZXRDbGllbnRJZCBzaG91bGQgbm90IGJlIG9uIEZldGNoRXZlbnQgYXNzZXJ0X2Zh
bHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9oaXN0b3JpY2FsLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjM4MjkxMzUyOGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3Jr
ZXIuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2Vi
S2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9p
bXBvcnQtbW9kdWxlLXNjcmlwdHMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvaW1wb3J0LW1vZHVsZS1zY3JpcHRzLmh0dHBzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjRmOTdkODRjMDIwYzNmZjM0ZmNiODAwYjZmY2RmYTZkNzRmNTdi
MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9pbXBvcnQtbW9kdWxlLXNjcmlwdHMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyAv
ZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0KLVBBU1MgU3RhdGljIGltcG9ydC4KLVBBU1MgTmVz
dGVkIHN0YXRpYyBpbXBvcnQuCi1GQUlMIFN0YXRpYyBpbXBvcnQgYW5kIHRoZW4gZHluYW1pYyBp
bXBvcnQuIGFzc2VydF9hcnJheV9lcXVhbHM6IHZhbHVlIGlzICJGYWlsZWQgdG8gZG8gZHluYW1p
YyBpbXBvcnQ6IFR5cGVFcnJvcjogRHluYW1pYy1pbXBvcnQgaXMgbm90IGF2YWlsYWJsZSBpbiBX
b3JrbGV0cyBvciBTZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlMIER5bmFtaWMg
aW1wb3J0LiBhc3NlcnRfYXJyYXlfZXF1YWxzOiB2YWx1ZSBpcyAiRmFpbGVkIHRvIGRvIGR5bmFt
aWMgaW1wb3J0OiBUeXBlRXJyb3I6IER5bmFtaWMtaW1wb3J0IGlzIG5vdCBhdmFpbGFibGUgaW4g
V29ya2xldHMgb3IgU2VydmljZVdvcmtlcnMiLCBleHBlY3RlZCBhcnJheQotRkFJTCBOZXN0ZWQg
ZHluYW1pYyBpbXBvcnQuIGFzc2VydF9hcnJheV9lcXVhbHM6IHZhbHVlIGlzICJGYWlsZWQgdG8g
ZG8gZHluYW1pYyBpbXBvcnQ6IFR5cGVFcnJvcjogRHluYW1pYy1pbXBvcnQgaXMgbm90IGF2YWls
YWJsZSBpbiBXb3JrbGV0cyBvciBTZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlM
IER5bmFtaWMgaW1wb3J0IGFuZCB0aGVuIHN0YXRpYyBpbXBvcnQuIGFzc2VydF9hcnJheV9lcXVh
bHM6IHZhbHVlIGlzICJGYWlsZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6IFR5cGVFcnJvcjogRHlu
YW1pYy1pbXBvcnQgaXMgbm90IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBvciBTZXJ2aWNlV29ya2Vy
cyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlMIGV2YWwoaW1wb3J0KCkpLiBhc3NlcnRfYXJyYXlfZXF1
YWxzOiB2YWx1ZSBpcyAiRmFpbGVkIHRvIGRvIGR5bmFtaWMgaW1wb3J0OiBUeXBlRXJyb3I6IER5
bmFtaWMtaW1wb3J0IGlzIG5vdCBhdmFpbGFibGUgaW4gV29ya2xldHMgb3IgU2VydmljZVdvcmtl
cnMiLCBleHBlY3RlZCBhcnJheQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBv
cnQtbW9kdWxlLXNjcmlwdHMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1t
b2R1bGUtc2NyaXB0cy5odHRwcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
YmNhOGRlNjRmNWJjOTY2NDkxMWJkMWM1ZGM4ODM1Njc2ODFhZmI4Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1t
b2R1bGUtc2NyaXB0cy5odHRwcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjkgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08dGl0bGU+VGVzdHMgZm9y
IG1vZHVsZSBpbXBvcnQ6IFNlcnZpY2VXb3JrZXI8L3RpdGxlPgotPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy90
ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIvd29ya2Vycy9tb2R1
bGVzL3Jlc291cmNlcy9pbXBvcnQtdGVzdC1jYXNlcy5qcyI+PC9zY3JpcHQ+Ci08Ym9keT4KLTxz
Y3JpcHQ+Ci1mdW5jdGlvbiBpbXBvcnRfdGVzdCh0ZXN0Q2FzZSkgewotICBwcm9taXNlX3Rlc3Qo
YXN5bmMgdCA9PiB7Ci0gICAgY29uc3QgbXNnUHJvbWlzZSA9IG5ldyBQcm9taXNlKHJlc29sdmUg
PT4gewotICAgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIub25tZXNzYWdlID0gcmVzb2x2ZTsK
LSAgICB9KTsKLSAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHRlc3RDYXNl
LnNjcmlwdFVSTCk7Ci0gICAgdC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJl
Z2lzdGVyKHQsIHRlc3RDYXNlLnNjcmlwdFVSTCkpOwotICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9
IGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKAotICAgICAgdGVzdENhc2Uu
c2NyaXB0VVJMLAotICAgICAgeyBzY29wZTogdGVzdENhc2Uuc2NyaXB0VVJMLCB0eXBlOiAnbW9k
dWxlJyB9KTsKLSAgICByZWdpc3RyYXRpb24uaW5zdGFsbGluZy5wb3N0TWVzc2FnZSgKLSAgICAg
ICdTZW5kIG1lc3NhZ2UgZm9yIHRlc3RzIGZyb20gbWFpbiBzY3JpcHQuJyk7Ci0gICAgY29uc3Qg
bXNnRXZlbnQgPSBhd2FpdCBtc2dQcm9taXNlOwotICAgIGFzc2VydF9hcnJheV9lcXVhbHMobXNn
RXZlbnQuZGF0YSwgdGVzdENhc2UuZXhwZWN0YXRpb24pOwotICB9LCB0ZXN0Q2FzZS5kZXNjcmlw
dGlvbik7Ci19Ci0KLXRlc3RDYXNlcy5mb3JFYWNoKGltcG9ydF90ZXN0KTsKLTwvc2NyaXB0Pgot
PC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jv
c3Mtb3JpZ2luLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1z
Y3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2EyY2U0
MDQ5YWJlZjU4ZTdiNDMwMGY0YzRmYjYyNjM3ZTk3NWZkMgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZBSUwgaW1wb3J0U2NyaXB0cygpIHN1cHBvcnRzIGNy
b3NzLW9yaWdpbiByZXF1ZXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IE5ldHdvcmtFcnJvcjogQSBzZXJ2ZXIgd2l0aCB0
aGUgc3BlY2lmaWVkIGhvc3RuYW1lIGNvdWxkIG5vdCBiZSBmb3VuZC4iCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5odHRwcy5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNzczNzA4YTlmYmNlMzJhNmIxN2YyMmQ4OGI5ZmI2ZWJjMzU1MzcxMAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3Nz
LW9yaWdpbi5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTggQEAKKzwhRE9DVFlQRSBodG1sPgorPG1l
dGEgY2hhcnNldD0idXRmLTgiPgorPHRpdGxlPlRlc3RzIGZvciBpbXBvcnRTY3JpcHRzOiBjcm9z
cy1vcmlnaW48L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48
L3NjcmlwdD4KKzxib2R5PgorPHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAg
ICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luJzsK
KyAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKKyAgICBsZXQg
cmVnID0gYXdhaXQgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoCisgICAgICAncmVz
b3VyY2VzL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi13b3JrZXIuc3ViLmpzJywgeyBzY29w
ZTogc2NvcGUgfSk7CisgICAgdC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOwor
ICAgIGFzc2VydF9ub3RfZXF1YWxzKHJlZy5pbnN0YWxsaW5nLCBudWxsLCAnd29ya2VyIGlzIGlu
c3RhbGxpbmcnKTsKKyAgfSwgJ2ltcG9ydFNjcmlwdHMoKSBzdXBwb3J0cyBjcm9zcy1vcmlnaW4g
cmVxdWVzdHMnKTsKKzwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvbmF2aWdhdGlvbi1wcmVsb2FkL3Jlc291cmNlcy9jaHVua2VkLWVuY29kaW5nLXNjb3Bl
LnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1wcmVsb2FkL3Jlc291cmNlcy9jaHVu
a2VkLWVuY29kaW5nLXNjb3BlLnB5CmluZGV4IDkxMmY0M2QwMDQwMjI3OGQ1ODViZDEyM2RlNWZl
MTFkMTBhYjFjMDQuLjY1OWM0ZDhjZGYyNGU0ODE0MDhkOWNlYWNmYWQ5Y2ExZDU1MzczYTkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcHJlbG9hZC9yZXNvdXJjZXMv
Y2h1bmtlZC1lbmNvZGluZy1zY29wZS5weQorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0
aW9uLXByZWxvYWQvcmVzb3VyY2VzL2NodW5rZWQtZW5jb2Rpbmctc2NvcGUucHkKQEAgLTE0LDcg
KzE0LDYgQEAgZGVmIG1haW4ocmVxdWVzdCwgcmVzcG9uc2UpOgogICAgICAgICAgICAgcmVzcG9u
c2Uud3JpdGVyLndyaXRlKHUiJXNcbiVzXG4iICUgKGxlbihzdHIoaWR4KSksIGlkeCkpCiAgICAg
ICAgIGVsc2U6CiAgICAgICAgICAgICByZXNwb25zZS53cml0ZXIud3JpdGUodSIlc1xyXG4lc1xy
XG4iICUgKGxlbihzdHIoaWR4KSksIGlkeCkpCi0gICAgICAgIHJlc3BvbnNlLndyaXRlci5mbHVz
aCgpCiAgICAgICAgIHRpbWUuc2xlZXAoMC4wMDEpCiAKICAgICByZXNwb25zZS53cml0ZXIud3Jp
dGUodSIwXHJcblxyXG4iKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlv
bi1yZWRpcmVjdC1yZXNvbHV0aW9uLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVzb2x1dGlvbi5odHRwcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uM2UyZWI4M2Y0ZjZlOGU4ZGJiYmNlOWQ0ZDYyZjBlNTZjYTBhYmQxYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVzb2x1
dGlvbi5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK1BBU1MgdGVzdCByZWxh
dGl2ZSBvcGFxdWVyZWRpcmVjdAorUEFTUyB0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJlZGlyZWN0IHdp
dGggQ2FjaGVTdG9yYWdlCitQQVNTIHRlc3QgcmVsYXRpdmUgb3BhcXVlcmVkaXJlY3Qgd2l0aCBj
bG9uZQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXJlZGlyZWN0
LXJlc29sdXRpb24uaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVk
aXJlY3QtcmVzb2x1dGlvbi5odHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU5ZTFjYWZlYzM0ODRhODdm
YmUxZjRiYTMxY2RiMmU3ZDNmYjk2MGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJlc29sdXRpb24uaHR0cHMuaHRtbApAQCAtMCwwICsx
LDU4IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5TZXJ2aWNlIFdvcmtlcjogTmF2aWdhdGlv
biBSZWRpcmVjdCBSZXNvbHV0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxw
ZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8Ym9keT4KKzxzY3JpcHQ+CisKK2Z1bmN0aW9uIG1ha2Vf
YWJzb2x1dGUodXJsKSB7CisgIHJldHVybiBuZXcgVVJMKHVybCwgbG9jYXRpb24pLnRvU3RyaW5n
KCk7Cit9CisKK2NvbnN0IHNjcmlwdCA9ICdyZXNvdXJjZXMvZmV0Y2gtcmV3cml0ZS13b3JrZXIu
anMnOworCitmdW5jdGlvbiByZWRpcmVjdF9yZXN1bHRfdGVzdChzY29wZSwgZXhwZWN0ZWRfdXJs
LCBkZXNjcmlwdGlvbikgeworICBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgY29uc3Qg
cmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0
ZXIoCisgICAgICAgICAgdCwgc2NyaXB0LCBzY29wZSk7CisgICAgICB0LmFkZF9jbGVhbnVwKCgp
ID0+IHsKKyAgICAgICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUp
OworICAgICAgfSkKKyAgICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgICAgIC8vIFRoZSBuYXZpZ2F0aW9uIHRvIHxz
Y29wZXwgd2lsbCBiZSByZXNvbHZlZCBieSBhIGZldGNoIHRvIHxyZWRpcmVjdF91cmx8CisgICAg
ICAvLyB3aGljaCByZXR1cm5zIGEgcmVsYXRpdmUgTG9jYXRpb24gaGVhZGVyLiBJZiBpdCBpcyBy
ZXNvbHZlZCByZWxhdGl2ZSB0bworICAgICAgLy8gfHNjb3BlfCwgdGhlIHJlc3VsdCB3aWxsIGJl
IG5hdmlnYXRlLXJlZGlyZWN0LXJlc29sdXRpb24vYmxhbmsuaHRtbC4gSWYKKyAgICAgIC8vIHJl
bGF0aXZlIHRvIHxyZWRpcmVjdF91cmx8LCBpdCB3aWxsIGJlIHJlc291cmNlcy9ibGFuay5odG1s
LiBUaGUgbGF0dGVyCisgICAgICAvLyBpcyBjb3JyZWN0LgorICAgICAgY29uc3QgaWZyYW1lID0g
YXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICAgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGlm
cmFtZS5yZW1vdmUoKTsgfSk7CisgICAgICBhc3NlcnRfZXF1YWxzKGlmcmFtZS5jb250ZW50V2lu
ZG93LmxvY2F0aW9uLmhyZWYsCisgICAgICAgICAgICAgICAgICAgIG1ha2VfYWJzb2x1dGUoZXhw
ZWN0ZWRfdXJsKSk7CisgIH0sIGRlc2NyaXB0aW9uKTsKK30KKworLy8gfHJlZGlyZWN0X3VybHwg
c2VydmVzIGEgcmVsYXRpdmUgcmVkaXJlY3QgdG8gcmVzb3VyY2VzL2JsYW5rLmh0bWwuCitjb25z
dCByZWRpcmVjdF91cmwgPSAncmVzb3VyY2VzL3JlZGlyZWN0LnB5P1JlZGlyZWN0PWJsYW5rLmh0
bWwnOworCisvLyB8c2NvcGVfYmFzZXwgZG9lcyBub3QgZXhpc3QgYnV0IHdpbGwgYmUgcmVwbGFj
ZWQgd2l0aCBhIGZldGNoIG9mCisvLyB8cmVkaXJlY3RfdXJsfCBieSBmZXRjaC1yZXdyaXRlLXdv
cmtlci5qcy4KK2NvbnN0IHNjb3BlX2Jhc2UgPSAncmVzb3VyY2VzL3N1YmRpci9uYXZpZ2F0aW9u
LXJlZGlyZWN0LXJlc29sdXRpb24/JyArCisgICAgJ3JlZGlyZWN0LW1vZGU9bWFudWFsJnVybD0n
ICsKKyAgICBlbmNvZGVVUklDb21wb25lbnQobWFrZV9hYnNvbHV0ZShyZWRpcmVjdF91cmwpKTsK
KworLy8gV2hlbiB0aGUgU2VydmljZSBXb3JrZXIgZm9yd2FyZHMgdGhlIHJlc3VsdCBvZiB8cmVk
aXJlY3RfdXJsfCBhcyBhbgorLy8gb3BhcXVlcmVkaXJlY3QgcmVzcG9uc2UsIHRoZSByZWRpcmVj
dCB1c2VzIHRoZSByZXNwb25zZSdzIFVSTCBsaXN0IGFzIHRoZQorLy8gYmFzZSBVUkwsIG5vdCB0
aGUgcmVxdWVzdC4KK3JlZGlyZWN0X3Jlc3VsdF90ZXN0KHNjb3BlX2Jhc2UsICdyZXNvdXJjZXMv
YmxhbmsuaHRtbCcsCisgICAgICAgICAgICAgICAgICAgICAndGVzdCByZWxhdGl2ZSBvcGFxdWVy
ZWRpcmVjdCcpOworCisvLyBUaGUgcmVzcG9uc2UncyBiYXNlIFVSTCBzaG91bGQgYmUgcHJlc2Vy
dmVkIGFjcm9zcyBDYWNoZVN0b3JhZ2UgYW5kIGNsb25lLgorcmVkaXJlY3RfcmVzdWx0X3Rlc3Qo
c2NvcGVfYmFzZSArICcmY2FjaGU9MScsICdyZXNvdXJjZXMvYmxhbmsuaHRtbCcsCisgICAgICAg
ICAgICAgICAgICAgICAndGVzdCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVjdCB3aXRoIENhY2hlU3Rv
cmFnZScpOworcmVkaXJlY3RfcmVzdWx0X3Rlc3Qoc2NvcGVfYmFzZSArICcmY2xvbmU9MScsICdy
ZXNvdXJjZXMvYmxhbmsuaHRtbCcsCisgICAgICAgICAgICAgICAgICAgICAndGVzdCByZWxhdGl2
ZSBvcGFxdWVyZWRpcmVjdCB3aXRoIGNsb25lJyk7CisKKzwvc2NyaXB0PgorPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0
ZWQudHh0CmluZGV4IDY0ZTdlMjVjMjBkY2Q4OWRhZmZjNzIyMTc0MmQ5NTBjODcyNjc5YWUuLjU1
ODk4MDVkOGQwMjU1MDFhZDlkNWI4MjgzODRiOWQ5MWM1OTE1ZGYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACiAKLUZBSUwgU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBuYXZpZ2F0aW9u
IHRpbWluZyBhc3NlcnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2dy
ZWF0ZXJfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAgYnV0IGdvdCAwIFJl
YWNoZWQgdW5yZWFjaGFibGUgY29kZQorRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5h
dmlnYXRpb24gdGltaW5nIGFzc2VydF9ncmVhdGVyX3RoYW46IGV4cGVjdGVkIGEgbnVtYmVyIGdy
ZWF0ZXIgdGhhbiAwIGJ1dCBnb3QgMAogUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5h
dmlnYXRpb24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2sKIFBBU1MgU2VydmljZSB3b3JrZXIgY29u
dHJvbGxlZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMuaHRtbAppbmRleCAxM2I5ZWU0NzViMTg5YWYxMTIx
YTY2MGZhOTRmODhjMmI1NjU0MTIzLi42YjUxYTVjMmRhMjEzZWIyN2NmMGQ5ZmQ0MDFiN2M0OWI1
MzQ5OTUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5o
dHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBz
Lmh0bWwKQEAgLTMyLDgxICszMiw0NSBAQCBmdW5jdGlvbiBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFt
ZSwgdXJsKSB7CiAKIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL25hdmlnYXRpb24tdGlt
aW5nLXdvcmtlci5qcyc7CiAKLXByb21pc2VfdGVzdCh0ID0+IHsKK3Byb21pc2VfdGVzdChhc3lu
YyAodCkgPT4gewogICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9lbXB0eS5odG1sJzsKLSAg
ICBsZXQgZnJhbWU7CisgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3Jr
ZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyX3VybCwgc2NvcGUpOworICAgIHQu
YWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgICAgYXdhaXQg
d2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsK
KyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgICB0LmFkZF9j
bGVhbnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKIAotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtl
cl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSkKLSAgICAgIC50
aGVuKHIgPT4gewotICAgICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgci5pbnN0YWxsaW5n
LCAnYWN0aXZhdGVkJyk7Ci0gICAgICB9KQotICAgICAgLnRoZW4oKCkgPT4gd2l0aF9pZnJhbWUo
c2NvcGUpKQotICAgICAgLnRoZW4oZiA9PiB7Ci0gICAgICAgIGZyYW1lID0gZjsKLSAgICAgICAg
cmV0dXJuIG5hdmlnYXRlX2luX2ZyYW1lKGZyYW1lLCAncmVzb3VyY2VzL2VtcHR5Lmh0bWwnKTsK
LSAgICAgIH0pCi0gICAgICAudGhlbih0aW1pbmcgPT4gewotICAgICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuKHRpbWluZy53b3JrZXJTdGFydCwgMCk7Ci0gICAgICAgIHZlcmlmeSh0aW1pbmcpOwot
ICAgICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRo
ZW4oKCkgPT4gewotICAgICAgICBpZiAoZnJhbWUpCi0gICAgICAgICAgICBmcmFtZS5yZW1vdmUo
KTsKLSAgICAgICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwot
ICAgICAgfSk7CisgICAgY29uc3QgdGltaW5nID0gYXdhaXQgbmF2aWdhdGVfaW5fZnJhbWUoZnJh
bWUsIHNjb3BlKTsKKyAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKHRpbWluZy53b3JrZXJTdGFydCwg
MCk7CisgICAgdmVyaWZ5KHRpbWluZyk7CiB9LCAnU2VydmljZSB3b3JrZXIgY29udHJvbGxlZCBu
YXZpZ2F0aW9uIHRpbWluZycpOwogCi1wcm9taXNlX3Rlc3QodCA9PiB7Citwcm9taXNlX3Rlc3Qo
YXN5bmMgKHQpID0+IHsKICAgICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvZW1wdHkuaHRtbD9u
ZXR3b3JrLWZhbGxiYWNrJzsKLSAgICBsZXQgZnJhbWU7CisgICAgY29uc3QgcmVnaXN0cmF0aW9u
ID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2Vy
X3VybCwgc2NvcGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVn
aXN0ZXIoKSk7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3Rh
bGxpbmcsICdhY3RpdmF0ZWQnKTsKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1l
KHNjb3BlKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKIAotICAg
IHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJf
dXJsLCBzY29wZSkKLSAgICAgIC50aGVuKHIgPT4gewotICAgICAgICByZXR1cm4gd2FpdF9mb3Jf
c3RhdGUodCwgci5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7Ci0gICAgICB9KQotICAgICAgLnRo
ZW4oKCkgPT4gd2l0aF9pZnJhbWUoc2NvcGUpKQotICAgICAgLnRoZW4oZiA9PiB7Ci0gICAgICAg
IGZyYW1lID0gZjsKLSAgICAgICAgcmV0dXJuIG5hdmlnYXRlX2luX2ZyYW1lKGZyYW1lLCAncmVz
b3VyY2VzL2VtcHR5Lmh0bWw/bmV0d29yay1mYWxsYmFjaycpOwotICAgICAgfSkKLSAgICAgIC50
aGVuKHRpbWluZyA9PiB7Ci0gICAgICAgIHZlcmlmeSh0aW1pbmcpOwotICAgICAgfSkKLSAgICAg
IC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQotICAgICAgLnRoZW4oKCkgPT4gewotICAg
ICAgICBpZiAoZnJhbWUpCi0gICAgICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgICAgcmV0
dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICAgICAgfSk7CisgICAg
Y29uc3QgdGltaW5nID0gYXdhaXQgbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsIHNjb3BlKTsKKyAg
ICB2ZXJpZnkodGltaW5nKTsKIH0sICdTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRp
b24gdGltaW5nIG5ldHdvcmsgZmFsbGJhY2snKTsKIAotcHJvbWlzZV90ZXN0KHQgPT4geworcHJv
bWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL3Jl
ZGlyZWN0LnB5P1JlZGlyZWN0PWVtcHR5Lmh0bWwnOwotICAgIGxldCBmcmFtZTsKKyAgICBjb25z
dCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdp
c3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdp
c3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdp
c3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworICAgIGNvbnN0IGZyYW1lID0gYXdh
aXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gZnJhbWUucmVt
b3ZlKCkpOwogCi0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lz
dGVyKHQsIHdvcmtlcl91cmwsIHNjb3BlKQotICAgICAgLnRoZW4ociA9PiB7Ci0gICAgICAgIHJl
dHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICAg
IH0pCi0gICAgICAudGhlbigoKSA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihm
ID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICByZXR1cm4gbmF2aWdhdGVfaW5fZnJh
bWUoZnJhbWUsICdyZXNvdXJjZXMvcmVkaXJlY3QucHk/UmVkaXJlY3Q9ZW1wdHkuaHRtbCcpOwot
ICAgICAgfSkKLSAgICAgIC50aGVuKHRpbWluZyA9PiB7Ci0gICAgICAgIHZlcmlmeSh0aW1pbmcp
OwotICAgICAgICAvLyBBZGRpdGlvbmFsIGNoZWNrcyBmb3IgcmVkaXJlY3RlZCBuYXZpZ2F0aW9u
LgotICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmcucmVkaXJlY3RTdGFydCA8PSB0aW1pbmcucmVk
aXJlY3RFbmQsCi0gICAgICAgICAgICAnRXhwZWN0ZWQgcmVkaXJlY3RTdGFydCA8PSByZWRpcmVj
dEVuZCcpOwotICAgICAgICBhc3NlcnRfdHJ1ZSh0aW1pbmcucmVkaXJlY3RFbmQgPD0gdGltaW5n
LmZldGNoU3RhcnQsCi0gICAgICAgICAgICAnRXhwZWN0ZWQgcmVkaXJlY3RFbmQgPD0gZmV0Y2hT
dGFydCcpOwotICAgICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKQot
ICAgICAgLnRoZW4oKCkgPT4gewotICAgICAgICBpZiAoZnJhbWUpCi0gICAgICAgICAgICBmcmFt
ZS5yZW1vdmUoKTsKLSAgICAgICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwg
c2NvcGUpOwotICAgICAgfSk7CisgICAgY29uc3QgdGltaW5nID0gYXdhaXQgbmF2aWdhdGVfaW5f
ZnJhbWUoZnJhbWUsIHNjb3BlKTsKKyAgICB2ZXJpZnkodGltaW5nKTsKKyAgICAvLyBBZGRpdGlv
bmFsIGNoZWNrcyBmb3IgcmVkaXJlY3RlZCBuYXZpZ2F0aW9uLgorICAgIGFzc2VydF90cnVlKHRp
bWluZy5yZWRpcmVjdFN0YXJ0IDw9IHRpbWluZy5yZWRpcmVjdEVuZCwKKyAgICAgICAgJ0V4cGVj
dGVkIHJlZGlyZWN0U3RhcnQgPD0gcmVkaXJlY3RFbmQnKTsKKyAgICBhc3NlcnRfdHJ1ZSh0aW1p
bmcucmVkaXJlY3RFbmQgPD0gdGltaW5nLmZldGNoU3RhcnQsCisgICAgICAgICdFeHBlY3RlZCBy
ZWRpcmVjdEVuZCA8PSBmZXRjaFN0YXJ0Jyk7CiB9LCAnU2VydmljZSB3b3JrZXIgY29udHJvbGxl
ZCBuYXZpZ2F0aW9uIHRpbWluZyByZWRpcmVjdCcpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odHRwcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odHRwcy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOWY5MjkxMTI0YzgwNzAzYmYzZTFjYTI2MWYzYWI2ODdhNDg2
ZmQ0NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25lc3RlZC1ibG9iLXVy
bC13b3JrZXJzLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKKworCitIYXJuZXNz
IEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworVElNRU9VVCBOZXN0ZWQgYmxvYiBV
Ukwgd29ya2VycyBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4gVGVz
dCB0aW1lZCBvdXQKK05PVFJVTiBOZXN0ZWQgd29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJM
IHdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4KK05PVFJV
TiBOZXN0ZWQgYmxvYiBVUkwgd29ya2VyIGNyZWF0ZWQgZnJvbSBhIHdvcmtlciBzaG91bGQgYmUg
aW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI2
OWNiYjcwMWZhYmMyZmFhNzQ2ZjZlZDQ3ZmJhOGZhOWQ0MjNjOAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLmh0bWwKQEAg
LTAsMCArMSw0MiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRp
dGxlPlNlcnZpY2UgV29ya2VyOiBuZXN0ZWQgYmxvYiBVUkwgd29ya2VyIGNsaWVudHM8L3RpdGxl
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxib2R5
PgorPHNjcmlwdD4KKworY29uc3QgU0NSSVBUID0gJ3Jlc291cmNlcy9zaW1wbGUtaW50ZXJjZXB0
LXdvcmtlci5qcyc7Citjb25zdCBTQ09QRSA9ICdyZXNvdXJjZXMvJzsKK2NvbnN0IFJFU09VUkNF
ID0gJ3Jlc291cmNlcy9zaW1wbGUudHh0JzsKKworcHJvbWlzZV90ZXN0KCh0KSA9PiB7CisgIHJl
dHVybiBydW5UZXN0KHQsICdyZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHRtbCcp
OworfSwgJ05lc3RlZCBibG9iIFVSTCB3b3JrZXJzIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBieSBh
IHNlcnZpY2Ugd29ya2VyLicpOworCitwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1
blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13
b3JrZXIuaHRtbCcpOworfSwgJ05lc3RlZCB3b3JrZXIgY3JlYXRlZCBmcm9tIGEgYmxvYiBVUkwg
d29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLicpOworCitw
cm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRlc3QodCwgJ3Jlc291cmNlcy9uZXN0
ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbCcpOworfSwgJ05lc3Rl
ZCBibG9iIFVSTCB3b3JrZXIgY3JlYXRlZCBmcm9tIGEgd29ya2VyIHNob3VsZCBiZSBpbnRlcmNl
cHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLicpOworCithc3luYyBmdW5jdGlvbiBydW5UZXN0KHQs
IGlmcmFtZV91cmwpIHsKKyAgY29uc3QgcmVnID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdp
c3Rlcl9hbmRfcmVnaXN0ZXIodCwgU0NSSVBULCBTQ09QRSk7CisgIHQuYWRkX2NsZWFudXAoXyA9
PiByZWcudW5yZWdpc3RlcigpKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnLmluc3Rh
bGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1l
KGlmcmFtZV91cmwpOworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3ZlKCkpOworICBh
c3NlcnRfbm90X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29y
a2VyLmNvbnRyb2xsZXIsCisgICAgICAgICAgICAgICAgICAgIG51bGwsICdmcmFtZSBzaG91bGQg
YmUgY29udHJvbGxlZCcpOworCisgIGNvbnN0IHJlc3BvbnNlX3RleHQgPSBhd2FpdCBmcmFtZS5j
b250ZW50V2luZG93LmZldGNoX2luX3dvcmtlcihSRVNPVVJDRSk7CisgIGFzc2VydF9lcXVhbHMo
cmVzcG9uc2VfdGV4dCwgJ2ludGVyY2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyJywKKyAgICAgICAg
ICAgICAgICAnZmV0Y2goKSBzaG91bGQgYmUgaW50ZXJjZXB0ZWQuJyk7Cit9CisKKzwvc2NyaXB0
PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBv
cnQuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjI1YjM3MGI3MDk0YmY4ZjkyY2MzNDc2OTNjOWFjNWExZmE2NjQ4NDUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC5hbnkuanMK
QEAgLTAsMCArMSwzIEBACisvLyBNRVRBOiBnbG9iYWw9c2VydmljZXdvcmtlcgorCitpbXBvcnRT
Y3JpcHRzKCdyZXNvdXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMnKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNld29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNl
d29ya2VyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzEwOWRiMzQ4MGY2ZTkzMGY2NzQ2YTA4
NDczNzE1ODU0MjdmZWFjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8t
ZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NSBAQAorCitQQVNTIE1vZHVsZSBVUkwKK1BBU1MgQW5vdGhlciBtb2R1bGUgVVJMCitQQVNTIE1v
ZHVsZSBkYXRhOiBVUkwKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1p
Yy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5
bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNld29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5zZXJ2aWNld29ya2VyLmh0bWwKQEAg
LTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGlu
ZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcGVyZm9ybWFuY2Ut
dGltZWxpbmUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3BlcmZvcm1hbmNlLXRpbWVs
aW5lLmh0dHBzLmh0bWwKaW5kZXggMWZlMTlkYTUzYmU2YzQ2MGNhZTVmMDY5Nzk0YmJkZWUzZjRh
MGRhOC4uZTU2ZTZmZTQxNmZmMjE1MzQxYmE5YjZkZjA4OGYxMTFmOTY0NTYyMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcGVyZm9ybWFuY2UtdGltZWxpbmUuaHR0cHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9wZXJmb3JtYW5jZS10aW1lbGluZS5odHRwcy5odG1sCkBAIC0x
Miw3ICsxMiw3IEBAIHNlcnZpY2Vfd29ya2VyX3Rlc3QoCiAvLyBpcyBpbmNsdWRlZCBpbiB0aGUg
UGVyZm9ybWFuY2UgQVBJJ3MgdGltaW5nIGluZm9ybWF0aW9uLgogcHJvbWlzZV90ZXN0KHQgPT4g
ewogICBsZXQgc2NyaXB0ID0gJ3Jlc291cmNlcy9lbXB0eS1idXQtc2xvdy13b3JrZXIuanMnOwot
ICBsZXQgc2NvcGUgPSAncmVzb3VyY2VzL2R1bW15LnR4dD9zbG93LXN3LXRpbWluZyc7CisgIGxl
dCBzY29wZSA9ICdyZXNvdXJjZXMvc2FtcGxlLnR4dD9zbG93LXN3LXRpbWluZyc7CiAgIGxldCB1
cmwgPSBuZXcgVVJMKHNjb3BlLCB3aW5kb3cubG9jYXRpb24pLmhyZWY7CiAgIGxldCBzbG93VVJM
ID0gdXJsICsgJyZzbG93JzsKICAgbGV0IGZyYW1lOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVkaXJlY3RlZC1yZXNwb25zZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBmOGEy
NTM1OTBlMTk5Y2VjYjFkMGM2NjI3ZmExMjZmY2NjZWI0MWIzLi4zYWZkNzJiYTdmNWJmMDFjNzdi
NjNlMmEwOGYxOTVlM2ZjYjExMmUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRp
cmVjdGVkLXJlc3BvbnNlLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMTQsNiArMTQsMTIg
QEAgUEFTUyBtb2RlOiAibWFudWFsIiwgbm8gbW9kZSBjaGFuZ2UKIFBBU1MgbW9kZTogImZvbGxv
dyIsIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZQogUEFTUyBtb2RlOiAiZXJyb3IiLCBnZW5l
cmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UKIFBBU1MgbW9kZTogIm1hbnVhbCIsIGdlbmVyYXRlZCBy
ZWRpcmVjdCByZXNwb25zZQorUEFTUyBtb2RlOiAiZm9sbG93IiwgbWFudWFsbHktZ2VuZXJhdGVk
IHJlZGlyZWN0IHJlc3BvbnNlCitQQVNTIG1vZGU6ICJlcnJvciIsIG1hbnVhbGx5LWdlbmVyYXRl
ZCByZWRpcmVjdCByZXNwb25zZQorUEFTUyBtb2RlOiAibWFudWFsIiwgbWFudWFsbHktZ2VuZXJh
dGVkIHJlZGlyZWN0IHJlc3BvbnNlCitQQVNTIG1vZGU6ICJmb2xsb3ciLCBnZW5lcmF0ZWQgcmVs
YXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UKK1BBU1MgbW9kZTogImVycm9yIiwgZ2VuZXJhdGVkIHJl
bGF0aXZlIHJlZGlyZWN0IHJlc3BvbnNlCitGQUlMIG1vZGU6ICJtYW51YWwiLCBnZW5lcmF0ZWQg
cmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBUaGUgVVJMIGNhbuKAmXQgYmUgc2hv
d24iCiBQQVNTIEZldGNoIHNob3VsZCBmb2xsb3cgdGhlIHJlZGlyZWN0IHJlc3BvbnNlIDIwIHRp
bWVzCiBQQVNTIEZldGNoIHNob3VsZCBub3QgZm9sbG93IHRoZSByZWRpcmVjdCByZXNwb25zZSAy
MSB0aW1lcy4KIFBBU1MgVGhlIFVSTCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHJlZGlyZWN0ZWQg
cmVxdWVzdCBzaG91bGQgYmUgcHJvcGFnYXRlZCB0byByZXNwb25zZS4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQtcmVzcG9uc2UuaHR0cHMuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZGlyZWN0ZWQtcmVzcG9uc2UuaHR0cHMuaHRtbAppbmRleCA3MjYyYWYzNmFi
YTY5Nzc2MzhjY2NjMzQxZDY5MzU5NzljYzg2YWY2Li43MWIzNWQwZTEyMDUwNjIzZDY1MGNhODIy
Yzc4MDAzN2Q4MjU4NDIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVk
LXJlc3BvbnNlLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVkaXJlY3RlZC1y
ZXNwb25zZS5odHRwcy5odG1sCkBAIC0yNjcsNyArMjY3LDcgQEAgcHJvbWlzZV90ZXN0KHQgPT4g
c2V0dXBfYW5kX2NsZWFuKCkKIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAg
ICAgLnRoZW4oKCkgPT4gewogICAgICAgY29uc3QgdXJsID0gaG9zdF9pbmZvWydIVFRQU19PUklH
SU4nXSArIGJhc2VfcGF0aCgpICsKLSAgICAgICAgICAgICAgICAgICdkdW1teT91cmw9JyArIGVu
Y29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisgICAgICAgICAgICAgICAgICAnc2FtcGxl
P3VybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KFRBUkdFVF9VUkwpICsKICAgICAgICAgICAgICAg
ICAgICcmb3JpZ2luYWwtcmVkaXJlY3QtbW9kZT1mb2xsb3cmc3c9Z2VuJzsKICAgICAgIHJldHVy
biByZWRpcmVjdGVkX3Rlc3Qoe3VybDogdXJsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmV0Y2hfb3B0aW9uOiB7cmVkaXJlY3Q6ICdmb2xsb3cnfSwKQEAgLTI4MSw3ICsyODEsNyBA
QCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQogcHJvbWlzZV90ZXN0KHQgPT4g
c2V0dXBfYW5kX2NsZWFuKCkKICAgICAudGhlbigoKSA9PiB7CiAgICAgICBjb25zdCB1cmwgPSBo
b3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKwotICAgICAgICAgICAgICAg
ICAgJ2R1bW15P3VybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KFRBUkdFVF9VUkwpICsKKyAgICAg
ICAgICAgICAgICAgICdzYW1wbGU/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoVEFSR0VUX1VS
TCkgKwogICAgICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWVycm9yJnN3
PWdlbic7CiAgICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKAogICAgICAgICAgIHQsIGZy
YW1lLmNvbnRlbnRXaW5kb3cuVHlwZUVycm9yLApAQCAtMjk2LDggKzI5Niw4IEBAIHByb21pc2Vf
dGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRf
Y2xlYW4oKQogICAgIC50aGVuKCgpID0+IHsKICAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1sn
SFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCi0gICAgICAgICAgICAgICAgICAnZHVtbXk/
dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoVEFSR0VUX1VSTCkgKwotICAgICAgICAgICAgICAg
ICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWZvbGxvdyZzdz1nZW4nOworICAgICAgICAgICAg
ICAgICAgJ3NhbXBsZT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisg
ICAgICAgICAgICAgICAgICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1vZGU9bWFudWFsJnN3PWdlbic7
CiAgICAgICByZXR1cm4gcmVkaXJlY3RlZF90ZXN0KHt1cmw6IHVybCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZldGNoX29wdGlvbjoge3JlZGlyZWN0OiAnbWFudWFsJ30sCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9tZXRob2Q6IGZyYW1lLmNvbnRlbnRXaW5k
b3cuZmV0Y2gsCkBAIC0zMDcsNiArMzA3LDEwMiBAQCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9h
bmRfY2xlYW4oKQogICAgIH0pLAogICAnbW9kZTogIm1hbnVhbCIsIGdlbmVyYXRlZCByZWRpcmVj
dCByZXNwb25zZScpOwogCisvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09CisvLyBUZXN0cyBmb3IgcmVxdWVzdHMgdGhhdCBhcmUgaW4tc2Nv
cGUgb2YgdGhlIHNlcnZpY2Ugd29ya2VyLiBUaGUgc2VydmljZQorLy8gd29ya2VyIHJldHVybnMg
YSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UgbWFudWFsbHkgd2l0aCB0aGUgUmVzcG9uc2UK
Ky8vIGNvbnN0cnVjdG9yLgorLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQorcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkK
KyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09S
SUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9JyAr
IGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisgICAgICAgICAgICAgICAgICAnJm9y
aWdpbmFsLXJlZGlyZWN0LW1vZGU9Zm9sbG93JnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJu
IHJlZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmZXRjaF9vcHRpb246IHtyZWRpcmVjdDogJ2ZvbGxvdyd9LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZmV0Y2hfbWV0aG9kOiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfdHlwZTogJ2Jhc2ljJywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkX3JlZGlyZWN0ZWQ6IHRydWUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9pbnRlcmNlcHRlZF91cmxzOiBbdXJs
LCBUQVJHRVRfVVJMXX0pCisgICAgfSksCisgICdtb2RlOiAiZm9sbG93IiwgbWFudWFsbHktZ2Vu
ZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlJyk7CisKK3Byb21pc2VfdGVzdCh0ID0+IHNldHVwX2Fu
ZF9jbGVhbigpCisgICAgLnRoZW4oKCkgPT4geworICAgICAgY29uc3QgdXJsID0gaG9zdF9pbmZv
WydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0aCgpICsKKyAgICAgICAgICAgICAgICAgICdzYW1w
bGU/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoVEFSR0VUX1VSTCkgKworICAgICAgICAgICAg
ICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWVycm9yJnN3PWdlbi1tYW51YWwnOworICAg
ICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgICAgICB0LCBmcmFtZS5jb250ZW50
V2luZG93LlR5cGVFcnJvciwKKyAgICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKHVy
bCwge3JlZGlyZWN0OiAnZXJyb3InfSksCisgICAgICAgICAgJ1RoZSBnZW5lcmF0ZWQgcmVkaXJl
Y3QgcmVzcG9uc2UgZnJvbSB0aGUgc2VydmljZSB3b3JrZXIgc2hvdWxkICcgKworICAgICAgICAg
ICdiZSB0cmVhdGVkIGFzIGFuIGVycm9yIHdoZW4gdGhlIHJlZGlyZWN0IGZsYWcgb2YgcmVxdWVz
dCB3YXMnICsKKyAgICAgICAgICAnIFwnZXJyb3JcJy4nKQorICAgICAgICAudGhlbigoKSA9PiBj
aGVja19pbnRlcmNlcHRlZF91cmxzKFt1cmxdKSk7CisgICAgfSksCisgICdtb2RlOiAiZXJyb3Ii
LCBtYW51YWxseS1nZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90ZXN0
KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1
cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAg
ICAgICAgICAgJ3NhbXBsZT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSAr
CisgICAgICAgICAgICAgICAgICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1vZGU9bWFudWFsJnN3PWdl
bi1tYW51YWwnOworICAgICAgcmV0dXJuIHJlZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmwsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9vcHRpb246IHtyZWRpcmVjdDogJ21hbnVh
bCd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2hfbWV0aG9kOiBmcmFtZS5j
b250ZW50V2luZG93LmZldGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0
ZWRfdHlwZTogJ29wYXF1ZXJlZGlyZWN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGV4cGVjdGVkX3JlZGlyZWN0ZWQ6IGZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZXhwZWN0ZWRfaW50ZXJjZXB0ZWRfdXJsczogW3VybF19KQorICAgIH0pLAorICAnbW9kZTog
Im1hbnVhbCIsIG1hbnVhbGx5LWdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZScpOworCisvLyA9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cisv
LyBUZXN0cyBmb3IgcmVxdWVzdHMgdGhhdCBhcmUgaW4tc2NvcGUgb2YgdGhlIHNlcnZpY2Ugd29y
a2VyLiBUaGUgc2VydmljZQorLy8gd29ya2VyIHJldHVybnMgYSBnZW5lcmF0ZWQgcmVkaXJlY3Qg
cmVzcG9uc2Ugd2l0aCBhIHJlbGF0aXZlIGxvY2F0aW9uIGhlYWRlci4KKy8vIEdlbmVyYXRlZCBy
ZXNwb25zZXMgZG8gbm90IGhhdmUgVVJMcywgc28gdGhpcyBzaG91bGQgZmFpbCB0byByZXNvbHZl
LgorLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQorcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9
PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9w
YXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9YmxhbmsuaHRtbCcgKworICAg
ICAgICAgICAgICAgICAgJyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWZvbGxvdyZzdz1nZW4tbWFu
dWFsJzsKKyAgICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNfanMoCisgICAgICAgICAgdCwgZnJh
bWUuY29udGVudFdpbmRvdy5UeXBlRXJyb3IsCisgICAgICAgICAgZnJhbWUuY29udGVudFdpbmRv
dy5mZXRjaCh1cmwsIHtyZWRpcmVjdDogJ2ZvbGxvdyd9KSwKKyAgICAgICAgICAnRm9sbG93aW5n
IHRoZSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UgZnJvbSB0aGUgc2VydmljZSB3b3JrZXIg
JysKKyAgICAgICAgICAnc2hvdWxkIHJlc3VsdCBmYWlsLicpCisgICAgICAgIC50aGVuKCgpID0+
IGNoZWNrX2ludGVyY2VwdGVkX3VybHMoW3VybF0pKTsKKyAgICB9KSwKKyAgJ21vZGU6ICJmb2xs
b3ciLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90
ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25z
dCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAg
ICAgICAgICAgICAgJ3NhbXBsZT91cmw9YmxhbmsuaHRtbCcgKworICAgICAgICAgICAgICAgICAg
JyZvcmlnaW5hbC1yZWRpcmVjdC1tb2RlPWVycm9yJnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0
dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgICAgICB0LCBmcmFtZS5jb250ZW50V2luZG93
LlR5cGVFcnJvciwKKyAgICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKHVybCwge3Jl
ZGlyZWN0OiAnZXJyb3InfSksCisgICAgICAgICAgJ1RoZSBnZW5lcmF0ZWQgcmVkaXJlY3QgcmVz
cG9uc2UgZnJvbSB0aGUgc2VydmljZSB3b3JrZXIgc2hvdWxkICcgKworICAgICAgICAgICdiZSB0
cmVhdGVkIGFzIGFuIGVycm9yIHdoZW4gdGhlIHJlZGlyZWN0IGZsYWcgb2YgcmVxdWVzdCB3YXMn
ICsKKyAgICAgICAgICAnIFwnZXJyb3JcJy4nKQorICAgICAgICAudGhlbigoKSA9PiBjaGVja19p
bnRlcmNlcHRlZF91cmxzKFt1cmxdKSk7CisgICAgfSksCisgICdtb2RlOiAiZXJyb3IiLCBnZW5l
cmF0ZWQgcmVsYXRpdmUgcmVkaXJlY3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90ZXN0KHQgPT4g
c2V0dXBfYW5kX2NsZWFuKCkKKyAgICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBo
b3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAg
ICAgJ3NhbXBsZT91cmw9YmxhbmsuaHRtbCcgKworICAgICAgICAgICAgICAgICAgJyZvcmlnaW5h
bC1yZWRpcmVjdC1tb2RlPW1hbnVhbCZzdz1nZW4tbWFudWFsJzsKKyAgICAgIHJldHVybiByZWRp
cmVjdGVkX3Rlc3Qoe3VybDogdXJsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0
Y2hfb3B0aW9uOiB7cmVkaXJlY3Q6ICdtYW51YWwnfSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZldGNoX21ldGhvZDogZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkX3R5cGU6ICdvcGFxdWVyZWRpcmVjdCcsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9yZWRpcmVjdGVkOiBmYWxzZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkX2ludGVyY2VwdGVkX3VybHM6
IFt1cmxdfSkKKyAgICB9KSwKKyAgJ21vZGU6ICJtYW51YWwiLCBnZW5lcmF0ZWQgcmVsYXRpdmUg
cmVkaXJlY3QgcmVzcG9uc2UnKTsKKwogLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQogLy8gVGVzdHMgZm9yIHJlcXVlc3RzIHRoYXQgYXJl
IGluLXNjb3BlIG9mIHRoZSBzZXJ2aWNlIHdvcmtlci4gVGhlIHNlcnZpY2UKIC8vIHdvcmtlciBy
ZXR1cm5zIGEgZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlLiBBbmQgdGhlIGZldGNoIGZvbGxv
d3MgdGhlCkBAIC0zMTksNyArNDE1LDcgQEAgcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2Ns
ZWFuKCkKICAgICAgIC8vIFNvIGZldGNoIGNhbiBmb2xsb3cgdGhlIHJlZGlyZWN0IHJlc3BvbnNl
IDIwIHRpbWVzLgogICAgICAgbGV0IHVybHMgPSBbVEFSR0VUX1VSTF07CiAgICAgICBmb3IgKGxl
dCBpID0gMDsgaSA8IDIwOyArK2kpIHsKLSAgICAgICAgdXJscy51bnNoaWZ0KGhvc3RfaW5mb1sn
SFRUUFNfT1JJR0lOJ10gKyAnL2R1bW15P3N3PWdlbiZ1cmw9JyArCisgICAgICAgIHVybHMudW5z
aGlmdChob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgJy9zYW1wbGU/c3c9Z2VuJnVybD0nICsK
ICAgICAgICAgICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KHVybHNbMF0pKTsKIAogICAg
ICAgfQpAQCAtMzM5LDcgKzQzNSw3IEBAIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVh
bigpCiAgICAgICAvLyBuZXR3b3JrIGVycm9yLiIgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5v
cmcvI2h0dHAtcmVkaXJlY3QtZmV0Y2gKICAgICAgIC8vIFNvIGZldGNoIGNhbid0IGZvbGxvdyB0
aGUgcmVkaXJlY3QgcmVzcG9uc2UgMjEgdGltZXMuCiAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8
IDIxOyArK2kpIHsKLSAgICAgICAgdXJscy51bnNoaWZ0KGhvc3RfaW5mb1snSFRUUFNfT1JJR0lO
J10gKyAnL2R1bW15P3N3PWdlbiZ1cmw9JyArCisgICAgICAgIHVybHMudW5zaGlmdChob3N0X2lu
Zm9bJ0hUVFBTX09SSUdJTiddICsgJy9zYW1wbGU/c3c9Z2VuJnVybD0nICsKICAgICAgICAgICAg
ICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KHVybHNbMF0pKTsKIAogICAgICAgfQpAQCAtMzYw
LDcgKzQ1Niw3IEBAIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAvLyA9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBwcm9t
aXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQogICAgIC50aGVuKCgpID0+IHsKLSAgICAg
IGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArICdk
dW1teT91cmw9JyArCisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTidd
ICsgYmFzZV9wYXRoKCkgKyAnc2FtcGxlP3VybD0nICsKICAgICAgICAgICAgICAgICAgIGVuY29k
ZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArJyZzdz1mZXRjaC11cmwnOwogICAgICAgcmV0dXJu
IHJlZGlyZWN0ZWRfdGVzdCh7dXJsOiB1cmwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmZXRjaF9vcHRpb246IHt9LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJy
ZXItcG9saWN5LWhlYWRlci5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBlYjYzNmYwZDA0
OWFmZTllZDQ1MDMyMTYwNzJjOWViN2IxM2Q0NWRhLi5hMmQ0NzM2N2QzMTVhZjczOTI0NGUxMDJl
MjliYWJjNzk3MzIxZWMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1w
b2xpY3ktaGVhZGVyLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDUgQEAK
IAotUEFTUyBJbml0aWFsaXplIGdsb2JhbCBzdGF0ZSAoc2VydmljZSB3b3JrZXIgcmVnaXN0cmF0
aW9uKQogUEFTUyBSZWZlcnJlciBmb3IgYSBtYWluIHJlc291cmNlIHJlZGlyZWN0ZWQgd2l0aCBy
ZWZlcnJlci1wb2xpY3kgKG9yaWdpbikgc2hvdWxkIG9ubHkgaGF2ZSBvcmlnaW4uCitQQVNTIFJl
ZmVycmVyIGZvciBhIG1haW4gcmVzb3VyY2UgcmVkaXJlY3RlZCB3aXRoIGEgbW9kdWxlIHNjcmlw
dCB3aXRoIHJlZmVycmVyLXBvbGljeSAob3JpZ2luKSBzaG91bGQgb25seSBoYXZlIG9yaWdpbi4K
IFBBU1MgUmVmZXJyZXIgZm9yIGZldGNoIHJlcXVlc3RzIGluaXRpYXRlZCBmcm9tIGEgc2Vydmlj
ZSB3b3JrZXIgd2l0aCByZWZlcnJlci1wb2xpY3kgKG9yaWdpbikgc2hvdWxkIG9ubHkgaGF2ZSBv
cmlnaW4uCi1QQVNTIFJlbW92ZSByZWdpc3RyYXRpb24gYXMgYSBjbGVhbnVwCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBvbGljeS1oZWFkZXIuaHR0cHMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBvbGljeS1oZWFkZXIuaHR0cHMuaHRtbAppbmRl
eCAwNWQ3NzNlMzE0NGRjYTJjNzYzOWU0ZWY1MjBhNTVkMGVhY2Y2NzVkLi43ODQzNDNlNmQ4ZjFm
Yzg2NGFmOTE0NTUzOWQzZjNmMmYwZDNiMjYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWZlcnJlci1wb2xpY3ktaGVhZGVyLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVmZXJyZXItcG9saWN5LWhlYWRlci5odHRwcy5odG1sCkBAIC0xMywxMSArMTMsOSBAQCBw
cm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgICAgY29uc3QgcmVnaXN0cmF0aW9uID0KICAgICAg
ICAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgU0NSSVBU
LCBTQ09QRSk7CiAgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3Rh
bGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICBwcm9taXNlX3Rlc3QoKCkgPT4gcmVnaXN0cmF0aW9u
LnVucmVnaXN0ZXIoKSwKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJl
Z2lzdGVyKCksCiAgICAgICAgICAgICAgICAgICdSZW1vdmUgcmVnaXN0cmF0aW9uIGFzIGEgY2xl
YW51cCcpOwotfSwgJ0luaXRpYWxpemUgZ2xvYmFsIHN0YXRlIChzZXJ2aWNlIHdvcmtlciByZWdp
c3RyYXRpb24pJyk7CiAKLXByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgICBjb25zdCBmdWxs
X3Njb3BlX3VybCA9IG5ldyBVUkwoU0NPUEUsIGxvY2F0aW9uLmhyZWYpOwogICAgIGNvbnN0IHJl
ZGlyZWN0X3RvID0gYCR7ZnVsbF9zY29wZV91cmwuaHJlZn0/aWdub3JlPXRydWVgOwogICAgIGNv
bnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoCkBAIC0zMCw2ICsyOCwzMCBAQCBwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CiAgICAnc2hvdWxkIG9ubHkgaGF2ZSBvcmlnaW4uJyk7CiAKIHBy
b21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCByZWdpc3RyYXRpb24gPQorICAgICAg
ICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQs
IFNDT1BFLCBge3R5cGU6ICdtb2R1bGUnfWApOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQs
IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisgICAgdC5hZGRfY2xlYW51
cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpLAorICAgICAgICAgICAgICAgICAnUmVt
b3ZlIHJlZ2lzdHJhdGlvbiBhcyBhIGNsZWFudXAnKTsKKworICAgIGNvbnN0IGZ1bGxfc2NvcGVf
dXJsID0gbmV3IFVSTChTQ09QRSwgbG9jYXRpb24uaHJlZik7CisgICAgY29uc3QgcmVkaXJlY3Rf
dG8gPSBgJHtmdWxsX3Njb3BlX3VybC5ocmVmfT9pZ25vcmU9dHJ1ZWA7CisgICAgY29uc3QgZnJh
bWUgPSBhd2FpdCB3aXRoX2lmcmFtZSgKKyAgICAgICAgYCR7U0NPUEV9P3BpcGU9c3RhdHVzKDMw
Mil8aGVhZGVyKExvY2F0aW9uLCR7cmVkaXJlY3RfdG99KXxgICsKKyAgICAgICAgJ2hlYWRlcihS
ZWZlcnJlci1Qb2xpY3ksb3JpZ2luKScpOworICAgIGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVu
dERvY3VtZW50LnJlZmVycmVyLAorICAgICAgICAgICAgICAgICAgZnVsbF9zY29wZV91cmwub3Jp
Z2luICsgJy8nKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKK30s
ICdSZWZlcnJlciBmb3IgYSBtYWluIHJlc291cmNlIHJlZGlyZWN0ZWQgd2l0aCBhIG1vZHVsZSBz
Y3JpcHQgd2l0aCByZWZlcnJlci1wb2xpY3kgKG9yaWdpbikgJyArCisgICAnc2hvdWxkIG9ubHkg
aGF2ZSBvcmlnaW4uJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCBy
ZWdpc3RyYXRpb24gPQorICAgICAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2Fu
ZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BFKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0
LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworICAgIHQuYWRkX2NsZWFu
dXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSwKKyAgICAgICAgICAgICAgICAgJ1Jl
bW92ZSByZWdpc3RyYXRpb24gYXMgYSBjbGVhbnVwJyk7CisKICAgICBjb25zdCBob3N0X2luZm8g
PSBnZXRfaG9zdF9pbmZvKCk7CiAgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShT
Q09QRSk7CiAgICAgY29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0
dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXRvcGxldmVsLXNj
cmlwdC1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNGYyNzFjZjdmODllOTNiNmQ5MDAy
N2IwOGExYjdlMzZjMzVmZTM2NC4uOTZhNzZkOTZiMmY4NTJiZDBjM2Y3YzE5NzY5OTk4Zjc4OWI4
ZGM4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2Ny
aXB0LWZldGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZl
cnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
NCBAQAogCiBQQVNTIFJlZmVycmVyIG9mIHRoZSB0b3AtbGV2ZWwgc2NyaXB0IGZldGNoIHNob3Vs
ZCBiZSB0aGUgZG9jdW1lbnQgVVJMCitQQVNTIFJlZmVycmVyIG9mIHRoZSBtb2R1bGUgc2NyaXB0
IGZldGNoIHNob3VsZCBiZSB0aGUgZG9jdW1lbnQgVVJMCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZmVycmVyLXRvcGxldmVsLXNjcmlwdC1mZXRjaC5odHRwcy5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwK
aW5kZXggMWE5YmNmMzIzZDBiOWI5OTMwYzcwZmQ4Y2FiZTBjYTU2NTNhMjJlYy4uNjVjNjBhMTFk
YjIwYWFiY2U3NjZiNGI0MTRhMzVjYjNkZGZmZDQ2NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwK
QEAgLTM5LDQgKzM5LDI2IEBAIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICBhc3NlcnRf
ZXF1YWxzKHVwZGF0ZV9oZWFkZXJzWyJyZWZlcmVyIl0sIGV4cGVjdGVkX3JlZmVycmVyLCAicmVm
ZXJyZXIgb2YgdXBkYXRlKCkiKTsKIH0sICJSZWZlcnJlciBvZiB0aGUgdG9wLWxldmVsIHNjcmlw
dCBmZXRjaCBzaG91bGQgYmUgdGhlIGRvY3VtZW50IFVSTCIpOwogCitwcm9taXNlX3Rlc3QoYXN5
bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NyaXB0ID0gInJlc291cmNlcy90ZXN0LXJlcXVlc3QtaGVh
ZGVycy13b3JrZXIucHkiOworICBjb25zdCBzY29wZSA9ICJyZXNvdXJjZXMvYmxhbmsuaHRtbCI7
CisgIGNvbnN0IGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKKworICBjb25zdCByZWdpc3Ry
YXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAg
ICB0LCBzY3JpcHQsIHNjb3BlLCB7dHlwZTogJ21vZHVsZSd9KTsKKyAgdC5hZGRfY2xlYW51cCgo
KSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7CisgIGF3YWl0IHdhaXRf
Zm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7CisKKyAg
Y29uc3QgZXhwZWN0ZWRfcmVmZXJyZXIgPSBob3N0X2luZm9bIkhUVFBTX09SSUdJTiJdICsgbG9j
YXRpb24ucGF0aG5hbWU7CisKKyAgLy8gQ2hlY2sgcmVmZXJyZXIgZm9yIHJlZ2lzdGVyKCkuCisg
IGNvbnN0IHJlZ2lzdGVyX2hlYWRlcnMgPSBhd2FpdCBnZXRfdG9wbGV2ZWxfc2NyaXB0X2hlYWRl
cnMocmVnaXN0cmF0aW9uLmFjdGl2ZSk7CisgIGFzc2VydF9lcXVhbHMocmVnaXN0ZXJfaGVhZGVy
c1sicmVmZXJlciJdLCBleHBlY3RlZF9yZWZlcnJlciwgInJlZmVycmVyIG9mIHJlZ2lzdGVyKCki
KTsKKworICAvLyBDaGVjayByZWZlcnJlciBmb3IgdXBkYXRlKCkuCisgIGF3YWl0IHJlZ2lzdHJh
dGlvbi51cGRhdGUoKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmlu
c3RhbGxpbmcsICJpbnN0YWxsZWQiKTsKKyAgY29uc3QgdXBkYXRlX2hlYWRlcnMgPSBhd2FpdCBn
ZXRfdG9wbGV2ZWxfc2NyaXB0X2hlYWRlcnMocmVnaXN0cmF0aW9uLndhaXRpbmcpOworICBhc3Nl
cnRfZXF1YWxzKHVwZGF0ZV9oZWFkZXJzWyJyZWZlcmVyIl0sIGV4cGVjdGVkX3JlZmVycmVyLCAi
cmVmZXJyZXIgb2YgdXBkYXRlKCkiKTsKK30sICJSZWZlcnJlciBvZiB0aGUgbW9kdWxlIHNjcmlw
dCBmZXRjaCBzaG91bGQgYmUgdGhlIGRvY3VtZW50IFVSTCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tYmFzaWMuaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1iYXNpYy5odHRwcy5odG1sCmluZGV4IDE0MTFh
NWQ0OGNkNjliMDVkMjc3ZjVjZjAwYTFjM2MyZmZmODgzODUuLjc1OWI0MjQ0YTI2OWI4YzM2NGU2
ZDBkN2ViNDljNDJmMGJhOWExODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lz
dHJhdGlvbi1iYXNpYy5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJh
dGlvbi1iYXNpYy5odHRwcy5odG1sCkBAIC0zLDcgKzMsMzcgQEAKIDxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
dGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Jl
Z2lzdHJhdGlvbi10ZXN0cy1iYXNpYy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgotcmVnaXN0cmF0
aW9uX3Rlc3RzX2Jhc2ljKChzY3JpcHQsIG9wdGlvbnMpID0+IG5hdmlnYXRvci5zZXJ2aWNlV29y
a2VyLnJlZ2lzdGVyKHNjcmlwdCwgb3B0aW9ucyksIHRydWUpOworY29uc3Qgc2NyaXB0ID0gJ3Jl
c291cmNlcy9yZWdpc3RyYXRpb24td29ya2VyLmpzJzsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0
KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24vbm9ybWFsJzsK
KyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVn
aXN0ZXIoc2NyaXB0LCB7c2NvcGV9KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRp
b24udW5yZWdpc3RlcigpKTsKKyAgYXNzZXJ0X3RydWUoCisgICAgcmVnaXN0cmF0aW9uIGluc3Rh
bmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwKKyAgICAnU3VjY2Vzc2Z1bGx5IHJlZ2lz
dGVyZWQuJyk7Cit9LCAnUmVnaXN0ZXJpbmcgbm9ybWFsIHNjb3BlJyk7CisKK3Byb21pc2VfdGVz
dChhc3luYyAodCkgPT4geworICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvcmVnaXN0cmF0aW9u
L3Njb3BlLXdpdGgtZnJhZ21lbnQjcmVmJzsKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQg
bmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7c2NvcGV9KTsKKyAgdC5h
ZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgYXNzZXJ0X3Ry
dWUoCisgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
biwKKyAgICAnU3VjY2Vzc2Z1bGx5IHJlZ2lzdGVyZWQuJyk7CisgIGFzc2VydF9lcXVhbHMoCisg
ICAgcmVnaXN0cmF0aW9uLnNjb3BlLAorICAgIG5vcm1hbGl6ZVVSTCgncmVzb3VyY2VzL3JlZ2lz
dHJhdGlvbi9zY29wZS13aXRoLWZyYWdtZW50JyksCisgICAgJ0EgZnJhZ21lbnQgc2hvdWxkIGJl
IHJlbW92ZWQgZnJvbSBzY29wZScpOworfSwgJ1JlZ2lzdGVyaW5nIHNjb3BlIHdpdGggZnJhZ21l
bnQnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jl
c291cmNlcy8nOworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBuYXZpZ2F0b3Iuc2Vydmlj
ZVdvcmtlci5yZWdpc3RlcihzY3JpcHQsIHtzY29wZX0pCisgIHQuYWRkX2NsZWFudXAoKCkgPT4g
cmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisgIGFzc2VydF90cnVlKAorICAgIHJlZ2lzdHJh
dGlvbiBpbnN0YW5jZW9mIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24sCisgICAgJ1N1Y2Nlc3Nm
dWxseSByZWdpc3RlcmVkLicpOworfSwgJ1JlZ2lzdGVyaW5nIHNhbWUgc2NvcGUgYXMgdGhlIHNj
cmlwdCBkaXJlY3RvcnknKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVnaXN0cmF0aW9uLXNjaGVkdWxlLWpvYi5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVkLnR4dApp
bmRleCBiMTY5YmNmMWRjODYwNDg1NTExY2Q3ZTRmYWUzMDYzYWJkMmQyOWQzLi45MjUxYjQ3M2Ux
NTEyMGYyYjZlOTFiOTZhNzYyNWIwNDg2MDcyMWVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVk
LnR4dApAQCAtMSw0ICsxLDUgQEAKIAotRkFJTCBkaWZmZXJlbnQgc2NyaXB0VVJMIGFuZCB1cGRh
dGVWaWFDYWNoZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IG51bGwgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAncmVn
aXN0cmF0aW9uLmluc3RhbGxpbmcuc2NyaXB0VVJMJykiCi1GQUlMIGRpZmZlcmVudCB0eXBlIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJjbGFzc2ljIiBidXQgZ290ICh1bmRlZmlu
ZWQpIHVuZGVmaW5lZAorUEFTUyBkaWZmZXJlbnQgc2NyaXB0VVJMCitQQVNTIGRpZmZlcmVudCB1
cGRhdGVWaWFDYWNoZQorUEFTUyBkaWZmZXJlbnQgdHlwZQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLmh0bWwKaW5kZXggMTg1
ODllMGFhMGIzMmUxMzA5MzRhNjViMWIwNjVkNWM3Zjc5ZTM2ZS4uMjVkNzU4ZWU4ZjBlMjY0NTky
MThjNzM1OWZhZjdkMzg2NmIzMTNjZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVn
aXN0cmF0aW9uLXNjaGVkdWxlLWpvYi5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMuaHRtbApAQCAtMSw5ICsxLDExIEBACiA8
IURPQ1RZUEUgaHRtbD4KIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxtZXRhIG5hbWU9dGltZW91
dCBjb250ZW50PWxvbmc+CiA8dGl0bGU+U2VydmljZSBXb3JrZXI6IFNjaGVkdWxlIEpvYiBhbGdv
cml0aG08L3RpdGxlPgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgogLy8gVGVzdHMgZm9yIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2
aWNlV29ya2VyLyNzY2hlZHVsZS1qb2ItYWxnb3JpdGhtCiAvLyBOb24tZXF1aXZhbGVudCByZWdp
c3RlciBqb2JzIHNob3VsZCBub3QgYmUgY29hbGVzY2VkLgpAQCAtMjEsNyArMjMsMjUgQEAgZnVu
Y3Rpb24gYWJzb2x1dGVfdXJsKHVybCkgewogICByZXR1cm4gbmV3IFVSTCh1cmwsIHNlbGYubG9j
YXRpb24pLnRvU3RyaW5nKCk7CiB9CiAKLS8vIFRlc3Qgc2NyaXB0VVJMIGFuZCB1cGRhdGVWaWFD
YWNoZS4KKy8vIFRlc3QgdGhhdCBhIGNoYW5nZSB0byBgc2NyaXB0YCBzdGFydHMgYSBuZXcgcmVn
aXN0ZXIgam9iLgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBhd2FpdCBjbGVhbnVwKCk7
CisgIHQuYWRkX2NsZWFudXAoY2xlYW51cCk7CisKKyAgLy8gTWFrZSBhIHJlZ2lzdHJhdGlvbi4K
KyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQKKyAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29y
a2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtzY29wZX0pOworCisgIC8vIFNjaGVkdWxlIHR3byBtb3Jl
IHJlZ2lzdGVyIGpvYnMuCisgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlw
dDEsIHtzY29wZX0pOworICBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3Rlcihz
Y3JpcHQyLCB7c2NvcGV9KTsKKworICAvLyBUaGUgam9icyBzaG91bGQgbm90IGhhdmUgYmVlbiBj
b2FsZXNjZWQuCisgIGNvbnN0IHdvcmtlciA9IGdldF9uZXdlc3Rfd29ya2VyKHJlZ2lzdHJhdGlv
bik7CisgIGFzc2VydF9lcXVhbHMod29ya2VyLnNjcmlwdFVSTCwgYWJzb2x1dGVfdXJsKHNjcmlw
dDIpKTsKK30sICdkaWZmZXJlbnQgc2NyaXB0VVJMJyk7CisKKy8vIFRlc3QgdGhhdCBhIGNoYW5n
ZSB0byBgdXBkYXRlVmlhQ2FjaGVgIHN0YXJ0cyBhIG5ldyByZWdpc3RlciBqb2IuCiBwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CiAgIGF3YWl0IGNsZWFudXAoKTsKICAgdC5hZGRfY2xlYW51cChj
bGVhbnVwKTsKQEAgLTMxLDM3ICs1MSw1NyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAg
ICAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9KTsK
ICAgYXNzZXJ0X2VxdWFscyhyZWdpc3RyYXRpb24udXBkYXRlVmlhQ2FjaGUsICdpbXBvcnRzJyk7
CiAKLSAgLy8gU2NoZWR1bGUgc2V2ZXJhbCByZWdpc3RlciBqb2JzLgorICAvLyBTY2hlZHVsZSB0
d28gbW9yZSByZWdpc3RlciBqb2JzLgogICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3Rl
cihzY3JpcHQxLCB7c2NvcGV9KTsKLSAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIo
c2NyaXB0Miwge3Njb3BlfSk7Ci0gIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lz
dGVyKHNjcmlwdDIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtz
Y29wZSwgdXBkYXRlVmlhQ2FjaGU6ICdub25lJ30pOworICBhd2FpdCBuYXZpZ2F0b3Iuc2Vydmlj
ZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGUsCisgICAgICB1cGRhdGVWaWFDYWNoZTog
J25vbmUnfSk7CiAKLSAgLy8gTm9uZSBvZiB0aGUgY2hhbmdlcyBzaG91bGQgaGF2ZSBiZWVuIGNv
YWxlc2NlZC4KLSAgYXNzZXJ0X2VxdWFscyhyZWdpc3RyYXRpb24uaW5zdGFsbGluZy5zY3JpcHRV
UkwsIGFic29sdXRlX3VybChzY3JpcHQyKSk7CisgIC8vIFRoZSBqb2JzIHNob3VsZCBub3QgaGF2
ZSBiZWVuIGNvYWxlc2NlZC4KICAgYXNzZXJ0X2VxdWFscyhyZWdpc3RyYXRpb24udXBkYXRlVmlh
Q2FjaGUsICdub25lJyk7Ci19LCAnZGlmZmVyZW50IHNjcmlwdFVSTCBhbmQgdXBkYXRlVmlhQ2Fj
aGUnKTsKK30sICdkaWZmZXJlbnQgdXBkYXRlVmlhQ2FjaGUnKTsKIAotLy8gVGVzdCB8dHlwZXwg
aW4gYW5vdGhlciB0ZXN0IGNhc2UgYmVjYXVzZSBtb3N0IGJyb3dzZXJzIGRvbid0IHN1cHBvcnQg
aXQuCisvLyBUZXN0IHRoYXQgYSBjaGFuZ2UgdG8gYHR5cGVgIHN0YXJ0cyBhIG5ldyByZWdpc3Rl
ciBqb2IuCiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gIGNvbnN0IHNjcmlwdDEgPSAncmVz
b3VyY2VzL2VtcHR5LmpzJzsKLSAgY29uc3Qgc2NyaXB0MiA9ICdyZXNvdXJjZXMvZW1wdHkuanM/
Y2hhbmdlJzsKLQogICBhd2FpdCBjbGVhbnVwKCk7CiAgIHQuYWRkX2NsZWFudXAoY2xlYW51cCk7
CiAKKyAgY29uc3Qgc2NyaXB0Rm9yVHlwZUNoZWNrID0gJ3Jlc291cmNlcy90eXBlLWNoZWNrLXdv
cmtlci5qcyc7CiAgIC8vIENoZWNrIGRlZmF1bHRzLgogICBjb25zdCByZWdpc3RyYXRpb24gPSBh
d2FpdAotICAgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0MSwge3Nj
b3BlfSk7Ci0gIGFzc2VydF9lcXVhbHMocmVnaXN0cmF0aW9uLmluc3RhbGxpbmcudHlwZSwgJ2Ns
YXNzaWMnKTsKKyAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdEZv
clR5cGVDaGVjaywge3Njb3BlfSk7CiAKLSAgLy8gU2NoZWR1bGUgc2V2ZXJhbCByZWdpc3RlciBq
b2JzLgotICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9
KTsKLSAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0Miwge3Njb3BlfSk7
Ci0gIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDIsIHtzY29w
ZSwgdHlwZTogJ21vZHVsZSd9KTsKKyAgbGV0IHdvcmtlcl90eXBlID0gYXdhaXQgbmV3IFByb21p
c2UoKHJlc29sdmUpID0+IHsKKyAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5vbm1lc3NhZ2Ug
PSAoZXZlbnQpID0+IHsKKyAgICAgIHJlc29sdmUoZXZlbnQuZGF0YSk7CisgICAgfTsKKyAgICAv
LyBUaGUgam9icyBzaG91bGQgbm90IGhhdmUgYmVlbiBjb2FsZXNjZWQuIGdldF9uZXdlc3Rfd29y
a2VyKCkgaGVscHMgdGhlCisgICAgLy8gdGVzdCBmYWlsIHdpdGggc3RhYmxlIG91dHB1dCBvbiBi
cm93ZXJzIHRoYXQgaW5jb3JyZWN0bHkgY29hbGVzY2UKKyAgICAvLyByZWdpc3RlciBqb2JzLCBz
aW5jZSB0aGVuIHNvbWV0aW1lcyByZWdpc3RyYXRpb24gaXMgbm90IGEgbmV3IHdvcmtlciBhcwor
ICAgIC8vIGV4cGVjdGVkLgorICAgIGNvbnN0IHdvcmtlciA9IGdldF9uZXdlc3Rfd29ya2VyKHJl
Z2lzdHJhdGlvbik7CisgICAgLy8gVGhlIGFyZ3VtZW50IG9mIHBvc3RNZXNzYWdlIGRvZXNuJ3Qg
bWF0dGVyIGZvciB0aGlzIGNhc2UuCisgICAgd29ya2VyLnBvc3RNZXNzYWdlKCcnKTsKKyAgfSk7
CisKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJfdHlwZSwgJ2NsYXNzaWMnKTsKKworICAvLyBTY2hl
ZHVsZSB0d28gbW9yZSByZWdpc3RlciBqb2JzLgorICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5y
ZWdpc3RlcihzY3JpcHRGb3JUeXBlQ2hlY2ssIHtzY29wZX0pOworICBhd2FpdCBuYXZpZ2F0b3Iu
c2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHRGb3JUeXBlQ2hlY2ssIHtzY29wZSwgdHlwZTog
J21vZHVsZSd9KTsKKworICB3b3JrZXJfdHlwZSA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZl
KSA9PiB7CisgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIub25tZXNzYWdlID0gKGV2ZW50KSA9
PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOworICAgIH07CisgICAgLy8gVGhlIGpvYnMg
c2hvdWxkIG5vdCBoYXZlIGJlZW4gY29hbGVzY2VkLiBnZXRfbmV3ZXN0X3dvcmtlcigpIGhlbHBz
IHRoZQorICAgIC8vIHRlc3QgZmFpbCB3aXRoIHN0YWJsZSBvdXRwdXQgb24gYnJvd2VycyB0aGF0
IGluY29ycmVjdGx5IGNvYWxlc2NlCisgICAgLy8gcmVnaXN0ZXIgam9icywgc2luY2UgdGhlbiBz
b21ldGltZXMgcmVnaXN0cmF0aW9uIGlzIG5vdCBhIG5ldyB3b3JrZXIgYXMKKyAgICAvLyBleHBl
Y3RlZC4KKyAgICBjb25zdCB3b3JrZXIgPSBnZXRfbmV3ZXN0X3dvcmtlcihyZWdpc3RyYXRpb24p
OworICAgIC8vIFRoZSBhcmd1bWVudCBvZiBwb3N0TWVzc2FnZSBkb2Vzbid0IG1hdHRlciBmb3Ig
dGhpcyBjYXNlLgorICAgIHdvcmtlci5wb3N0TWVzc2FnZSgnJyk7CisgIH0pOwogCi0gIC8vIE5v
bmUgb2YgdGhlIGNoYW5nZXMgc2hvdWxkIGhhdmUgYmVlbiBjb2FsZXNjZWQuCi0gIGFzc2VydF9l
cXVhbHMocmVnaXN0cmF0aW9uLmluc3RhbGxpbmcuc2NyaXB0VVJMLCBhYnNvbHV0ZV91cmwoc2Ny
aXB0MikpOwotICBhc3NlcnRfZXF1YWxzKHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLnR5cGUsICdt
b2R1bGUnKTsKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJfdHlwZSwgJ21vZHVsZScpOwogfSwgJ2Rp
ZmZlcmVudCB0eXBlJyk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NvcGUtbW9kdWxlLXN0YXRpYy1p
bXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlYjU5MzI5YzA4NTg0MGI5NTUx
OGM2ZGUxYjgwZGM2NTFiZmM5MTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWdpc3RyYXRpb24tc2NvcGUtbW9kdWxlLXN0YXRpYy1pbXBvcnQuaHR0cHMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNSBAQAorCitQQVNTIGltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMgd29y
a3Mgd2hlbiB1c2VkIGFzIHRvcC1sZXZlbAorUEFTUyBzdGF0aWMgaW1wb3J0cyB0byBvdXRzaWRl
IHBhdGggcmVzdHJpY3Rpb24gc2hvdWxkIGJlIGFsbG93ZWQKK1BBU1Mgc3RhdGljIGltcG9ydHMg
cmVkaXJlY3RpbmcgdG8gb3V0c2lkZSBwYXRoIHJlc3RyaWN0aW9uIHNob3VsZCBiZSBhbGxvd2Vk
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1
bGUtc3RhdGljLWltcG9ydC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0
aW9uLXNjb3BlLW1vZHVsZS1zdGF0aWMtaW1wb3J0Lmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWM3
NTI5NWFlZDFjZDk0YzEzNDlkYzI1MDEwODAxNTM0YmQ5ODY0NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9y
dC5odHRwcy5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPlNl
cnZpY2UgV29ya2VyOiBTdGF0aWMgaW1wb3J0cyBmcm9tIG1vZHVsZSB0b3AtbGV2ZWwgc2NyaXB0
cyBzaG91bGRuJ3QgYmUgYWZmZWN0ZWQgYnkgdGhlIHNlcnZpY2Ugd29ya2VyIHNjcmlwdCBwYXRo
IHJlc3RyaWN0aW9uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VX
b3JrZXIvI3BhdGgtcmVzdHJpY3Rpb24KKy8vIGlzIGFwcGxpZWQgdG8gdG9wLWxldmVsIHNjcmlw
dHMgaW4KKy8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyN1cGRhdGUtYWxn
b3JpdGhtCisvLyBidXQgbm90IHRvIHN1Ym1vZHVsZXMgaW1wb3J0ZWQgZnJvbSB0b3AtbGV2ZWwg
c2NyaXB0cy4KK2FzeW5jIGZ1bmN0aW9uIHJ1blRlc3QodCwgc2NyaXB0LCBzY29wZSkgeworICBj
b25zdCBzY3JpcHRfdXJsID0gbmV3IFVSTChzY3JpcHQsIGxvY2F0aW9uLmhyZWYpOworICBhd2Fp
dCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKTsKKyAgY29uc3QgcmVnaXN0cmF0
aW9uID0gYXdhaXQKKyAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlw
dCwge3R5cGU6ICdtb2R1bGUnfSk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiByZWdpc3RyYXRpb24u
dW5yZWdpc3RlcigpKTsKKyAgY29uc3QgbXNnID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9
PiB7CisgICAgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcucG9zdE1lc3NhZ2UoJ3BpbmcnKTsKKyAg
ICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5vbm1lc3NhZ2UgPSByZXNvbHZlOworICB9KTsKKyAg
YXNzZXJ0X2VxdWFscyhtc2cuZGF0YSwgJ3BvbmcnKTsKK30KKworcHJvbWlzZV90ZXN0KGFzeW5j
IHQgPT4geworICAgIGF3YWl0IHJ1blRlc3QodCwKKyAgICAgICAgJ3Jlc291cmNlcy9zY29wZTIv
aW1wb3J0ZWQtbW9kdWxlLXNjcmlwdC5qcycsCisgICAgICAgICdyZXNvdXJjZXMvc2NvcGUyLycp
OworICB9LCAnaW1wb3J0ZWQtbW9kdWxlLXNjcmlwdC5qcyB3b3JrcyB3aGVuIHVzZWQgYXMgdG9w
LWxldmVsJyk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBhd2FpdCBydW5UZXN0
KHQsCisgICAgICAgICdyZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXNj
b3BlMi5qcycsCisgICAgICAgICdyZXNvdXJjZXMvc2NvcGUxLycpOworICB9LCAnc3RhdGljIGlt
cG9ydHMgdG8gb3V0c2lkZSBwYXRoIHJlc3RyaWN0aW9uIHNob3VsZCBiZSBhbGxvd2VkJyk7CisK
K3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBhd2FpdCBydW5UZXN0KHQsCisgICAgICAg
J3Jlc291cmNlcy9zY29wZTEvbW9kdWxlLXdvcmtlci1pbXBvcnRpbmctcmVkaXJlY3QtdG8tc2Nv
cGUyLmpzJywKKyAgICAgICAncmVzb3VyY2VzL3Njb3BlMS8nKTsKKyAgfSwgJ3N0YXRpYyBpbXBv
cnRzIHJlZGlyZWN0aW5nIHRvIG91dHNpZGUgcGF0aCByZXN0cmljdGlvbiBzaG91bGQgYmUgYWxs
b3dlZCcpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Ry
YXRpb24tc2NyaXB0LW1vZHVsZS5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWdpc3RyYXRpb24tc2NyaXB0LW1vZHVsZS5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTk2NjU3Y2ViODdhNGM2NWZkZGE1MmMzMWVkYmZmYzI0ZjlhOGI1ZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQtbW9kdWxlLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK1BBU1MgUmVnaXN0ZXJpbmcgaW52YWxp
ZCBjaHVua2VkIGVuY29kaW5nIHNjcmlwdAorUEFTUyBSZWdpc3RlcmluZyBpbnZhbGlkIGNodW5r
ZWQgZW5jb2Rpbmcgc2NyaXB0IHdpdGggZmx1c2gKK1BBU1MgUmVnaXN0ZXJpbmcgc2NyaXB0IGlu
Y2x1ZGluZyBwYXJzZSBlcnJvcgorUEFTUyBSZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIHVu
ZGVmaW5lZCBlcnJvcgorUEFTUyBSZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIHVuY2F1Z2h0
IGV4Y2VwdGlvbgorRkFJTCBSZWdpc3RlcmluZyBzY3JpcHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQg
YXNzZXJ0X3VucmVhY2hlZDogU2hvdWxkIGhhdmUgcmVqZWN0ZWQ6IFJlZ2lzdHJhdGlvbiBvZiBz
Y3JpcHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQgc2hvdWxkIGZhaWwuIFJlYWNoZWQgdW5yZWFjaGFi
bGUgY29kZQorUEFTUyBSZWdpc3RlcmluZyBzY3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlhdGlv
biBlcnJvcgorUEFTUyBSZWdpc3RlcmluZyBzY3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlhdGlv
biBlcnJvciBhbmQgdG9wLWxldmVsIGF3YWl0CitQQVNTIFJlZ2lzdGVyaW5nIG5vbi1leGlzdGVu
dCBzY3JpcHQKK1BBU1MgUmVnaXN0ZXJpbmcgc2NyaXB0IGluY2x1ZGluZyBjYXVnaHQgZXhjZXB0
aW9uCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQt
bW9kdWxlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0
LW1vZHVsZS5odHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllMzlhMWY3NWIyN2RlNDkyZDVlYjM4NDJh
YWEyNTRkMmY2NjI2ODcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdp
c3RyYXRpb24tc2NyaXB0LW1vZHVsZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9D
VFlQRSBodG1sPgorPHRpdGxlPlNlcnZpY2UgV29ya2VyOiBSZWdpc3RyYXRpb24gKG1vZHVsZSBz
Y3JpcHQpPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQu
anMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK3JlZ2lzdHJhdGlvbl90ZXN0c19zY3JpcHQoCisgICAg
KHNjcmlwdCwgb3B0aW9ucykgPT4gbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoCisg
ICAgICAgIHNjcmlwdCwKKyAgICAgICAgT2JqZWN0LmFzc2lnbih7dHlwZTogJ21vZHVsZSd9LCBv
cHRpb25zKSksCisgICAgJ21vZHVsZScpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZWdpc3RyYXRpb24tc2NyaXB0Lmh0dHBzLmh0bWwKaW5kZXggZjcwYjllNjc2MjYwNjM3
YzVkMTBiYjhiMzZlNmJhY2I2ZjViM2I2Yi4uZjFlNTFmZDI2NWUyMTI3MTUzNzc2OTM0M2UwZTNl
MDUwMzJlNzZiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNj
cmlwdC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3Jp
cHQuaHR0cHMuaHRtbApAQCAtNSw1ICs1LDggQEAKIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVz
dC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3JlZ2lz
dHJhdGlvbi10ZXN0cy1zY3JpcHQuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KLXJlZ2lzdHJhdGlv
bl90ZXN0c19zY3JpcHQoKHNjcmlwdCwgb3B0aW9ucykgPT4gbmF2aWdhdG9yLnNlcnZpY2VXb3Jr
ZXIucmVnaXN0ZXIoc2NyaXB0LCBvcHRpb25zKSk7CityZWdpc3RyYXRpb25fdGVzdHNfc2NyaXB0
KAorICAgIChzY3JpcHQsIG9wdGlvbnMpID0+IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lz
dGVyKHNjcmlwdCwgb3B0aW9ucyksCisgICAgJ2NsYXNzaWMnCispOwogPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tdXBkYXRldmlhY2FjaGUuaHR0
cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5o
dHRwcy5odG1sCmluZGV4IGI3YjJiNDBkNzU2YTIxZGMxNzg3MzBkYmJkN2ZhNTYxYWM5ZjcyM2Eu
LmIyZjZiYmM2Zjg0OWM3ZTgwNTFmMWFlZGM5ZjQ3NmM0N2Q1YTM5YTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5o
dG1sCkBAIC0xNDUsNyArMTQ1LDcgQEAKICAgICAgICAgfQogCiAgICAgICAgIC8vIFdhaXQgZm9y
IGFsbCByZWdpc3RyYXRpb24gcmVsYXRlZCB0YXNrcyBvbiB8ZnJhbWV8IHRvIGNvbXBsZXRlLgot
ICAgICAgICBhd2FpdCB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15X3Njb3BlKHQsIGZyYW1l
LmNvbnRlbnRXaW5kb3cpOworICAgICAgICBhd2FpdCB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX3Nh
bXBsZV9zY29wZSh0LCBmcmFtZS5jb250ZW50V2luZG93KTsKICAgICAgICAgLy8gVGhlIHVwZGF0
ZVZpYUNhY2hlIGNoYW5nZSBzaG91bGQgaGF2ZSBiZWVuIHByb3BhZ2F0ZWQgdG8gYWxsCiAgICAg
ICAgIC8vIGNvcnJlc3BvbmRpbmcgSlMgcmVnaXN0cmF0aW9uIG9iamVjdHMuCiAgICAgICAgIGFz
c2VydF9lcXVhbHMocmVnX2luX2ZyYW1lLnVwZGF0ZVZpYUNhY2hlLCBleHBlY3RlZF91cGRhdGVW
aWFDYWNoZSwgInJlZ19pbl9mcmFtZS51cGRhdGVWaWFDYWNoZSB1cGRhdGVkIik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZS10aW1pbmcuc3ViLmh0dHBzLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZS10aW1pbmcuc3ViLmh0dHBzLmh0bWwKaW5kZXggMmEz
NjYwODdjZDM1ZTc5M2E5NTQ0ZTk3MzI3YmIzZjVlZDdiMzA5MS4uOTgwOGFlNWFlMWJlZDA2ZjUz
MDMyNDBiNzcyZTRlYWQwZDMxNzEzNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2UtdGltaW5nLnN1Yi5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlLXRpbWluZy5zdWIuaHR0cHMuaHRtbApAQCAtNCwxMzggKzQsMTQ3IEBACiA8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIGZ1
bmN0aW9uIHJlc291cmNlVXJsKHBhdGgpIHsKLSAgICByZXR1cm4gImh0dHBzOi8ve3tob3N0fX06
e3twb3J0c1todHRwc11bMF19fSIgKyBiYXNlX3BhdGgoKSArIHBhdGg7CisgIHJldHVybiAiaHR0
cHM6Ly97e2hvc3R9fTp7e3BvcnRzW2h0dHBzXVswXX19IiArIGJhc2VfcGF0aCgpICsgcGF0aDsK
IH0KIAogZnVuY3Rpb24gY3Jvc3NPcmlnaW5VcmwocGF0aCkgewotICAgIHJldHVybiAiaHR0cHM6
Ly97e2hvc3RzW2FsdF1bXX19Ont7cG9ydHNbaHR0cHNdWzBdfX0iICsgYmFzZV9wYXRoKCkgKyBw
YXRoOworICByZXR1cm4gImh0dHBzOi8ve3tob3N0c1thbHRdW119fTp7e3BvcnRzW2h0dHBzXVsw
XX19IiArIGJhc2VfcGF0aCgpICsgcGF0aDsKIH0KIAorLy8gVmVyaWZ5IGV4aXN0YW5jZSBvZiBh
IFBlcmZvcm1hbmNlRW50cnkgYW5kIHRoZSBvcmRlciBiZXR3ZWVuIHRoZSB0aW1pbmdzLgorLy8K
Ky8vIHxvcHRpb25zfCBoYXMgdGhlc2UgcHJvcGVydGllczoKKy8vIHBlcmZvcm1hbmNlOiBQZXJm
b3JtYW5jZSBpbnRlcmZhY2UgdG8gdmVyaWZ5IGV4aXN0YW5jZSBvZiB0aGUgZW50cnkuCisvLyBy
ZXNvdXJjZTogdGhlIHBhdGggdG8gdGhlIHJlc291cmNlLgorLy8gbW9kZTogJ2Nyb3NzLW9yaWdp
bicgdG8gbG9hZCB0aGUgcmVzb3VyY2UgZnJvbSB0aGlyZC1wYXJ0eSBvcmlnaW4uCisvLyBkZXNj
cmlwdGlvbjogdGhlIGRlc2NyaXB0aW9uIHBhc3NlZCB0byBlYWNoIGFzc2VydGlvbi4KKy8vIHNo
b3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeTogbm8gZW50cnkgaXMgZXhwZWN0ZWQgdG8gYmUgcmVj
b3JkZWQgd2hlbiBpdCdzCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUuCiBm
dW5jdGlvbiB2ZXJpZnkob3B0aW9ucykgewotICAgIGNvbnN0IHVybCA9IG9wdGlvbnMubW9kZSA9
PT0gJ2Nyb3NzLW9yaWdpbicgPyBjcm9zc09yaWdpblVybChvcHRpb25zLnJlc291cmNlKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHJlc291cmNlVXJsKG9wdGlvbnMu
cmVzb3VyY2UpOwotICAgIGNvbnN0IGVudHJ5TGlzdCA9IG9wdGlvbnMucGVyZm9ybWFuY2UuZ2V0
RW50cmllc0J5TmFtZSh1cmwsICdyZXNvdXJjZScpOwotICAgIGlmIChvcHRpb25zLnNob3VsZF9u
b19wZXJmb3JtYW5jZV9lbnRyeSkgewotICAgICAgICAvLyBUaGUgcGVyZm9ybWFuY2UgdGltZWxp
bmUgbWF5IG5vdCBoYXZlIGFuIGVudHJ5IGZvciBhIHJlc291cmNlCi0gICAgICAgIC8vIHdoaWNo
IGZhaWxlZCB0byBsb2FkLgotICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5sZW5ndGgs
IDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGFz
c2VydF9lcXVhbHMoZW50cnlMaXN0Lmxlbmd0aCwgMSwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0g
ICAgY29uc3QgZW50cnkgPSBlbnRyeUxpc3RbMF07Ci0gICAgYXNzZXJ0X2VxdWFscyhlbnRyeS5l
bnRyeVR5cGUsICdyZXNvdXJjZScsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIGFzc2VydF9n
cmVhdGVyX3RoYW4oZW50cnkud29ya2VyU3RhcnQsIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwot
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwoZW50cnkud29ya2VyU3RhcnQsIGVudHJ5LnN0
YXJ0VGltZSwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgYXNzZXJ0X2xlc3NfdGhhbl9lcXVh
bChlbnRyeS53b3JrZXJTdGFydCwgZW50cnkuZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlv
bik7Ci0gICAgaWYgKG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9yaWdpbicpIHsKLSAgICAgIGFz
c2VydF9lcXVhbHMoZW50cnkucmVzcG9uc2VTdGFydCwgMCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7
Ci0gICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKGVudHJ5LnJlc3BvbnNlRW5kLCBlbnRy
eS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICB9IGVsc2UgewotICAgICAg
YXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS5yZXNwb25zZVN0YXJ0LCBlbnRyeS5mZXRj
aFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5f
ZXF1YWwoZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LnJlc3BvbnNlU3RhcnQsIG9wdGlvbnMuZGVz
Y3JpcHRpb24pOwotICAgIH0KLSAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LnJlc3BvbnNl
RW5kLCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuKGVudHJ5LmR1cmF0aW9uLCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAg
ICBpZiAob3B0aW9ucy5yZXNvdXJjZS5pbmRleE9mKCdyZWRpcmVjdC5weScpICE9IC0xKSB7Ci0g
ICAgICAgIGFzc2VydF9sZXNzX3RoYW5fZXF1YWwoZW50cnkud29ya2VyU3RhcnQsIGVudHJ5LnJl
ZGlyZWN0U3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5kZXNj
cmlwdGlvbik7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS5yZWRp
cmVjdFN0YXJ0LCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICB9CisgIGNvbnN0IHVybCA9
IG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9yaWdpbicgPyBjcm9zc09yaWdpblVybChvcHRpb25z
LnJlc291cmNlKQorICAgIDogcmVzb3VyY2VVcmwob3B0aW9ucy5yZXNvdXJjZSk7CisgIGNvbnN0
IGVudHJ5TGlzdCA9IG9wdGlvbnMucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSh1cmwsICdy
ZXNvdXJjZScpOworICBpZiAob3B0aW9ucy5zaG91bGRfbm9fcGVyZm9ybWFuY2VfZW50cnkpIHsK
KyAgICAvLyBUaGUgcGVyZm9ybWFuY2UgdGltZWxpbmUgbWF5IG5vdCBoYXZlIGFuIGVudHJ5IGZv
ciBhIHJlc291cmNlCisgICAgLy8gd2hpY2ggZmFpbGVkIHRvIGxvYWQuCisgICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeUxpc3QubGVuZ3RoLCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgICByZXR1
cm47CisgIH0KKworICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlzdC5sZW5ndGgsIDEsIG9wdGlvbnMu
ZGVzY3JpcHRpb24pOworICBjb25zdCBlbnRyeSA9IGVudHJ5TGlzdFswXTsKKyAgYXNzZXJ0X2Vx
dWFscyhlbnRyeS5lbnRyeVR5cGUsICdyZXNvdXJjZScsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwor
CisgIC8vIHdvcmtlclN0YXJ0IGlzIHJlY29yZGVkIGJldHdlZW4gc3RhcnRUaW1lIGFuZCBmZXRj
aFN0YXJ0LgorICBhc3NlcnRfZ3JlYXRlcl90aGFuKGVudHJ5LndvcmtlclN0YXJ0LCAwLCBvcHRp
b25zLmRlc2NyaXB0aW9uKTsKKyAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS53b3Jr
ZXJTdGFydCwgZW50cnkuc3RhcnRUaW1lLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgYXNzZXJ0
X2xlc3NfdGhhbl9lcXVhbChlbnRyeS53b3JrZXJTdGFydCwgZW50cnkuZmV0Y2hTdGFydCwgb3B0
aW9ucy5kZXNjcmlwdGlvbik7CisKKyAgaWYgKG9wdGlvbnMubW9kZSA9PT0gJ2Nyb3NzLW9yaWdp
bicpIHsKKyAgICBhc3NlcnRfZXF1YWxzKGVudHJ5LnJlc3BvbnNlU3RhcnQsIDAsIG9wdGlvbnMu
ZGVzY3JpcHRpb24pOworICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwoZW50cnkucmVzcG9u
c2VFbmQsIGVudHJ5LmZldGNoU3RhcnQsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICB9IGVsc2Ug
eworICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwoZW50cnkucmVzcG9uc2VTdGFydCwgZW50
cnkuZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisgICAgYXNzZXJ0X2dyZWF0ZXJf
dGhhbl9lcXVhbChlbnRyeS5yZXNwb25zZUVuZCwgZW50cnkucmVzcG9uc2VTdGFydCwgb3B0aW9u
cy5kZXNjcmlwdGlvbik7CisgIH0KKworICAvLyByZXNwb25zZUVuZCBmb2xsb3dzIGZldGNoU3Rh
cnQuCisgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LmZldGNo
U3RhcnQsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICAvLyBkdXJhdGlvbiBhbHdheXMgaGFzIHNv
bWUgdmFsdWUuCisgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkuZHVyYXRpb24sIDAsIG9wdGlv
bnMuZGVzY3JpcHRpb24pOworCisgIGlmIChvcHRpb25zLnJlc291cmNlLmluZGV4T2YoJ3JlZGly
ZWN0LnB5JykgIT0gLTEpIHsKKyAgICBhc3NlcnRfbGVzc190aGFuX2VxdWFsKGVudHJ5Lndvcmtl
clN0YXJ0LCBlbnRyeS5yZWRpcmVjdFN0YXJ0LAorICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbik7
CisgIH0gZWxzZSB7CisgICAgYXNzZXJ0X2VxdWFscyhlbnRyeS5yZWRpcmVjdFN0YXJ0LCAwLCBv
cHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgfQogfQogCi1wcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkg
ewotICAgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy13b3Jr
ZXIuanMnOwotICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZy
YW1lLnN1Yi5odG1sJzsKLSAgICBsZXQgcmVnaXN0cmF0aW9uOworcHJvbWlzZV90ZXN0KGFzeW5j
ICh0KSA9PiB7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3Jlc291cmNlLXRpbWlu
Zy13b3JrZXIuanMnOworICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5n
LWlmcmFtZS5zdWIuaHRtbCc7CiAKLSAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rl
cl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyX3VybCwgc2NvcGUpCi0gICAgICAudGhlbihmdW5jdGlv
bihyKSB7Ci0gICAgICAgICAgcmVnaXN0cmF0aW9uID0gcjsKLSAgICAgICAgICByZXR1cm4gd2Fp
dF9mb3Jfc3RhdGUodCwgci5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7Ci0gICAgICAgIH0pCi0g
ICAgICAudGhlbihmdW5jdGlvbigpIHsKLSAgICAgICAgICByZXR1cm4gd2l0aF9pZnJhbWUoc2Nv
cGUpOwotICAgICAgICB9KQotICAgICAgLnRoZW4oZnVuY3Rpb24oZnJhbWUpIHsKLSAgICAgICAg
ICBjb25zdCBwZXJmb3JtYW5jZSA9IGZyYW1lLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2U7Ci0g
ICAgICAgICAgdmVyaWZ5KHsKLSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNl
LAotICAgICAgICAgICAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9kdW1teS5qcycsCi0gICAgICAg
ICAgICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCi0gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAn
R2VuZXJhdGVkIHJlc3BvbnNlJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICB2ZXJpZnkoewot
ICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJl
c291cmNlOiAncmVzb3VyY2VzL2VtcHR5LmpzJywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUt
b3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrJywK
LSAgICAgICAgICB9KTsKLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3Jt
YW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3Jl
ZGlyZWN0LnB5P1JlZGlyZWN0PWVtcHR5LmpzJywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUt
b3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSZWRpcmVjdCcsCi0gICAgICAg
ICAgfSk7Ci0gICAgICAgICAgdmVyaWZ5KHsKLSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBl
cmZvcm1hbmNlLAotICAgICAgICAgICAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9zcXVhcmUucG5n
JywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVz
Y3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGltYWdlJywKLSAgICAgICAgICB9KTsKLSAgICAg
ICAgICAvLyBUZXN0IHRoYXQgd29ya2VyIHN0YXJ0IGlzIGF2YWlsYWJsZSBvbiBjcm9zcy1vcmln
aW4gbm8tY29ycwotICAgICAgICAgIC8vIHN1YnJlc291cmNlcy4KLSAgICAgICAgICB2ZXJpZnko
ewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAg
IHJlc291cmNlOiAncmVzb3VyY2VzL3NxdWFyZS5wbmcnLAotICAgICAgICAgICAgICBtb2RlOiAn
Y3Jvc3Mtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxi
YWNrIGNyb3NzLW9yaWdpbiBpbWFnZScsCi0gICAgICAgICAgfSk7CisgIGNvbnN0IHJlZ2lzdHJh
dGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdv
cmtlcl91cmwsIHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5y
ZWdpc3RlcigpKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3Rh
bGxpbmcsICdhY3RpdmF0ZWQnKTsKKyAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShz
Y29wZSk7CisgIHQuYWRkX2NsZWFudXAoKCkgPT4gZnJhbWUucmVtb3ZlKCkpOwogCi0gICAgICAg
ICAgLy8gVGVzdHMgZm9yIHJlc291Y2VzIHdoaWNoIGZhaWxlZCB0byBsb2FkLgotICAgICAgICAg
IHZlcmlmeSh7Ci0gICAgICAgICAgICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAg
ICAgICAgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvbWlzc2luZy5qcGcnLAotICAgICAgICAgICAg
ICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05ldHdv
cmsgZmFsbGJhY2sgbG9hZCBmYWlsdXJlJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICB2ZXJp
ZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAg
ICAgIHJlc291cmNlOiAncmVzb3VyY2VzL21pc3NpbmcuanBnJywKLSAgICAgICAgICAgICAgbW9k
ZTogJ2Nyb3NzLW9yaWdpbicsCi0gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBm
YWxsYmFjayBjcm9zcy1vcmlnaW4gbG9hZCBmYWlsdXJlJywKLSAgICAgICAgICB9KTsKLSAgICAg
ICAgICAvLyBUZXN0cyBmb3IgcmVzcG9uZFdpdGgoZmV0Y2goKSkuCi0gICAgICAgICAgdmVyaWZ5
KHsKLSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAg
ICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZz9TV1Jlc3BvbmRzV2l0aEZldGNoJywK
LSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3Jp
cHRpb246ICdSZXNvdXJjZSBpbiBpZnJhbWUsIG5vbmV4aXN0ZW50IGJ1dCByZXNwb25kZWQgd2l0
aCBmZXRjaCB0byBhbm90aGVyLicsCi0gICAgICAgICAgfSk7Ci0gICAgICAgICAgdmVyaWZ5KHsK
LSAgICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICBy
ZXNvdXJjZTogJ3Jlc291cmNlcy9kdW1teS50eHQ/U1dGZXRjaGVkJywKLSAgICAgICAgICAgICAg
bW9kZTogJ3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSZXNvdXJj
ZSBmZXRjaGVkIGFzIHJlc3BvbnNlIGZyb20gbWlzc2luZy5qcGc/U1dSZXNwb25kc1dpdGhGZXRj
aC4nLAotICAgICAgICAgICAgICBzaG91bGRfbm9fcGVyZm9ybWFuY2VfZW50cnk6IHRydWUsCi0g
ICAgICAgICAgfSk7Ci0gICAgICAgICAgLy8gVGVzdCBmb3IgYSBub3JtYWwgcmVzb3VyY2UgdGhh
dCBpcyB1bmFmZmVjdGVkIGJ5IHRoZSBTZXJ2aWNlIFdvcmtlci4KLSAgICAgICAgICB2ZXJpZnko
ewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAg
IHJlc291cmNlOiAncmVzb3VyY2VzL2VtcHR5LXdvcmtlci5qcycsCi0gICAgICAgICAgICAgIG1v
ZGU6ICdzYW1lLW9yaWdpbicsCi0gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnUmVzb3VyY2Ug
dW50b3VjaGVkIGJ5IHRoZSBTZXJ2aWNlIFdvcmtlci4nLAotICAgICAgICAgIH0pOworICBjb25z
dCBwZXJmb3JtYW5jZSA9IGZyYW1lLmNvbnRlbnRXaW5kb3cucGVyZm9ybWFuY2U7CisgIHZlcmlm
eSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3Vy
Y2VzL3NhbXBsZS5qcycsCisgICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlv
bjogJ0dlbmVyYXRlZCByZXNwb25zZScsCisgIH0pOworICB2ZXJpZnkoeworICAgIHBlcmZvcm1h
bmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9lbXB0eS5qcycsCisg
ICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJh
Y2snLAorICB9KTsKKyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisg
ICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvcmVkaXJlY3QucHk/UmVkaXJlY3Q9ZW1wdHkuanMnLAor
ICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdSZWRpcmVjdCcsCisg
IH0pOworICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNv
dXJjZTogJ3Jlc291cmNlcy9zcXVhcmUucG5nJywKKyAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAor
ICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBmYWxsYmFjayBpbWFnZScsCisgIH0pOworICAvLyBU
ZXN0IHRoYXQgd29ya2VyIHN0YXJ0IGlzIGF2YWlsYWJsZSBvbiBjcm9zcy1vcmlnaW4gbm8tY29y
cworICAvLyBzdWJyZXNvdXJjZXMuCisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZv
cm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3NxdWFyZS5wbmcnLAorICAgIG1vZGU6
ICdjcm9zcy1vcmlnaW4nLAorICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBmYWxsYmFjayBjcm9z
cy1vcmlnaW4gaW1hZ2UnLAorICB9KTsKIAotICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAg
ICAgICAgIHJldHVybiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpOwotICAgICAgfSk7CisgIC8v
IFRlc3RzIGZvciByZXNvdWNlcyB3aGljaCBmYWlsZWQgdG8gbG9hZC4KKyAgdmVyaWZ5KHsKKyAg
ICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvbWlz
c2luZy5qcGcnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdO
ZXR3b3JrIGZhbGxiYWNrIGxvYWQgZmFpbHVyZScsCisgIH0pOworICB2ZXJpZnkoeworICAgIHBl
cmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNzaW5n
LmpwZycsCisgICAgbW9kZTogJ2Nyb3NzLW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdOZXR3
b3JrIGZhbGxiYWNrIGNyb3NzLW9yaWdpbiBsb2FkIGZhaWx1cmUnLAorICB9KTsKKyAgLy8gVGVz
dHMgZm9yIHJlc3BvbmRXaXRoKGZldGNoKCkpLgorICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNl
OiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZz9TV1Jl
c3BvbmRzV2l0aEZldGNoJywKKyAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAorICAgIGRlc2NyaXB0
aW9uOiAnUmVzb3VyY2UgaW4gaWZyYW1lLCBub25leGlzdGVudCBidXQgcmVzcG9uZGVkIHdpdGgg
ZmV0Y2ggdG8gYW5vdGhlci4nLAorICB9KTsKKyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTog
cGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvc2FtcGxlLnR4dD9TV0ZldGNo
ZWQnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdSZXNvdXJj
ZSBmZXRjaGVkIGFzIHJlc3BvbnNlIGZyb20gbWlzc2luZy5qcGc/U1dSZXNwb25kc1dpdGhGZXRj
aC4nLAorICAgIHNob3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeTogdHJ1ZSwKKyAgfSk7CisgIC8v
IFRlc3QgZm9yIGEgbm9ybWFsIHJlc291cmNlIHRoYXQgaXMgdW5hZmZlY3RlZCBieSB0aGUgU2Vy
dmljZSBXb3JrZXIuCisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAor
ICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2VtcHR5LXdvcmtlci5qcycsCisgICAgbW9kZTogJ3Nh
bWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ1Jlc291cmNlIHVudG91Y2hlZCBieSB0aGUg
U2VydmljZSBXb3JrZXIuJywKKyAgfSk7CiB9LCAnQ29udHJvbGxlZCByZXNvdXJjZSBsb2Fkcycp
OwogCiB0ZXN0KCgpID0+IHsKLSAgICBjb25zdCB1cmwgPSByZXNvdXJjZVVybCgncmVzb3VyY2Vz
L3Rlc3QtaGVscGVycy5zdWIuanMnKTsKLSAgICBjb25zdCBlbnRyeSA9IHdpbmRvdy5wZXJmb3Jt
YW5jZS5nZXRFbnRyaWVzQnlOYW1lKHVybCwgJ3Jlc291cmNlJylbMF07Ci0gICAgYXNzZXJ0X2Vx
dWFscyhlbnRyeS53b3JrZXJTdGFydCwgMCwgJ05vbi1jb250cm9sbGVkJyk7CisgIGNvbnN0IHVy
bCA9IHJlc291cmNlVXJsKCdyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcycpOworICBjb25z
dCBlbnRyeSA9IHdpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKHVybCwgJ3Jlc291
cmNlJylbMF07CisgIGFzc2VydF9lcXVhbHMoZW50cnkud29ya2VyU3RhcnQsIDAsICdOb24tY29u
dHJvbGxlZCcpOwogfSwgJ05vbi1jb250cm9sbGVkIHJlc291cmNlIGxvYWRzJyk7CiAKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVs
ZS0yLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS0yLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE4OWIxYzg3ZmVlNzVjODZjYTA4MzUxODcyZTQwMmI4NGI4Yjg0NGYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLTIu
anMKQEAgLTAsMCArMSBAQAorZXhwb3J0IGRlZmF1bHQgJ2hlbGxvIGFnYWluISc7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLmpzIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODlhODli
YzYzMDg0N2U0Y2RjMTE1ZjBkMjlmMTAzYzk3YmVkZWViCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS5qcwpAQCAtMCwwICsxIEBACitl
eHBvcnQgZGVmYXVsdCAnaGVsbG8hJzsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9jbGFpbS1ibG9iLXVybC13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xhaW0tYmxvYi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjEyYWUxYTg3MjU4ZjcyMzVjNjE2NTAyOWI0OGU3YjRkYzJmZjkwZDIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xhaW0tYmxv
Yi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjEgQEAKKzwhZG9jdHlw
ZSBodG1sPgorPHNjcmlwdD4KK2NvbnN0IGJhc2VMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsK
K2NvbnN0IHdvcmtlclNjcmlwdCA9CisgIGBzZWxmLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7
CisgICAgY29uc3QgdXJsID0gbmV3IFVSTChlLmRhdGEsICcke2Jhc2VMb2NhdGlvbn0nKS5ocmVm
OworICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTsKKyAgICBjb25zdCB0ZXh0
ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOworICAgIHNlbGYucG9zdE1lc3NhZ2UodGV4dCk7Cisg
IH07YDsKK2NvbnN0IGJsb2IgPSBuZXcgQmxvYihbd29ya2VyU2NyaXB0XSwgeyB0eXBlOiAndGV4
dC9qYXZhc2NyaXB0JyB9KTsKK2NvbnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJs
b2IpOworY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihibG9iVXJsKTsKKworZnVuY3Rpb24gZmV0
Y2hfaW5fd29ya2VyKHVybCkgeworICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsK
KyAgICB3b3JrZXIub25tZXNzYWdlID0gKGUpID0+IHJlc29sdmUoZS5kYXRhKTsKKyAgICB3b3Jr
ZXIucG9zdE1lc3NhZ2UodXJsKTsKKyAgfSk7Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMKaW5kZXgg
ZDE0OTIxZmVmNzRlNzgzYTBjZTVlZWUwMDMzYjkxYjM3ZThmOGRkZi4uNjEwMWQ1ZDhmOTJjY2Qw
ZWM3OThjMjdhMmFiMWNkMzNkZTVmYzFiYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMKQEAgLTMsNiArMyw4IEBAIGlt
cG9ydFNjcmlwdHMoInRlc3QtaGVscGVycy5zdWIuanMiKTsKIGltcG9ydFNjcmlwdHMoIi9jb21t
b24vZ2V0LWhvc3QtaW5mby5zdWIuanMiKQogaW1wb3J0U2NyaXB0cygidGVzdGhhcm5lc3MtaGVs
cGVycy5qcyIpCiAKK3NldHVwKHsgZXhwbGljaXRfZG9uZTogdHJ1ZSB9KTsKKwogc2VsZi5vbmZl
dGNoID0gZnVuY3Rpb24oZSkgewogICBpZiAoZS5yZXF1ZXN0LnVybC5pbmRleE9mKCJjbGllbnQt
bmF2aWdhdGUtZnJhbWUuaHRtbCIpID49IDApIHsKICAgICByZXR1cm47CkBAIC0zNSw2ICszNyw3
IEBAIHNlbGYub25tZXNzYWdlID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICB9KQog
ICAgICAgICAgICAgICAgICAuY2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSk7CiAgICAgfSwg
IlJldHVybiB2YWx1ZSBzaG91bGQgYmUgaW5zdGFuY2Ugb2YgV2luZG93Q2xpZW50Iik7CisgICAg
ZG9uZSgpOwogICB9IGVsc2UgaWYgKHRlc3QgPT09ICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9jcm9z
c19vcmlnaW4iKSB7CiAgICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHRoaXMu
YWRkX2NsZWFudXAoKCkgPT4gcG9ydC5wb3N0TWVzc2FnZShwYXNzKHRlc3QsIGNsaWVudFVybCkp
KTsKQEAgLTQ5LDYgKzUyLDcgQEAgc2VsZi5vbm1lc3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAg
ICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0
aW9uKHQpKTsKICAgICB9LCAiTmF2aWdhdGluZyB0byBkaWZmZXJlbnQgb3JpZ2luIHNob3VsZCBy
ZXNvbHZlIHdpdGggbnVsbCIpOworICAgIGRvbmUoKTsKICAgfSBlbHNlIGlmICh0ZXN0ID09PSAi
dGVzdF9jbGllbnRfbmF2aWdhdGVfYWJvdXRfYmxhbmsiKSB7CiAgICAgcHJvbWlzZV90ZXN0KGZ1
bmN0aW9uKHQpIHsKICAgICAgIHRoaXMuYWRkX2NsZWFudXAoZnVuY3Rpb24oKSB7IHBvcnQucG9z
dE1lc3NhZ2UocGFzcyh0ZXN0LCAiIikpOyB9KTsKQEAgLTU2LDYgKzYwLDcgQEAgc2VsZi5vbm1l
c3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgIC50aGVuKGNsaWVudCA9PiBw
cm9taXNlX3JlamVjdHNfanModCwgVHlwZUVycm9yLCBjbGllbnQubmF2aWdhdGUoImFib3V0OmJs
YW5rIikpKQogICAgICAgICAgICAgICAgICAuY2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSk7
CiAgICAgfSwgIk5hdmlnYXRpbmcgdG8gYWJvdXQ6Ymxhbmsgc2hvdWxkIHJlamVjdCB3aXRoIFR5
cGVFcnJvciIpOworICAgIGRvbmUoKTsKICAgfSBlbHNlIGlmICh0ZXN0ID09PSAidGVzdF9jbGll
bnRfbmF2aWdhdGVfbWl4ZWRfY29udGVudCIpIHsKICAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dCkgewogICAgICAgdGhpcy5hZGRfY2xlYW51cChmdW5jdGlvbigpIHsgcG9ydC5wb3N0TWVzc2Fn
ZShwYXNzKHRlc3QsICIiKSk7IH0pOwpAQCAtNjcsNiArNzIsNyBAQCBzZWxmLm9ubWVzc2FnZSA9
IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgLnRoZW4oY2xpZW50ID0+IHByb21pc2Vf
cmVqZWN0c19qcyh0LCBUeXBlRXJyb3IsIGNsaWVudC5uYXZpZ2F0ZSh1cmwpKSkKICAgICAgICAg
ICAgICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpOwogICAgIH0sICJOYXZpZ2F0
aW5nIHRvIG1peGVkLWNvbnRlbnQgaWZyYW1lIHNob3VsZCByZWplY3Qgd2l0aCBUeXBlRXJyb3Ii
KTsKKyAgICBkb25lKCk7CiAgIH0gZWxzZSBpZiAodGVzdCA9PT0gInRlc3RfY2xpZW50X25hdmln
YXRlX3JlZGlyZWN0IikgewogICAgIHZhciBob3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CiAg
ICAgdmFyIHVybCA9IG5ldyBVUkwoaG9zdF9pbmZvWydIVFRQU19SRU1PVEVfT1JJR0lOJ10pLnRv
U3RyaW5nKCkgKwpAQCAtNzcsOSArODMsMTAgQEAgc2VsZi5vbm1lc3NhZ2UgPSBmdW5jdGlvbihl
KSB7CiAgICAgICAgICAgICAgICAgIC50aGVuKGNsaWVudCA9PiBjbGllbnQubmF2aWdhdGUoInJl
ZGlyZWN0LnB5P1JlZGlyZWN0PSIgKyB1cmwpKQogICAgICAgICAgICAgICAgICAudGhlbihjbGll
bnQgPT4gewogICAgICAgICAgICAgICAgICAgIGNsaWVudFVybCA9IChjbGllbnQgJiYgY2xpZW50
LnVybCkgfHwgIiIKLSAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShjbGllbnQgPT09IG51
bGwpOworICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LCBudWxsKTsKICAg
ICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWpl
Y3Rpb24odCkpOwogICAgIH0sICJSZWRpcmVjdGluZyB0byBhbm90aGVyIG9yaWdpbiBzaG91bGQg
cmVzb2x2ZSB3aXRoIG51bGwiKTsKKyAgICBkb25lKCk7CiAgIH0KIH07CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJs
LXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAwZjZhY2VkZThlYjRmYWZiYmY2YTI0OGM3NWRiODRk
YmEzZWZjNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
Y2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlwdD4KKworLy8gUmV0dXJuIGEgVVJMIG9mIGEgY2xp
ZW50IHdoZW4gaXQncyBzdWNjZXNzZnVsLgorZnVuY3Rpb24gY3JlYXRlQW5kRmV0Y2hGcm9tQmxv
YldvcmtlcigpIHsKKyAgY29uc3QgZmV0Y2hVUkwgPSBuZXcgVVJMKCdnZXQtd29ya2VyLWNsaWVu
dC11cmwudHh0Jywgd2luZG93LmxvY2F0aW9uKS5ocmVmOworICBjb25zdCB3b3JrZXJTY3JpcHQg
PQorICAgIGBzZWxmLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CisgICAgICBjb25zdCByZXNw
b25zZSA9IGF3YWl0IGZldGNoKGUuZGF0YS51cmwpOworICAgICAgY29uc3QgdGV4dCA9IGF3YWl0
IHJlc3BvbnNlLnRleHQoKTsKKyAgICAgIHNlbGYucG9zdE1lc3NhZ2UoeyJyZXN1bHQiOiB0ZXh0
LCAiZXhwZWN0ZWQiOiBzZWxmLmxvY2F0aW9uLmhyZWZ9KTsKKyAgICB9O2A7CisgIGNvbnN0IGJs
b2IgPSBuZXcgQmxvYihbd29ya2VyU2NyaXB0XSwgeyB0eXBlOiAndGV4dC9qYXZhc2NyaXB0JyB9
KTsKKyAgY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CisKKyAgY29u
c3Qgd29ya2VyID0gbmV3IFdvcmtlcihibG9iVXJsKTsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKChy
ZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICB3b3JrZXIub25tZXNzYWdlID0gZSA9PiByZXNvbHZl
KGUuZGF0YSk7CisgICAgd29ya2VyLm9uZXJyb3IgPSBlID0+IHJlamVjdChlLm1lc3NhZ2UpOwor
ICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7InVybCI6IGZldGNoVVJMfSk7CisgIH0pOworfQorCis8
L3NjcmlwdD4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZDc1
NGY4MjUwZGEwYTA0NjRiOTYwNzY3ZjllN2FiOTdmNTI3NGI0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2Vy
LmpzCkBAIC0wLDAgKzEsMTAgQEAKK2FkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZSA9PiB7Cisg
IGlmIChlLnJlcXVlc3QudXJsLmluY2x1ZGVzKCdnZXQtd29ya2VyLWNsaWVudC11cmwnKSkgewor
ICAgIGUucmVzcG9uZFdpdGgoKGFzeW5jICgpID0+IHsKKyAgICAgIGNvbnN0IGNsaWVudHMgPSBh
d2FpdCBzZWxmLmNsaWVudHMubWF0Y2hBbGwoe3R5cGU6ICd3b3JrZXInfSk7CisgICAgICBpZiAo
Y2xpZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgcmV0dXJuIG5ldyBSZXNwb25zZSgnb25lIHdv
cmtlciBjbGllbnQgc2hvdWxkIGV4aXN0Jyk7CisgICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKGNs
aWVudHNbMF0udXJsKTsKKyAgICB9KSgpKTsKKyAgfQorfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJs
LXdvcmtlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVlODlhMGQ4YjNlZTc1MTNmZjM4MTc2MzJkYjMyYTlm
NWYyYzE2MmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
Y2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHRtbApAQCAtMCwwICsxLDIwIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlwdD4KK2NvbnN0IHdvcmtlclNjcmlwdCA9IGAK
KyAgc2VsZi5vbm1lc3NhZ2UgPSAoZSkgPT4geworICAgIHNlbGYucG9zdE1lc3NhZ2UoIldvcmtl
ciBpcyByZWFkeS4iKTsKKyAgfTsKK2A7Citjb25zdCBibG9iID0gbmV3IEJsb2IoW3dvcmtlclNj
cmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSk7Citjb25zdCBibG9iVXJsID0gVVJM
LmNyZWF0ZU9iamVjdFVSTChibG9iKTsKK2NvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoYmxvYlVy
bCk7CisKK2Z1bmN0aW9uIHdhaXRGb3JXb3JrZXIoKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZShy
ZXNvbHZlID0+IHsKKyAgICB3b3JrZXIub25tZXNzYWdlID0gcmVzb2x2ZTsKKyAgICB3b3JrZXIu
cG9zdE1lc3NhZ2UoIlBpbmcgdG8gd29ya2VyLiIpOworICB9KTsKK30KKzwvc2NyaXB0PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1ibG9i
LXVybC13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLWJsb2It
dXJsLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41N2U0ODgyYzI0ZjcyNzNlMzQ2OWI5YjYwNjQ5ZmZh
NGI0ZjM5NjE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2NyZWF0ZS1ibG9iLXVybC13b3JrZXIuanMKQEAgLTAsMCArMSwyMiBAQAorY29uc3QgY2hpbGRX
b3JrZXJTY3JpcHQgPSBgCisgIHNlbGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsKKyAgICBj
b25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGUuZGF0YSk7CisgICAgY29uc3QgdGV4dCA9IGF3
YWl0IHJlc3BvbnNlLnRleHQoKTsKKyAgICBzZWxmLnBvc3RNZXNzYWdlKHRleHQpOworICB9Owor
YDsKK2NvbnN0IGJsb2IgPSBuZXcgQmxvYihbY2hpbGRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0
ZXh0L2phdmFzY3JpcHQnIH0pOworY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwo
YmxvYik7Citjb25zdCBjaGlsZFdvcmtlciA9IG5ldyBXb3JrZXIoYmxvYlVybCk7CisKKy8vIFdo
ZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhlIHBhcmVudCBmcmFtZSwgc2VuZHMgYSByZXNvdXJj
ZSB1cmwgdG8gdGhlIGNoaWxkCisvLyB3b3JrZXIuCitzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7
CisgIGNoaWxkV29ya2VyLnBvc3RNZXNzYWdlKGUuZGF0YSk7Cit9OworCisvLyBXaGVuIGEgbWVz
c2FnZSBjb21lcyBmcm9tIHRoZSBjaGlsZCB3b3JrZXIsIHNlbmRzIGEgY29udGVudCBvZiBmZXRj
aCgpIHRvIHRoZQorLy8gcGFyZW50IGZyYW1lLgorY2hpbGRXb3JrZXIub25tZXNzYWdlID0gKGUp
ID0+IHsKKyAgc2VsZi5wb3N0TWVzc2FnZShlLmRhdGEpOworfTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9jcmVhdGUtb3V0LW9mLXNjb3BlLXdvcmtlci5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1vdXQtb2Ytc2NvcGUtd29ya2VyLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYjUxYzQ1MTc1MDk0NzBjZTVmMjk0MGIxYWM2NDI0MmQ2NTg4NWVjMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jcmVhdGUtb3V0
LW9mLXNjb3BlLXdvcmtlci5odG1sCkBAIC0wLDAgKzEsMTkgQEAKKzwhZG9jdHlwZSBodG1sPgor
PHNjcmlwdD4KK2NvbnN0IHdvcmtlclVybCA9ICcuLi9vdXQtb2Ytc2NvcGUvc2FtcGxlLXN5bnRo
ZXNpemVkLXdvcmtlci5qcz9kZWRpY2F0ZWQnOworY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcih3
b3JrZXJVcmwpOworY29uc3Qgd29ya2VyUHJvbWlzZSA9IG5ldyBQcm9taXNlKHJlc29sdmUgPT4g
eworICB3b3JrZXIub25tZXNzYWdlID0gZSA9PiB7CisgICAgLy8gYGUuZGF0YWAgaXMgJ3dvcmtl
ciBsb2FkaW5nIGludGVyY2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyJyB3aGVuIGEgd29ya2VyCisg
ICAgLy8gaXMgaW50ZXJjZXB0ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlci4KKyAgICByZXNvbHZlKGUu
ZGF0YSk7CisgIH0KKyAgd29ya2VyLm9uZXJyb3IgPSBfID0+IHsKKyAgICByZXNvbHZlKCd3b3Jr
ZXIgbG9hZGluZyB3YXMgbm90IGludGVyY2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyJyk7CisgIH0K
K30pOworCitmdW5jdGlvbiBnZXRXb3JrZXJQcm9taXNlKCkgeworICByZXR1cm4gd29ya2VyUHJv
bWlzZTsKK30KKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDUxMjllZDUxZWE1NTBjMjEwYWJjNTNlMTEyMDllN2EzZTlkYzM2YjEuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcworKysgL2Rldi9udWxsCkBAIC0x
LDQ2ICswLDAgQEAKLWltcG9ydFNjcmlwdHMoJy9jb21tb24vZ2V0LWhvc3QtaW5mby5zdWIuanMn
KTsKLQotY29uc3QgdGV4dCA9ICd3b3JrZXIgbG9hZGluZyBpbnRlcmNlcHRlZCBieSBzZXJ2aWNl
IHdvcmtlcic7Ci1jb25zdCBkZWRpY2F0ZWRfd29ya2VyX3NjcmlwdCA9IGBwb3N0TWVzc2FnZSgn
JHt0ZXh0fScpO2A7Ci1jb25zdCBzaGFyZWRfd29ya2VyX3NjcmlwdCA9Ci0gICAgYG9uY29ubmVj
dCA9IGV2dCA9PiBldnQucG9ydHNbMF0ucG9zdE1lc3NhZ2UoJyR7dGV4dH0nKTtgOwotCi1zZWxm
Lm9uZmV0Y2ggPSBldmVudCA9PiB7Ci0gIGNvbnN0IHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwot
ICBjb25zdCBkZXN0aW5hdGlvbiA9IGV2ZW50LnJlcXVlc3QuZGVzdGluYXRpb247Ci0KLSAgLy8g
UmVxdWVzdCBoYW5kbGVyIGZvciBhIHN5bnRoZXNpemVkIHJlc3BvbnNlLgotICBpZiAodXJsLmlu
ZGV4T2YoJ3N5bnRoZXNpemVkJykgIT0gLTEpIHsKLSAgICBsZXQgc2NyaXB0X2hlYWRlcnMgPSBu
ZXcgSGVhZGVycyh7ICJDb250ZW50LVR5cGUiOiAidGV4dC9qYXZhc2NyaXB0IiB9KTsKLSAgICBp
ZiAoZGVzdGluYXRpb24gPT09ICd3b3JrZXInKQotICAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3
IFJlc3BvbnNlKGRlZGljYXRlZF93b3JrZXJfc2NyaXB0LCB7ICdoZWFkZXJzJzogc2NyaXB0X2hl
YWRlcnMgfSkpOwotICAgIGVsc2UgaWYgKGRlc3RpbmF0aW9uID09PSAnc2hhcmVkd29ya2VyJykK
LSAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZShzaGFyZWRfd29ya2VyX3Njcmlw
dCwgeyAnaGVhZGVycyc6IHNjcmlwdF9oZWFkZXJzIH0pKTsKLSAgICBlbHNlCi0gICAgICBldmVu
dC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoJ1VuZXhwZWN0ZWQgcmVxdWVzdCEgJyArIGRlc3Rp
bmF0aW9uKSk7Ci0gICAgcmV0dXJuOwotICB9Ci0KLSAgLy8gUmVxdWVzdCBoYW5kbGVyIGZvciBh
IHNhbWUtb3JpZ2luIHJlc3BvbnNlLgotICBpZiAodXJsLmluZGV4T2YoJ3NhbWUtb3JpZ2luJykg
IT0gLTEpIHsKLSAgICBldmVudC5yZXNwb25kV2l0aChmZXRjaCgncG9zdG1lc3NhZ2Utb24tbG9h
ZC13b3JrZXIuanMnKSk7Ci0gICAgcmV0dXJuOwotICB9Ci0KLSAgLy8gUmVxdWVzdCBoYW5kbGVy
IGZvciBhIGNyb3NzLW9yaWdpbiByZXNwb25zZS4KLSAgaWYgKHVybC5pbmRleE9mKCdjb3JzJykg
IT0gLTEpIHsKLSAgICBjb25zdCBmaWxlbmFtZSA9ICdwb3N0bWVzc2FnZS1vbi1sb2FkLXdvcmtl
ci5qcyc7Ci0gICAgY29uc3QgcGF0aCA9IChuZXcgVVJMKGZpbGVuYW1lLCBzZWxmLmxvY2F0aW9u
KSkucGF0aG5hbWU7Ci0gICAgbGV0IG5ld191cmwgPSBnZXRfaG9zdF9pbmZvKClbJ0hUVFBTX1JF
TU9URV9PUklHSU4nXSArIHBhdGg7Ci0gICAgbGV0IG1vZGU7Ci0gICAgaWYgKHVybC5pbmRleE9m
KCduby1jb3JzJykgIT0gLTEpIHsKLSAgICAgIC8vIFRlc3Qgbm8tY29ycyBtb2RlLgotICAgICAg
bW9kZSA9ICduby1jb3JzJzsKLSAgICB9IGVsc2UgewotICAgICAgLy8gVGVzdCBjb3JzIG1vZGUu
Ci0gICAgICBuZXdfdXJsICs9ICc/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3Jp
Z2luLCopJzsKLSAgICAgIG1vZGUgPSAnY29ycyc7Ci0gICAgfQotICAgIGV2ZW50LnJlc3BvbmRX
aXRoKGZldGNoKG5ld191cmwsIHsgbW9kZTogbW9kZSB9KSk7Ci0gIH0KLX07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAx
MmExNzk5ODBkZjJmZjYwYzI1ODgyNzExOWM3OGE2NDVlMWE3NGE3Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9kdW1teS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMiArMCwwIEBACi08IURPQ1RZUEUgaHRt
bD4KLTxib2R5PkhlbGxvIHdvcmxkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZHVtbXkudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15LnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODAyOTkyYzQyMjBkZTE5YTkwNzY3ZjMwMDBh
NzlhMzFiOThkMGRmNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkudHh0CisrKyAvZGV2L251bGwK
QEAgLTEgKzAsMCBAQAotSGVsbG8gd29ybGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0LXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0LXdvcmtlci5qcwppbmRleCAwYTUyYTgyMDFlYTk2
ZDUwZDNmYTZlZTMwMmY2YWE5MGI0NDM1ZGE2Li5iYjU5YmM5Mjg2NTFhY2Q1Mjc0NDMxZTZkMzE3
MTFjNDI4ODUyM2JhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0
Y2gtZXZlbnQtdGVzdC13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2ZldGNoLWV2ZW50LXRlc3Qtd29ya2VyLmpzCkBAIC0xNTUsNiArMTU1LDI5IEBAIGZ1bmN0aW9u
IGhhbmRsZUlzSGlzdG9yeU5hdmlnYXRpb24oZXZlbnQpIHsKICAgZXZlbnQucmVzcG9uZFdpdGgo
bmV3IFJlc3BvbnNlKGJvZHkpKTsKIH0KIAorZnVuY3Rpb24gaGFuZGxlVXNlQW5kSWdub3JlKGV2
ZW50KSB7CisgIGNvbnN0IHJlcXVlc3QgPSBldmVudC5yZXF1ZXN0OworICByZXF1ZXN0LnRleHQo
KTsKKyAgcmV0dXJuOworfQorCitmdW5jdGlvbiBoYW5kbGVDbG9uZUFuZElnbm9yZShldmVudCkg
eworICBjb25zdCByZXF1ZXN0ID0gZXZlbnQucmVxdWVzdDsKKyAgcmVxdWVzdC5jbG9uZSgpLnRl
eHQoKTsKKyAgcmV0dXJuOworfQorCit2YXIgaGFuZGxlX3N0YXR1c19jb3VudCA9IDA7CitmdW5j
dGlvbiBoYW5kbGVTdGF0dXMoZXZlbnQpIHsKKyAgaGFuZGxlX3N0YXR1c19jb3VudCsrOworICBl
dmVudC5yZXNwb25kV2l0aChhc3luYyBmdW5jdGlvbigpIHsKKyAgICBjb25zdCByZXMgPSBhd2Fp
dCBmZXRjaChldmVudC5yZXF1ZXN0KTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzLnRleHQo
KTsKKyAgICByZXR1cm4gbmV3IFJlc3BvbnNlKGAke3RleHR9LiBSZXF1ZXN0IHdhcyBzZW50ICR7
aGFuZGxlX3N0YXR1c19jb3VudH0gdGltZXMuYCwKKyAgICAgIHsic3RhdHVzIjogbmV3IFVSTChl
dmVudC5yZXF1ZXN0LnVybCkuc2VhcmNoUGFyYW1zLmdldCgic3RhdHVzIil9KTsKKyAgfSgpKTsK
K30KKwogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAg
ICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwogICAgIHZhciBoYW5kbGVycyA9IFsKQEAg
LTE4MCw2ICsyMDMsOSBAQCBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24o
ZXZlbnQpIHsKICAgICAgIHsgcGF0dGVybjogJz9rZWVwYWxpdmUnLCBmbjogaGFuZGxlS2VlcGFs
aXZlIH0sCiAgICAgICB7IHBhdHRlcm46ICc/aXNSZWxvYWROYXZpZ2F0aW9uJywgZm46IGhhbmRs
ZUlzUmVsb2FkTmF2aWdhdGlvbiB9LAogICAgICAgeyBwYXR0ZXJuOiAnP2lzSGlzdG9yeU5hdmln
YXRpb24nLCBmbjogaGFuZGxlSXNIaXN0b3J5TmF2aWdhdGlvbiB9LAorICAgICAgeyBwYXR0ZXJu
OiAnP3VzZS1hbmQtaWdub3JlJywgZm46IGhhbmRsZVVzZUFuZElnbm9yZSB9LAorICAgICAgeyBw
YXR0ZXJuOiAnP2Nsb25lLWFuZC1pZ25vcmUnLCBmbjogaGFuZGxlQ2xvbmVBbmRJZ25vcmUgfSwK
KyAgICAgIHsgcGF0dGVybjogJz9zdGF0dXMnLCBmbjogaGFuZGxlU3RhdHVzIH0sCiAgICAgXTsK
IAogICAgIHZhciBoYW5kbGVyID0gbnVsbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1ldmVudC13aXRoaW4tc3ctd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy13b3JrZXIuanMKaW5kZXggZjMx
ODBkNzc2YzViMDJlZDJjZjIwMmMyOThmYWJmZDFlOGY4ZWExMS4uNTkwM2JhYjk2OGRjNDdhZWM4
ZDVhNTFkYTE0MjJkMWVjY2JkYjA3NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLWV2ZW50LXdpdGhpbi1zdy13b3JrZXIuanMKQEAgLTUsMjAg
KzUsMjAgQEAgYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBldmVudCA9PiB7CiAKICAgaWYgKHVy
bC5vcmlnaW4gIT0gbG9jYXRpb24ub3JpZ2luKSByZXR1cm47CiAKLSAgaWYgKHVybC5wYXRobmFt
ZS5lbmRzV2l0aCgnL2R1bW15LnR4dCcpKSB7CisgIGlmICh1cmwucGF0aG5hbWUuZW5kc1dpdGgo
Jy9zYW1wbGUudHh0JykpIHsKICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoJ2lu
dGVyY2VwdGVkJykpOwogICAgIHJldHVybjsKICAgfQogCi0gIGlmICh1cmwucGF0aG5hbWUuZW5k
c1dpdGgoJy9kdW1teS50eHQtaW5uZXItZmV0Y2gnKSkgewotICAgIGV2ZW50LnJlc3BvbmRXaXRo
KGZldGNoKCdkdW1teS50eHQnKSk7CisgIGlmICh1cmwucGF0aG5hbWUuZW5kc1dpdGgoJy9zYW1w
bGUudHh0LWlubmVyLWZldGNoJykpIHsKKyAgICBldmVudC5yZXNwb25kV2l0aChmZXRjaCgnc2Ft
cGxlLnR4dCcpKTsKICAgICByZXR1cm47CiAgIH0KIAotICBpZiAodXJsLnBhdGhuYW1lLmVuZHNX
aXRoKCcvZHVtbXkudHh0LWlubmVyLWNhY2hlJykpIHsKKyAgaWYgKHVybC5wYXRobmFtZS5lbmRz
V2l0aCgnL3NhbXBsZS50eHQtaW5uZXItY2FjaGUnKSkgewogICAgIGV2ZW50LnJlc3BvbmRXaXRo
KAogICAgICAgY2FjaGVzLm9wZW4oJ3Rlc3QtaW5uZXItY2FjaGUnKS50aGVuKGNhY2hlID0+Ci0g
ICAgICAgIGNhY2hlLmFkZCgnZHVtbXkudHh0JykudGhlbigoKSA9PiBjYWNoZS5tYXRjaCgnZHVt
bXkudHh0JykpCisgICAgICAgIGNhY2hlLmFkZCgnc2FtcGxlLnR4dCcpLnRoZW4oKCkgPT4gY2Fj
aGUubWF0Y2goJ3NhbXBsZS50eHQnKSkKICAgICAgICkKICAgICApOwogICAgIHJldHVybjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250ZW50
LWlmcmFtZS1pbnNjb3BlLXRvLWluc2NvcGUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9mZXRjaC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLWluc2NvcGUuaHRtbApp
bmRleCBiNmEyNjBkMDY2YmZiYTA0MDIzYWUzNWNmNWJmYjU2OTBjOWY5YzVlLi42NGE2MzRlOWRi
N2I5NTViY2IyOTFmZmEwMmIyM2RhM2I4OTYyZjQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZmV0Y2gtbWl4ZWQtY29udGVudC1pZnJhbWUtaW5zY29wZS10by1pbnNj
b3BlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1peGVkLWNv
bnRlbnQtaWZyYW1lLWluc2NvcGUtdG8taW5zY29wZS5odG1sCkBAIC0xNSw3ICsxNSw3IEBAIGZ1
bmN0aW9uIHRlc3QxKCkgewogICAgIHJlc3VsdHMgKz0gJ0ZBSUwoMSknOwogICAgIHRlc3QyKCk7
CiAgIH07Ci0gIGltZy5zcmMgPSAnLi9kdW1teT91cmw9JyArCisgIGltZy5zcmMgPSAnLi9zYW1w
bGU/dXJsPScgKwogICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGhvc3RfaW5mb1snSFRU
UFNfT1JJR0lOJ10gKyBpbWFnZV9wYXRoKTsKIH0KIApAQCAtMjksNyArMjksNyBAQCBmdW5jdGlv
biB0ZXN0MigpIHsKICAgICByZXN1bHRzICs9ICdGQUlMKDIpJzsKICAgICB0ZXN0MygpOwogICB9
OwotICBpbWcuc3JjID0gJy4vZHVtbXk/bW9kZT1uby1jb3JzJnVybD0nICsKKyAgaW1nLnNyYyA9
ICcuL3NhbXBsZT9tb2RlPW5vLWNvcnMmdXJsPScgKwogICAgICAgICAgICAgZW5jb2RlVVJJQ29t
cG9uZW50KGhvc3RfaW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTiddICsgaW1hZ2VfcGF0aCk7CiB9
CiAKQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rpb24gdGVzdDMoKSB7CiAgIGltZy5vbmVycm9yID0g
ZnVuY3Rpb24oKSB7CiAgICAgdGVzdDQoKTsKICAgfTsKLSAgaW1nLnNyYyA9ICcuL2R1bW15P21v
ZGU9bm8tY29ycyZ1cmw9JyArCisgIGltZy5zcmMgPSAnLi9zYW1wbGU/bW9kZT1uby1jb3JzJnVy
bD0nICsKICAgICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChob3N0X2luZm9bJ0hUVFBfT1JJ
R0lOJ10gKyBpbWFnZV9wYXRoKTsKIH0KIApAQCAtNTcsNyArNTcsNyBAQCBmdW5jdGlvbiB0ZXN0
NCgpIHsKICAgaW1nLm9uZXJyb3IgPSBmdW5jdGlvbigpIHsKICAgICBmaW5pc2goKTsKICAgfTsK
LSAgaW1nLnNyYyA9ICcuL2R1bW15P21vZGU9bm8tY29ycyZ1cmw9JyArCisgIGltZy5zcmMgPSAn
Li9zYW1wbGU/bW9kZT1uby1jb3JzJnVybD0nICsKICAgICAgICAgICAgIGVuY29kZVVSSUNvbXBv
bmVudChob3N0X2luZm9bJ0hUVFBfUkVNT1RFX09SSUdJTiddICsgaW1hZ2VfcGF0aCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250
ZW50LWlmcmFtZS1pbnNjb3BlLXRvLW91dHNjb3BlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZmV0Y2gtbWl4ZWQtY29udGVudC1pZnJhbWUtaW5zY29wZS10by1vdXRzY29wZS5o
dG1sCmluZGV4IGI4Yzk0MGMyYTBhNTY4MGFhMjI4MmNiN2UzYjYxOTQwOGVkODJmODYuLmJlMGI1
YzhmNTYxZGVmY2Y3YjEwOTc3ZjU0ZDI3MGFiODM4YmMwOWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRv
LW91dHNjb3BlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1p
eGVkLWNvbnRlbnQtaWZyYW1lLWluc2NvcGUtdG8tb3V0c2NvcGUuaHRtbApAQCAtNjcsNyArNjcs
NyBAQCBmdW5jdGlvbiB0ZXN0NSgpIHsKICAgICByZXN1bHRzICs9ICdGQUlMKDUpJzsKICAgICBm
aW5pc2goKTsKICAgfTsKLSAgaW1nLnNyYyA9ICcuL2R1bW15P2dlbmVyYXRlLXBuZyc7CisgIGlt
Zy5zcmMgPSAnLi9zYW1wbGU/Z2VuZXJhdGUtcG5nJzsKIH0KIAogZnVuY3Rpb24gZmluaXNoKCkg
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3Qt
Y3NzLWJhc2UtdXJsLXN0eWxlLmNzcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRj
aC1yZXF1ZXN0LWNzcy1iYXNlLXVybC1zdHlsZS5jc3MKaW5kZXggNzY0M2Y2NjdhZGJjMjYzMjQz
ZDkzZjZmYTNhM2I0NmE3N2Q0ZGUxMS4uZjE0ZmNhYWU3Mjc1ZDQyZjY4Y2FjODNlZWQ2ZDc4NzI3
NDYxYTZlMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJl
cXVlc3QtY3NzLWJhc2UtdXJsLXN0eWxlLmNzcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwtc3R5bGUuY3NzCkBAIC0xICsxIEBACi1i
b2R5IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCIuL2R1bW15LnBuZyIpO30KK2JvZHkgeyBiYWNr
Z3JvdW5kLWltYWdlOiB1cmwoIi4vc2FtcGxlLnBuZyIpO30KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC13b3JrZXIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwt
d29ya2VyLmpzCmluZGV4IGU4ZGJkMjcyNWM2OGY5MzI2YzQxYWU1ZTdiZGU2NTE1ODk3MGEyNzIu
LjEwZDNiMTg4MDkzNGU2MzNlY2FhZjlhMGRjNTkwNTQ3Y2U0NmU0NjIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC13b3Jr
ZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3Nz
LWJhc2UtdXJsLXdvcmtlci5qcwpAQCAtMjMsNyArMjMsNyBAQCBzZWxmLmFkZEV2ZW50TGlzdGVu
ZXIoJ2ZldGNoJywgZXZlbnQgPT4gewogICAgIH0KICAgICAvLyBSZXNwb25kIHdpdGggbmV3IFJl
c3BvbnNlKCkuCiAgICAgZWxzZSBpZiAodXJsLnNlYXJjaCA9PSAnP25ld1Jlc3BvbnNlJykgewot
ICAgICAgY29uc3Qgc3R5bGVTdHJpbmcgPSAnYm9keSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgi
Li9kdW1teS5wbmciKTt9JzsKKyAgICAgIGNvbnN0IHN0eWxlU3RyaW5nID0gJ2JvZHkgeyBiYWNr
Z3JvdW5kLWltYWdlOiB1cmwoIi4vc2FtcGxlLnBuZyIpO30nOwogICAgICAgY29uc3QgaGVhZGVy
cyA9IHsnY29udGVudC10eXBlJzogJ3RleHQvY3NzJ307CiAgICAgICBldmVudC5yZXNwb25kV2l0
aChuZXcgUmVzcG9uc2Uoc3R5bGVTdHJpbmcsIGhlYWRlcnMpKTsKICAgICB9CkBAIC0zMSw3ICsz
MSw3IEBAIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBldmVudCA9PiB7CiAKICAgLy8g
VGhlIGltYWdlIHJlcXVlc3QgaW5kaWNhdGVzIHdoYXQgdGhlIGJhc2UgVVJMIG9mIHRoZSBDU1Mg
d2FzLiBNZXNzYWdlIHRoZQogICAvLyByZXN1bHQgYmFjayB0byB0aGUgdGVzdCBwYWdlLgotICBl
bHNlIGlmICh1cmwucGF0aG5hbWUuaW5kZXhPZignZHVtbXkucG5nJykgIT0gLTEpIHsKKyAgZWxz
ZSBpZiAodXJsLnBhdGhuYW1lLmluZGV4T2YoJ3NhbXBsZS5wbmcnKSAhPSAtMSkgewogICAgIC8v
IEZvciBzb21lIHJlYXNvbiB8c291cmNlfCBpcyB1bmRlZmluZWQgaGVyZSB3aGVuIHJ1bm5pbmcg
dGhlIHRlc3QgbWFudWFsbHkKICAgICAvLyBpbiBGaXJlZm94LiBUaGUgdGVzdCBhdXRob3IgZXhw
ZXJpbWVudGVkIHdpdGggYm90aCB1c2luZyBDbGllbnQKICAgICAvLyAoZXZlbnQuc291cmNlKSBh
bmQgTWVzc2FnZVBvcnQgdG8gdHJ5IHRvIGdldCB0aGUgdGVzdCB0byBwYXNzLCBidXQKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0bWwtaW1w
b3J0cy1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1
ZXN0LWh0bWwtaW1wb3J0cy1pZnJhbWUuaHRtbAppbmRleCA3OTUxODU5NDRlOTQyMzAzOGU3MDQy
MWJjYjg2ZWQ0NTM3ZTA2ODdmLi4wN2EwODQyNTdhOGNmZWMzYTFlNjMxMDQzM2M2ZDViMGI3Njkz
ZjU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVz
dC1odG1sLWltcG9ydHMtaWZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBvcnRzLWlmcmFtZS5odG1sCkBAIC04LDYgKzgsNiBA
QAogICAgICAgbGluay5ocmVmID0gdXJsOwogICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LmFwcGVuZENoaWxkKGxpbmspOwogICAgIH07Ci0gIG1ha2VMaW5rKCdzYW1lJywgaG9zdEluZm8u
SFRUUFNfT1JJR0lOICsgJy9kdW1teS1kaXIvc2FtZS5odG1sJyk7Ci0gIG1ha2VMaW5rKCdvdGhl
cicsIGhvc3RJbmZvLkhUVFBTX1JFTU9URV9PUklHSU4gKyAnL2R1bW15LWRpci9vdGhlci5odG1s
Jyk7CisgIG1ha2VMaW5rKCdzYW1lJywgaG9zdEluZm8uSFRUUFNfT1JJR0lOICsgJy9zYW1wbGUt
ZGlyL3NhbWUuaHRtbCcpOworICBtYWtlTGluaygnb3RoZXInLCBob3N0SW5mby5IVFRQU19SRU1P
VEVfT1JJR0lOICsgJy9zYW1wbGUtZGlyL290aGVyLmh0bWwnKTsKIDwvc2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBv
cnRzLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0
LWh0bWwtaW1wb3J0cy13b3JrZXIuanMKaW5kZXggNTUyNWQ1MjY4NjZhZjhhOTk0MTAzMWQwYmM1
NDYyMWIyYzZkNjJiZi4uMTEwNzI3YmQ1MmNmNjIyNDI3Nzg0ODJlNDlhNmNjZjdhOTAyYmZiOSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRt
bC1pbXBvcnRzLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0
Y2gtcmVxdWVzdC1odG1sLWltcG9ydHMtd29ya2VyLmpzCkBAIC0zLDI3ICszLDI3IEBAIHZhciBo
b3N0X2luZm8gPSBnZXRfaG9zdF9pbmZvKCk7CiAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0
Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAgIHZhciB1cmwgPSBldmVudC5yZXF1ZXN0LnVybDsK
LSAgICBpZiAodXJsLmluZGV4T2YoJ2R1bW15LWRpcicpID09IC0xKSB7CisgICAgaWYgKHVybC5p
bmRleE9mKCdzYW1wbGUtZGlyJykgPT0gLTEpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAgICAg
dmFyIHJlc3VsdCA9ICdtb2RlPScgKyBldmVudC5yZXF1ZXN0Lm1vZGUgKwogICAgICAgJyBjcmVk
ZW50aWFscz0nICsgZXZlbnQucmVxdWVzdC5jcmVkZW50aWFsczsKLSAgICBpZiAodXJsID09IGhv
c3RfaW5mby5IVFRQU19PUklHSU4gKyAnL2R1bW15LWRpci9zYW1lLmh0bWwnKSB7CisgICAgaWYg
KHVybCA9PSBob3N0X2luZm8uSFRUUFNfT1JJR0lOICsgJy9zYW1wbGUtZGlyL3NhbWUuaHRtbCcp
IHsKICAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgKICAgICAgICAgcmVzdWx0
ICsKICAgICAgICAgJzxsaW5rIGlkPSJzYW1lLXNhbWUiIHJlbD0iaW1wb3J0IiAnICsKLSAgICAg
ICAgJ2hyZWY9IicgKyBob3N0X2luZm8uSFRUUFNfT1JJR0lOICsgJy9kdW1teS1kaXIvc2FtZS1z
YW1lLmh0bWwiPicgKworICAgICAgICAnaHJlZj0iJyArIGhvc3RfaW5mby5IVFRQU19PUklHSU4g
KyAnL3NhbXBsZS1kaXIvc2FtZS1zYW1lLmh0bWwiPicgKwogICAgICAgICAnPGxpbmsgaWQ9InNh
bWUtb3RoZXIiIHJlbD0iaW1wb3J0IiAnICsKICAgICAgICAgJyBocmVmPSInICsgaG9zdF9pbmZv
LkhUVFBTX1JFTU9URV9PUklHSU4gKwotICAgICAgICAnL2R1bW15LWRpci9zYW1lLW90aGVyLmh0
bWwiPicpKTsKLSAgICB9IGVsc2UgaWYgKHVybCA9PSBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09S
SUdJTiArICcvZHVtbXktZGlyL290aGVyLmh0bWwnKSB7CisgICAgICAgICcvc2FtcGxlLWRpci9z
YW1lLW90aGVyLmh0bWwiPicpKTsKKyAgICB9IGVsc2UgaWYgKHVybCA9PSBob3N0X2luZm8uSFRU
UFNfUkVNT1RFX09SSUdJTiArICcvc2FtcGxlLWRpci9vdGhlci5odG1sJykgewogICAgICAgZXZl
bnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKAogICAgICAgICByZXN1bHQgKwogICAgICAgICAn
PGxpbmsgaWQ9Im90aGVyLXNhbWUiIHJlbD0iaW1wb3J0IiAnICsKLSAgICAgICAgJyBocmVmPSIn
ICsgaG9zdF9pbmZvLkhUVFBTX09SSUdJTiArICcvZHVtbXktZGlyL290aGVyLXNhbWUuaHRtbCI+
JyArCisgICAgICAgICcgaHJlZj0iJyArIGhvc3RfaW5mby5IVFRQU19PUklHSU4gKyAnL3NhbXBs
ZS1kaXIvb3RoZXItc2FtZS5odG1sIj4nICsKICAgICAgICAgJzxsaW5rIGlkPSJvdGhlci1vdGhl
ciIgcmVsPSJpbXBvcnQiICcgKwogICAgICAgICAnIGhyZWY9IicgKyBob3N0X2luZm8uSFRUUFNf
UkVNT1RFX09SSUdJTiArCi0gICAgICAgICcvZHVtbXktZGlyL290aGVyLW90aGVyLmh0bWwiPicp
KTsKKyAgICAgICAgJy9zYW1wbGUtZGlyL290aGVyLW90aGVyLmh0bWwiPicpKTsKICAgICB9IGVs
c2UgewogICAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKHJlc3VsdCkpOwogICAg
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0
LXJlc291cmNlcy1pZnJhbWUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy1pZnJhbWUuaHR0cHMuaHRtbAppbmRleCBiOTc4MzA3
MWUxMjUxNWI3ZTljYjY4M2NlMzM5NzBhMzEzMDRjZTJkLi44NmU5ZjRiYjM1OThhNTk1MTkyMGQx
M2UxZTAwMmQ3OGZlMGFhMjFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtaWZyYW1lLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLWlmcmFtZS5odHRw
cy5odG1sCkBAIC00NCw3ICs0NCwxMCBAQCBmdW5jdGlvbiBsb2FkX2Nzc19pbWFnZSh1cmwsIHR5
cGUpIHsKIGZ1bmN0aW9uIGxvYWRfY3NzX2ltYWdlX3NldCh1cmwsIHR5cGUpIHsKICAgY29uc3Qg
ZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgIGRvY3VtZW50LmJvZHkuYXBw
ZW5kQ2hpbGQoZGl2KTsKLSAgZGl2LnN0eWxlW3R5cGVdID0gJy13ZWJraXQtaW1hZ2Utc2V0KHVy
bCgnICsgdXJsICsgJykgMXgpJzsKKyAgZGl2LnN0eWxlW3R5cGVdID0gJ2ltYWdlLXNldCh1cmwo
JyArIHVybCArICcpIDF4KSc7CisgIGlmICghZGl2LnN0eWxlW3R5cGVdKSB7CisgICAgZGl2LnN0
eWxlW3R5cGVdID0gJy13ZWJraXQtaW1hZ2Utc2V0KHVybCgnICsgdXJsICsgJykgMXgpJzsKKyAg
fQogfQogCiBmdW5jdGlvbiBsb2FkX3NjcmlwdF93aXRoX2ludGVncml0eSh1cmwsIGludGVncml0
eSkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVl
c3QtcmVzb3VyY2VzLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRj
aC1yZXF1ZXN0LXJlc291cmNlcy13b3JrZXIuanMKaW5kZXggNWM5ZTg2ZDY2ODQ2NjA1YTk2YTlm
ZDYxODg5ZTcxYjdhZDRiN2QwMC4uOTgzY2NjYjhkYjc4OTVkOGQ3Mjk0MzA2MWI2NjYwYTg2ZmU5
OWEwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVl
c3QtcmVzb3VyY2VzLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtd29ya2VyLmpzCkBAIC0xMSw3ICsxMSw3IEBAIHNlbGYu
b25tZXNzYWdlID0gZSA9PiB7CiAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBlID0+
IHsKICAgY29uc3QgdXJsID0gZS5yZXF1ZXN0LnVybDsKLSAgaWYgKCF1cmwuaW5jbHVkZXMoJ2R1
bW15P3Rlc3QnKSkgeworICBpZiAoIXVybC5pbmNsdWRlcygnc2FtcGxlP3Rlc3QnKSkgewogICAg
IHJldHVybjsKICAgfQogICBwb3J0LnBvc3RNZXNzYWdlKHsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1pZnJhbWUuaHR0cHMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1pZnJhbWUuaHR0
cHMuaHRtbAppbmRleCA2NWZhNTE3MWIzZDQzMGIwN2FjY2Y5MTcxODEwMzNkNmZjYWEzZGYwLi5i
M2RkZWMxYTcwMWI0MzgwMjVkOWI1ZGQyMDc1NjYyZGFkYjc5YmY2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItaWZyYW1lLmh0dHBzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLWlm
cmFtZS5odHRwcy5odG1sCkBAIC0zMiw3ICszMiw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKHVybF9i
YXNlLCBtZXRob2QsIGRhdGEsIHdpdGhfY3JlZGVudGlhbHMpIHsKICAgICAgIGlmICh3aXRoX2Ny
ZWRlbnRpYWxzKSB7CiAgICAgICAgIHhoci53aXRoQ3JlZGVudGlhbHMgPSB0cnVlOwogICAgICAg
fQotICAgICAgeGhyLm9wZW4obWV0aG9kLCB1cmxfYmFzZSArICcvZHVtbXk/dGVzdCcsIHRydWUp
OworICAgICAgeGhyLm9wZW4obWV0aG9kLCB1cmxfYmFzZSArICcvc2FtcGxlP3Rlc3QnLCB0cnVl
KTsKICAgICAgIHhoci5zZW5kKGRhdGEpOwogICAgIH0pOwogfQpAQCAtMTYxLDcgKzE2MSw3IEBA
IGZ1bmN0aW9uIGZvcm1fZGF0YV90ZXN0KCkgewogICAgICAgICAgICdcclxuJyArCiAgICAgICAg
ICAgJ2ZpbGUgY29udGVudFxyXG4nICsKICAgICAgICAgICAnLS0nICsgYm91bmRhcnkgKyAnLS1c
clxuJzsKLSAgICAgICAgYXNzZXJ0X3RydWUocmVzcG9uc2UuYm9keSA9PT0gZXhwZWN0ZWRfYm9k
eSwgImZvcm0gZGF0YSByZXNwb25zZSBjb250ZW50IGlzIGFzIGV4cGVjdGVkIik7CisgICAgICAg
IGFzc2VydF9lcXVhbHMocmVzcG9uc2UuYm9keSwgZXhwZWN0ZWRfYm9keSwgImZvcm0gZGF0YSBy
ZXNwb25zZSBjb250ZW50IGlzIGFzIGV4cGVjdGVkIik7CiAgICAgICB9KTsKIH0KIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMt
ZXJyb3Itd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVl
c3QteGhyLXN5bmMtZXJyb3Itd29ya2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI4ZDNkYjk5YmNjODExZjk1
NjIwNzM1Yzg4N2E5ZDkxZTRkYTJjMmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci13b3JrZXIuanMKQEAg
LTAsMCArMSwxOSBAQAorInVzZSBzdHJpY3QiOworCitzZWxmLm9uZmV0Y2ggPSBldmVudCA9PiB7
CisgIGlmIChldmVudC5yZXF1ZXN0LnVybC5lbmRzV2l0aCgibm9uLWV4aXN0ZW50LXN0cmVhbS0x
LnR4dCIpKSB7CisgICAgY29uc3QgcnMxID0gbmV3IFJlYWRhYmxlU3RyZWFtKCk7CisgICAgZXZl
bnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKHJzMSkpOworICAgIHJzMS5jYW5jZWwoMSk7Cisg
IH0gZWxzZSBpZiAoZXZlbnQucmVxdWVzdC51cmwuZW5kc1dpdGgoIm5vbi1leGlzdGVudC1zdHJl
YW0tMi50eHQiKSkgeworICAgIGNvbnN0IHJzMiA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7CisgICAg
ICBzdGFydChjb250cm9sbGVyKSB7IGNvbnRyb2xsZXIuZXJyb3IoMSkgfQorICAgIH0pOworICAg
IGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZShyczIpKTsKKyAgfSBlbHNlIGlmIChldmVu
dC5yZXF1ZXN0LnVybC5lbmRzV2l0aCgibm9uLWV4aXN0ZW50LXN0cmVhbS0zLnR4dCIpKSB7Cisg
ICAgY29uc3QgcnMzID0gbmV3IFJlYWRhYmxlU3RyZWFtKHsKKyAgICAgIHB1bGwoY29udHJvbGxl
cikgeyBjb250cm9sbGVyLmVycm9yKDEpIH0KKyAgICB9KTsKKyAgICBldmVudC5yZXNwb25kV2l0
aChuZXcgUmVzcG9uc2UocnMzKSk7CisgIH0KK307CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXdvcmtlci5qcwppbmRleCA5MWIzYWJi
MTRkOWM2NzVhMGJkODg2MzQ0YTI2NDgyZjM2YmI1NzcwLi40ZTQyODM3NGJjMjI3MTkxYzFiZjdh
YzIzZDI3YjgyMGFhNTZkZDllIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtcmVxdWVzdC14aHItd29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci13b3JrZXIuanMKQEAgLTEsNiArMSw2IEBACiBzZWxm
LmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICB2YXIgdXJs
ID0gZXZlbnQucmVxdWVzdC51cmw7Ci0gICAgaWYgKHVybC5pbmRleE9mKCdkdW1teT90ZXN0Jykg
PT0gLTEpIHsKKyAgICBpZiAodXJsLmluZGV4T2YoJ3NhbXBsZT90ZXN0JykgPT0gLTEpIHsKICAg
ICAgIHJldHVybjsKICAgICB9CiAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFByb21pc2UoZnVu
Y3Rpb24ocmVzb2x2ZSkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2ZldGNoLXJlc3BvbnNlLXhoci1pZnJhbWUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1yZXNwb25zZS14aHItaWZyYW1lLmh0dHBzLmh0bWwKaW5kZXggNjEy
YzkzNDFlYjc4NTc2OGEzZDRmOWFkNWJhMjkxMGZjOTBmNjc3ZC4uYzI2ZWViZWU0OWQ4M2U3Njhi
OWU1OGY1NWQ2ZTQ2ODdhMmM1YzExMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci1pZnJhbWUuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVzcG9uc2UteGhyLWlmcmFtZS5odHRwcy5odG1s
CkBAIC0xMyw3ICsxMyw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKG1ldGhvZCwgZGF0YSkgewogICAg
ICAgICByZWplY3QoJ1hIUiBzaG91bGQgc3VjY2VlZC4nKTsKICAgICAgIH07CiAgICAgICB4aHIu
cmVzcG9uc2VUeXBlID0gJ3RleHQnOwotICAgICAgeGhyLm9wZW4obWV0aG9kLCAnLi9kdW1teT90
ZXN0JywgdHJ1ZSk7CisgICAgICB4aHIub3BlbihtZXRob2QsICcuL3NhbXBsZT90ZXN0JywgdHJ1
ZSk7CiAgICAgICB4aHIuc2VuZChkYXRhKTsKICAgICB9KTsKIH0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXNwb25zZS14aHItd29ya2VyLmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci13b3JrZXIuanMKaW5k
ZXggNDY1ZmJjOTFiYWE3MTY2OWNhOWMzZjMyMTE3ZWU4MzRkZTgyOTRkMC4uMDMwMWIxMmMxOGE1
NGIyYzI0ZWM0MzBjNDY5MzkwNTQ1YWJkN2E1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci13b3JrZXIuanMKQEAgLTEsNiAr
MSw2IEBACiBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsK
ICAgICB2YXIgdXJsID0gZXZlbnQucmVxdWVzdC51cmw7Ci0gICAgaWYgKHVybC5pbmRleE9mKCdk
dW1teT90ZXN0JykgPT0gLTEpIHsKKyAgICBpZiAodXJsLmluZGV4T2YoJ3NhbXBsZT90ZXN0Jykg
PT0gLTEpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3
IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ZldGNoLXJld3JpdGUtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ZldGNoLXJld3JpdGUtd29ya2VyLmpzCmluZGV4IGYyZDQ5ZTI3MDZhNDBmYjU1
ZjA5OGY1ZTMzZGM2YzE3YTkzYmYxY2IuLjQ2MzFlODNlMGNlYWFiNTA5MmE5Yjg0ZGNiYjQyOWE5
OTFjOTE0NDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1y
ZXdyaXRlLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gt
cmV3cml0ZS13b3JrZXIuanMKQEAgLTEzMyw2ICsxMzMsMTAgQEAgc2VsZi5hZGRFdmVudExpc3Rl
bmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
fQogCisgICAgICAgICAgaWYgKHBhcmFtc1snY2xvbmUnXSkgeworICAgICAgICAgICAgcmVzcG9u
c2UgPSByZXNwb25zZS5jbG9uZSgpOworICAgICAgICAgIH0KKwogICAgICAgICAgIC8vIHxjYWNo
ZXwgbWVhbnMgdG8gYm91bmNlIHJlc3BvbnNlcyB0aHJvdWdoIENhY2hlIFN0b3JhZ2UgYW5kIGJh
Y2suCiAgICAgICAgICAgaWYgKHBhcmFtc1snY2FjaGUnXSkgewogICAgICAgICAgICAgdmFyIGNh
Y2hlTmFtZSA9ICJjYWNoZWQtZmV0Y2hlcy0iICsgcGVyZm9ybWFuY2Uubm93KCkgKyAiLSIgKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1wcm90b3R5
cGUtc2VydmljZXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbW11dGFi
bGUtcHJvdG90eXBlLXNlcnZpY2V3b3JrZXIuanMKaW5kZXggMzQ2Yjk5OGNlYWMwMDRiOTNhM2Zj
NTA1ODI4YTI2MTRmYmVmMTU2MC4uZDhhOTRhZDQ2YmVmYjA4NTc5MWQxM2YyMWU2ODcwZTA5Mjg0
YWJlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1w
cm90b3R5cGUtc2VydmljZXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2aWNld29ya2VyLmpzCkBAIC0yLDkgKzIsOSBAQCBm
dW5jdGlvbiBwcm90b3R5cGVDaGFpbihnbG9iYWwpIHsKICAgbGV0IHJlc3VsdCA9IFtdOwogICB3
aGlsZSAoZ2xvYmFsICE9PSBudWxsKSB7CiAgICAgbGV0IHRocm93biA9IGZhbHNlOwotICAgIGxl
dCBuZXh0ID0gZ2xvYmFsLl9fcHJvdG9fXzsKKyAgICBsZXQgbmV4dCA9IE9iamVjdC5nZXRQcm90
b3R5cGVPZihnbG9iYWwpOwogICAgIHRyeSB7Ci0gICAgICBnbG9iYWwuX19wcm90b19fID0ge307
CisgICAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoZ2xvYmFsLCB7fSk7CiAgICAgICByZXN1bHQu
cHVzaCgnbXV0YWJsZScpOwogICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgIHJlc3VsdC5wdXNoKCdp
bW11dGFibGUnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBv
cnQtZWNoby1jb29raWUtd29ya2VyLW1vZHVsZS5weSBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9pbXBvcnQtZWNoby1jb29raWUtd29ya2VyLW1vZHVsZS5weQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZjBi
NjhlNWEzYWFlNjc3ZmYwMTgxZThjNTM2ZGFiODhkNjVhODM4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1lY2hvLWNvb2tpZS13b3JrZXItbW9k
dWxlLnB5CkBAIC0wLDAgKzEsNiBAQAorZGVmIG1haW4ocmVxdWVzdCwgcmVzcG9uc2UpOgorICAj
IFRoaXMgc2NyaXB0IGdlbmVyYXRlcyBhIHdvcmtlciBzY3JpcHQgZm9yIHN0YXRpYyBpbXBvcnRz
IGZyb20gbW9kdWxlCisgICMgc2VydmljZSB3b3JrZXJzLgorICBoZWFkZXJzID0gWyhiJ0NvbnRl
bnQtVHlwZScsIGIndGV4dC9qYXZhc2NyaXB0JyldCisgIGJvZHkgPSBiImltcG9ydCAnLi9lY2hv
LWNvb2tpZS13b3JrZXIucHk/a2V5PSVzJyIgJSByZXF1ZXN0LkdFVFtiJ2tleSddCisgIHJldHVy
biBoZWFkZXJzLCBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
aW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLXdvcmtlci5zdWIuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLXdvcmtlci5zdWIuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYjQzMjg1NGRiOGJjN2Y4MjkyYzQzNDM0ZDhjMjRhM2ZmZTk3ZGVjMAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0
cy1jcm9zcy1vcmlnaW4td29ya2VyLnN1Yi5qcwpAQCAtMCwwICsxIEBACitpbXBvcnRTY3JpcHRz
KCdodHRwczovL3t7ZG9tYWluc1t3d3cxXX19Ont7cG9ydHNbaHR0cHNdWzBdfX0vc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy12ZXJzaW9uLnB5
Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1ibG9i
dHlwZS1pZnJhbWUuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZh
bGlkLWJsb2J0eXBlLWlmcmFtZS5odHRwcy5odG1sCmluZGV4IDFlNmNhY2I1NWQ3ZjgwZjZjNzFl
M2JlNTEzYzEwYTc1NmQ2NjU0M2IuLjA0YTljYjUxNWUwOTIxNTNlZTAxNmZhOWEzZTNkYTYzNjM1
YzU1YjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJs
b2J0eXBlLWlmcmFtZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9pbnZhbGlkLWJsb2J0eXBlLWlmcmFtZS5odHRwcy5odG1sCkBAIC0xNCw3ICsxNCw3IEBAIGZ1
bmN0aW9uIHhocl9zZW5kKG1ldGhvZCwgZGF0YSkgewogICAgICAgICByZWplY3QoJ1hIUiBtdXN0
IHN1Y2NlZWQuJyk7CiAgICAgICB9OwogICAgICAgeGhyLnJlc3BvbnNlVHlwZSA9ICd0ZXh0JzsK
LSAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4vZHVtbXk/dGVzdCcsIHRydWUpOworICAgICAgeGhy
Lm9wZW4obWV0aG9kLCAnLi9zYW1wbGU/dGVzdCcsIHRydWUpOwogICAgICAgeGhyLnNlbmQoZGF0
YSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
aW52YWxpZC1ibG9idHlwZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
aW52YWxpZC1ibG9idHlwZS13b3JrZXIuanMKaW5kZXggOTNmNDk2ZWY0NGU3MTNjYTI0NmZiODJl
MWNiZjcxMzkxMTQzYmNlZi4uODY1ZGMzMGQ0MjgyMjhkOWZjNWMwMTYxZDY2OTM2MGY4NGRmNzY2
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxvYnR5
cGUtd29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJs
b2J0eXBlLXdvcmtlci5qcwpAQCAtMSw2ICsxLDYgQEAKIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcign
ZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAgIHZhciB1cmwgPSBldmVudC5yZXF1ZXN0LnVy
bDsKLSAgICBpZiAodXJsLmluZGV4T2YoJ2R1bW15P3Rlc3QnKSA9PSAtMSkgeworICAgIGlmICh1
cmwuaW5kZXhPZignc2FtcGxlP3Rlc3QnKSA9PSAtMSkgewogICAgICAgcmV0dXJuOwogICAgIH0K
ICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKSB7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItaWZy
YW1lLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1oZWFk
ZXItaWZyYW1lLmh0dHBzLmh0bWwKaW5kZXggODA1MzFiNzlkYjk1NzIzZjg4MGQ2YmI4ZjM2MzMy
ZjFkNDFhYzNkZS4uOGYwZTZiYWNhMTc1N2NmYzE4YzkyOTQzOGI3Mjc1MDkyMDMwMzM0MyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLWlmcmFt
ZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWhl
YWRlci1pZnJhbWUuaHR0cHMuaHRtbApAQCAtMTEsNyArMTEsNyBAQCBmdW5jdGlvbiB4aHJfc2Vu
ZChtZXRob2QsIGRhdGEpIHsKICAgICAgICAgcmVzb2x2ZSgpOwogICAgICAgfTsKICAgICAgIHho
ci5yZXNwb25zZVR5cGUgPSAndGV4dCc7Ci0gICAgICB4aHIub3BlbihtZXRob2QsICcuL2R1bW15
P3Rlc3QnLCB0cnVlKTsKKyAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4vc2FtcGxlP3Rlc3QnLCB0
cnVlKTsKICAgICAgIHhoci5zZW5kKGRhdGEpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLXdvcmtlci5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWhlYWRlci13b3JrZXIuanMKaW5kZXggMzFl
N2YyOWQwNmZkN2U0ZjJkMzg1NjAzMzllYzQ0NDVlZWM1MTMyOC4uODUwODc0YjgxMTZkYWJjMmE4
NmRlOWMxODNjYTQzMGIyYTQxNWYwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ludmFsaWQtaGVhZGVyLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItd29ya2VyLmpzCkBAIC0xLDYgKzEsNiBAQAogc2VsZi5h
ZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgdmFyIHVybCA9
IGV2ZW50LnJlcXVlc3QudXJsOwotICAgIGlmICh1cmwuaW5kZXhPZignZHVtbXk/dGVzdCcpID09
IC0xKSB7CisgICAgaWYgKHVybC5pbmRleE9mKCdzYW1wbGU/dGVzdCcpID09IC0xKSB7CiAgICAg
ICByZXR1cm47CiAgICAgfQogICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBQcm9taXNlKGZ1bmN0
aW9uKHJlc29sdmUpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9p
c28tbGF0aW4xLWhlYWRlci1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9pc28tbGF0aW4xLWhlYWRlci1pZnJhbWUuaHRtbAppbmRleCA5MGUzZjY5OGNmYTZiYjZkMTJl
ZTgxODQ5NTNiNGY3ZmJkZTcxOWU0Li5jZjJmYThkMTRmN2M2MDg5ZDExOTc5ZTRiZTQwOTRmNGU3
ZmJhYjI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGlu
MS1oZWFkZXItaWZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lz
by1sYXRpbjEtaGVhZGVyLWlmcmFtZS5odG1sCkBAIC05LDcgKzksNyBAQCBmdW5jdGlvbiB4aHJf
c2VuZChtZXRob2QsIGRhdGEpIHsKICAgICAgICAgcmVqZWN0KCdYSFIgbXVzdCBzdWNjZWVkLicp
OwogICAgICAgfTsKICAgICAgIHhoci5yZXNwb25zZVR5cGUgPSAndGV4dCc7Ci0gICAgICB4aHIu
b3BlbihtZXRob2QsICcuL2R1bW15P3Rlc3QnLCB0cnVlKTsKKyAgICAgIHhoci5vcGVuKG1ldGhv
ZCwgJy4vc2FtcGxlP3Rlc3QnLCB0cnVlKTsKICAgICAgIHhoci5zZW5kKGRhdGEpOwogICAgIH0p
OwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEt
aGVhZGVyLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4x
LWhlYWRlci13b3JrZXIuanMKaW5kZXggM2FiNWM3ZTczMTg2YjQ5ZDg4ZWFhZTk3MWNlOGMyYTZi
ZWY1ZDQzMS4uZDllY2NhMjc3YjNmYWU1YmM0Njk4ZmY0NjdhODU3MTRiZTdiMTVhMyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEtaGVhZGVyLXdvcmtl
ci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFkZXIt
d29ya2VyLmpzCkBAIC0xLDYgKzEsNiBAQAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcs
IGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICAg
IGlmICh1cmwuaW5kZXhPZignZHVtbXk/dGVzdCcpID09IC0xKSB7CisgICAgaWYgKHVybC5pbmRl
eE9mKCdzYW1wbGU/dGVzdCcpID09IC0xKSB7CiAgICAgICByZXR1cm47CiAgICAgfQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29u
dHJvbGxlci1mcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2xvY2FsLXVy
bC1pbmhlcml0LWNvbnRyb2xsZXItZnJhbWUuaHRtbAppbmRleCBiMzMxZjg4ZDQ3MTc5ZWYxNWQz
ZjI2MzRmODRkNmEyNzkxMDAxOTM0Li41NTIwYzNhMzFiZjcwYTg4ZWM3NDQxZjI5Y2M3ZDVhYjM0
MDEzMzJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwtdXJs
LWluaGVyaXQtY29udHJvbGxlci1mcmFtZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1jb250cm9sbGVyLWZyYW1lLmh0bWwKQEAgLTIsNyAr
Miw3IEBACiA8aHRtbD4KIDxzY3JpcHQ+CiAKLWNvbnN0IGZldGNoVVJMID0gbmV3IFVSTCgnZHVt
bXkudHh0Jywgd2luZG93LmxvY2F0aW9uKS5ocmVmOworY29uc3QgZmV0Y2hVUkwgPSBuZXcgVVJM
KCdzYW1wbGUudHh0Jywgd2luZG93LmxvY2F0aW9uKS5ocmVmOwogCiBjb25zdCBmcmFtZUNvbnRy
b2xsZXJUZXh0ID0KIGA8c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2xvY2FsLXVybC1pbmhlcml0LWNvbnRyb2xsZXItd29ya2VyLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2xvY2FsLXVybC1pbmhlcml0LWNvbnRyb2xsZXItd29ya2VyLmpz
CmluZGV4IDlkODk1NWYxMTFmNmYzNjI0ZGE4YTMxZTAzMzU0NGU3MzhiYTI3NTEuLjRiN2FhZDBm
NThhODUwZjBlOWY2NzY1Yjg0YWUwOGNjY2M2MmY2ZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1jb250cm9sbGVyLXdvcmtlci5qcwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29udHJv
bGxlci13b3JrZXIuanMKQEAgLTEsNSArMSw1IEBACiBhZGRFdmVudExpc3RlbmVyKCdmZXRjaCcs
IGV2dCA9PiB7Ci0gIGlmIChldnQucmVxdWVzdC51cmwuaW5jbHVkZXMoJ2R1bW15JykpIHsKKyAg
aWYgKGV2dC5yZXF1ZXN0LnVybC5pbmNsdWRlcygnc2FtcGxlJykpIHsKICAgICBldnQucmVzcG9u
ZFdpdGgobmV3IFJlc3BvbnNlKCdpbnRlcmNlcHRlZCcpKTsKICAgfQogfSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlci1jcmVh
dGVkLWZyb20td29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVk
LWJsb2ItdXJsLXdvcmtlci1jcmVhdGVkLWZyb20td29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmMw
NDhlMjg4ZTkwM2U2YzU1OGM1NTE4ZDEzM2YyYzJlYzk2MjIzZQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0
ZWQtZnJvbS13b3JrZXIuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxz
Y3JpcHQ+Citjb25zdCBiYXNlTG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247Citjb25zdCB3b3Jr
ZXJVcmwgPSBuZXcgVVJMKCdjcmVhdGUtYmxvYi11cmwtd29ya2VyLmpzJywgYmFzZUxvY2F0aW9u
KS5ocmVmOworY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcih3b3JrZXJVcmwpOworCitmdW5jdGlv
biBmZXRjaF9pbl93b3JrZXIodXJsKSB7CisgIGNvbnN0IHJlc291cmNlVXJsID0gbmV3IFVSTCh1
cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9
PiB7CisgICAgd29ya2VyLm9ubWVzc2FnZSA9IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShl
dmVudC5kYXRhKTsKKyAgICB9OworICAgIHdvcmtlci5wb3N0TWVzc2FnZShyZXNvdXJjZVVybCk7
CisgIH0pOworfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYwZWFmY2Qz
ZTAxYzNmMTg1N2VlZTdmY2VkNzhhM2E0OTRhOGFmYjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHRtbApAQCAt
MCwwICsxLDM4IEBACis8IWRvY3R5cGUgaHRtbD4KKzxzY3JpcHQ+Citjb25zdCBiYXNlTG9jYXRp
b24gPSB3aW5kb3cubG9jYXRpb247Citjb25zdCBwYXJlbnRXb3JrZXJTY3JpcHQgPSBgCisgIGNv
bnN0IGNoaWxkV29ya2VyU2NyaXB0ID0gJ3NlbGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsn
ICsKKyAgICAnICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGUuZGF0YSk7JyArCisgICAg
JyAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTsnICsKKyAgICAnICBzZWxmLnBv
c3RNZXNzYWdlKHRleHQpOycgKworICAgICd9Oyc7CisgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihb
Y2hpbGRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworICBjb25z
dCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKKyAgY29uc3QgY2hpbGRXb3Jr
ZXIgPSBuZXcgV29ya2VyKGJsb2JVcmwpOworCisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZy
b20gdGhlIHBhcmVudCBmcmFtZSwgc2VuZHMgYSByZXNvdXJjZSB1cmwgdG8gdGhlCisgIC8vIGNo
aWxkIHdvcmtlci4KKyAgc2VsZi5vbm1lc3NhZ2UgPSAoZSkgPT4geworICAgIGNoaWxkV29ya2Vy
LnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07CisgIC8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZy
b20gdGhlIGNoaWxkIHdvcmtlciwgc2VuZHMgYSBjb250ZW50IG9mIGZldGNoKCkgdG8KKyAgLy8g
dGhlIHBhcmVudCBmcmFtZS4KKyAgY2hpbGRXb3JrZXIub25tZXNzYWdlID0gKGUpID0+IHsKKyAg
ICBzZWxmLnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07CitgOworY29uc3QgYmxvYiA9IG5ldyBC
bG9iKFtwYXJlbnRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOwor
Y29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7Citjb25zdCB3b3JrZXIg
PSBuZXcgV29ya2VyKGJsb2JVcmwpOworCitmdW5jdGlvbiBmZXRjaF9pbl93b3JrZXIodXJsKSB7
CisgIGNvbnN0IHJlc291cmNlVXJsID0gbmV3IFVSTCh1cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsK
KyAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CisgICAgd29ya2VyLm9ubWVzc2Fn
ZSA9IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICAg
IHdvcmtlci5wb3N0TWVzc2FnZShyZXNvdXJjZVVybCk7CisgIH0pOworfQorPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLXdvcmtlci1jcmVh
dGVkLWZyb20tYmxvYi11cmwtd29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvbmVzdGVkLXdvcmtlci1jcmVhdGVkLWZyb20tYmxvYi11cmwtd29ya2VyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uM2ZhZDJjOTIyOGNlYjE1NzNhMDlhMThjYmE0ODBmZGQ2NzQ3Y2RjNAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0
ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRtbApAQCAtMCwwICsxLDMzIEBACis8IWRvY3R5cGUg
aHRtbD4KKzxzY3JpcHQ+Citjb25zdCBiYXNlTG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247Citj
b25zdCBwYXJlbnRXb3JrZXJTY3JpcHQgPSBgCisgIGNvbnN0IHdvcmtlclVybCA9CisgICAgbmV3
IFVSTCgncG9zdG1lc3NhZ2UtZmV0Y2hlZC10ZXh0LmpzJywgJyR7YmFzZUxvY2F0aW9ufScpLmhy
ZWY7CisgIGNvbnN0IGNoaWxkV29ya2VyID0gbmV3IFdvcmtlcih3b3JrZXJVcmwpOworCisgIC8v
IFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhlIHBhcmVudCBmcmFtZSwgc2VuZHMgYSByZXNv
dXJjZSB1cmwgdG8gdGhlCisgIC8vIGNoaWxkIHdvcmtlci4KKyAgc2VsZi5vbm1lc3NhZ2UgPSAo
ZSkgPT4geworICAgIGNoaWxkV29ya2VyLnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07CisgIC8v
IFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZyb20gdGhlIGNoaWxkIHdvcmtlciwgc2VuZHMgYSBjb250
ZW50IG9mIGZldGNoKCkgdG8KKyAgLy8gdGhlIHBhcmVudCBmcmFtZS4KKyAgY2hpbGRXb3JrZXIu
b25tZXNzYWdlID0gKGUpID0+IHsKKyAgICBzZWxmLnBvc3RNZXNzYWdlKGUuZGF0YSk7CisgIH07
CitgOworY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtwYXJlbnRXb3JrZXJTY3JpcHRdLCB7IHR5cGU6
ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RV
UkwoYmxvYik7Citjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKGJsb2JVcmwpOworCitmdW5jdGlv
biBmZXRjaF9pbl93b3JrZXIodXJsKSB7CisgIGNvbnN0IHJlc291cmNlVXJsID0gbmV3IFVSTCh1
cmwsIGJhc2VMb2NhdGlvbikuaHJlZjsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9
PiB7CisgICAgd29ya2VyLm9ubWVzc2FnZSA9IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShl
dmVudC5kYXRhKTsKKyAgICB9OworICAgIHdvcmtlci5wb3N0TWVzc2FnZShyZXNvdXJjZVVybCk7
CisgIH0pOworfQorPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
bm8tZHluYW1pYy1pbXBvcnQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWNlZGQ2YzVkNzVjN2Q2Njc1NDNhMmNi
ZDJlYTg0OTE5NGQzMWJjOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9uby1keW5hbWljLWltcG9ydC5qcwpAQCAtMCwwICsxLDE4IEBACisvKiogQHR5cGUg
e1tuYW1lOiBzdHJpbmcsIHVybDogc3RyaW5nXVtdfSAqLworY29uc3QgaW1wb3J0VXJsVGVzdHMg
PSBbCisgIFsiTW9kdWxlIFVSTCIsICIuL2Jhc2ljLW1vZHVsZS5qcyJdLAorICAvLyBJbiBuby1k
eW5hbWljLWltcG9ydC1pbi1tb2R1bGUuYW55LmpzLCB0aGlzIG1vZHVsZSBpcyBhbHNvIHN0YXRp
Y2FsbHkgaW1wb3J0ZWQKKyAgWyJBbm90aGVyIG1vZHVsZSBVUkwiLCAiLi9iYXNpYy1tb2R1bGUt
Mi5qcyJdLAorICBbCisgICAgIk1vZHVsZSBkYXRhOiBVUkwiLAorICAgICJkYXRhOnRleHQvamF2
YXNjcmlwdDtjaGFyc2V0PXV0Zi04LCIgKworICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGBleHBv
cnQgZGVmYXVsdCAnaGVsbG8hJztgKSwKKyAgXSwKK107CisKK2ZvciAoY29uc3QgW25hbWUsIHVy
bF0gb2YgaW1wb3J0VXJsVGVzdHMpIHsKKyAgcHJvbWlzZV90ZXN0KAorICAgICh0KSA9PiBwcm9t
aXNlX3JlamVjdHNfanModCwgVHlwZUVycm9yLCBpbXBvcnQodXJsKSwgIkltcG9ydCBtdXN0IHJl
amVjdCIpLAorICAgIG5hbWUKKyAgKTsKK30KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9wZXJmb3JtYW5jZS10aW1lbGluZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvcGVyZm9ybWFuY2UtdGltZWxpbmUtd29ya2VyLmpzCmluZGV4IGNhYzMy
N2MzNGJmOWRmMTg0OTEzYzU2MWI1ODRiMDM4ZjM1MDRjOTQuLjZjNmRmY2JkMjgxMTczNTQ5NTM1
YWY5Y2JhYjRmNDYxYjFlMmIyMWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9wZXJmb3JtYW5jZS10aW1lbGluZS13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3BlcmZvcm1hbmNlLXRpbWVsaW5lLXdvcmtlci5qcwpAQCAtMzAsMTIgKzMw
LDEyIEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0ZXN0KSB7CiAgIH0sICdVc2VyIFRpbWluZycp
OwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odGVzdCkgewotICAgIHJldHVybiBmZXRjaCgnZHVt
bXkudHh0JykKKyAgICByZXR1cm4gZmV0Y2goJ3NhbXBsZS50eHQnKQogICAgICAgLnRoZW4oZnVu
Y3Rpb24ocmVzcCkgewogICAgICAgICAgIHJldHVybiByZXNwLnRleHQoKTsKICAgICAgICAgfSkK
ICAgICAgIC50aGVuKGZ1bmN0aW9uKHRleHQpIHsKLSAgICAgICAgICB2YXIgZXhwZWN0ZWRSZXNv
dXJjZXMgPSBbJ3Rlc3RoYXJuZXNzLmpzJywgJ2R1bW15LnR4dCddOworICAgICAgICAgIHZhciBl
eHBlY3RlZFJlc291cmNlcyA9IFsndGVzdGhhcm5lc3MuanMnLCAnc2FtcGxlLnR4dCddOwogICAg
ICAgICAgIGFzc2VydF9lcXVhbHMocGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgncmVzb3Vy
Y2UnKS5sZW5ndGgsIGV4cGVjdGVkUmVzb3VyY2VzLmxlbmd0aCk7CiAgICAgICAgICAgZm9yICh2
YXIgaSA9IDA7IGkgPCBleHBlY3RlZFJlc291cmNlcy5sZW5ndGg7IGkrKykgewogICAgICAgICAg
ICAgICB2YXIgZW50cnkgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScp
W2ldOwpAQCAtNDksNyArNDksNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odGVzdCkgewogICAg
ICAgICAgICAgICAgIHJlc29sdmUoJ2J1ZmZlcmZ1bGwnKTsKICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICBwZXJmb3JtYW5jZS5zZXRSZXNvdXJjZVRpbWluZ0J1ZmZlclNpemUoZXhwZWN0
ZWRSZXNvdXJjZXMubGVuZ3RoKTsKLSAgICAgICAgICAgICAgZmV0Y2goJ2R1bW15LnR4dCcpOwor
ICAgICAgICAgICAgICBmZXRjaCgnc2FtcGxlLnR4dCcpOwogICAgICAgICAgIH0pOwogICAgICAg
ICB9KQogICAgICAgLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZmV0Y2hlZC10ZXh0LmpzIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWZldGNoZWQtdGV4dC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi45ZmM2NzE3MWQwNWRkMjhkNjMxN2U5ZTJhYjk4NmIwYjY4YTdmYzE1Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWZldGNoZWQt
dGV4dC5qcwpAQCAtMCwwICsxLDUgQEAKK3NlbGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsK
KyAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChlLmRhdGEpOworICBjb25zdCB0ZXh0ID0g
YXdhaXQgcmVzcG9uc2UudGV4dCgpOworICBzZWxmLnBvc3RNZXNzYWdlKHRleHQpOworfTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWRpcmVjdC13b3JrZXIuanMg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVkaXJlY3Qtd29ya2VyLmpzCmluZGV4IGRk
Y2MyY2Y1NDc4OTQyMjkyZGM4YzVlMzBkMTU2ZGM0Mjg4NjM2NWUuLjgyZTIxZmMyNmZkYjk0MjM2
MDIwZGY5NjhlYjlmYTNiMjg2ZDllMTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9yZWRpcmVjdC13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3JlZGlyZWN0LXdvcmtlci5qcwpAQCAtMTE3LDYgKzExNywxMyBAQCBzZWxmLmFkZEV2ZW50
TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICBldmVudC5yZXNwb25kV2l0
aCh3YWl0VW50aWxQcm9taXNlLnRoZW4oYXN5bmMgKCkgPT4gewogICAgICAgaWYgKHBhcmFtc1sn
c3cnXSA9PSAnZ2VuJykgewogICAgICAgICByZXR1cm4gUmVzcG9uc2UucmVkaXJlY3QocGFyYW1z
Wyd1cmwnXSk7CisgICAgICB9IGVsc2UgaWYgKHBhcmFtc1snc3cnXSA9PSAnZ2VuLW1hbnVhbCcp
IHsKKyAgICAgICAgLy8gTm90ZSB0aGlzIGRpZmZlcnMgZnJvbSBSZXNwb25zZS5yZWRpcmVjdCgp
IGluIHRoYXQgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgLy8gcHJlc2VydmVkLgorICAgICAg
ICByZXR1cm4gbmV3IFJlc3BvbnNlKCIiLCB7CisgICAgICAgICAgc3RhdHVzOiAzMDEsCisgICAg
ICAgICAgaGVhZGVyczoge2xvY2F0aW9uOiBwYXJhbXNbJ3VybCddfSwKKyAgICAgICAgfSk7CiAg
ICAgICB9IGVsc2UgaWYgKHBhcmFtc1snc3cnXSA9PSAnZmV0Y2gnKSB7CiAgICAgICAgIHJldHVy
biBmZXRjaChldmVudC5yZXF1ZXN0KTsKICAgICAgIH0gZWxzZSBpZiAocGFyYW1zWydzdyddID09
ICdmZXRjaC11cmwnKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
cmVnaXN0cmF0aW9uLXRlc3RzLWJhc2ljLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3JlZ2lzdHJhdGlvbi10ZXN0cy1iYXNpYy5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZWVkYjk4MGEwZmM0ZDFkMjQ0MTUzYWZkNjM1N2E1NjlhZDk4ZDE4Ny4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLWJhc2ljLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNDQg
KzAsMCBAQAotLy8gQmFzaWMgcmVnaXN0cmF0aW9uIHRlc3RzIHRoYXQgc3VjY2VlZC4gV2UgZG9u
J3Qgd2FudCB0b28gbWFueSBzdWNjZXNzZnVsCi0vLyByZWdpc3RyYXRpb24gdGVzdHMgaW4gdGhl
IHNhbWUgZmlsZSBzaW5jZSBzdGFydGluZyBhIHNlcnZpY2Ugd29ya2VyIGNhbiBiZQotLy8gc2xv
dy4KLWZ1bmN0aW9uIHJlZ2lzdHJhdGlvbl90ZXN0c19iYXNpYyhyZWdpc3Rlcl9tZXRob2QsIGNo
ZWNrX2Vycm9yX3R5cGVzKSB7Ci0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgICB2
YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24td29ya2VyLmpzJzsKLSAgICAgIHZh
ciBzY29wZSA9ICdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uL25vcm1hbCc7Ci0gICAgICByZXR1cm4g
cmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pCi0gICAgICAgIC50aGVuKGZ1
bmN0aW9uKHJlZ2lzdHJhdGlvbikgewotICAgICAgICAgICAgYXNzZXJ0X3RydWUoCi0gICAgICAg
ICAgICAgIHJlZ2lzdHJhdGlvbiBpbnN0YW5jZW9mIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24s
Ci0gICAgICAgICAgICAgICdTdWNjZXNzZnVsbHkgcmVnaXN0ZXJlZC4nKTsKLSAgICAgICAgICAg
IHJldHVybiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpOwotICAgICAgICAgIH0pOwotICAgIH0s
ICdSZWdpc3RlcmluZyBub3JtYWwgc2NvcGUnKTsKLQotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dCkgewotICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXdvcmtlci5q
cyc7Ci0gICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi9zY29wZS13aXRo
LWZyYWdtZW50I3JlZic7Ci0gICAgICByZXR1cm4gcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Nj
b3BlOiBzY29wZX0pCi0gICAgICAgIC50aGVuKGZ1bmN0aW9uKHJlZ2lzdHJhdGlvbikgewotICAg
ICAgICAgICAgYXNzZXJ0X3RydWUoCi0gICAgICAgICAgICAgIHJlZ2lzdHJhdGlvbiBpbnN0YW5j
ZW9mIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24sCi0gICAgICAgICAgICAgICdTdWNjZXNzZnVs
bHkgcmVnaXN0ZXJlZC4nKTsKLSAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAg
ICAgIHJlZ2lzdHJhdGlvbi5zY29wZSwKLSAgICAgICAgICAgICAgbm9ybWFsaXplVVJMKCdyZXNv
dXJjZXMvcmVnaXN0cmF0aW9uL3Njb3BlLXdpdGgtZnJhZ21lbnQnKSwKLSAgICAgICAgICAgICAg
J0EgZnJhZ21lbnQgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBzY29wZScpCi0gICAgICAgICAgICBy
ZXR1cm4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKTsKLSAgICAgICAgICB9KTsKLSAgICB9LCAn
UmVnaXN0ZXJpbmcgc2NvcGUgd2l0aCBmcmFnbWVudCcpOwotCi0gIHByb21pc2VfdGVzdChmdW5j
dGlvbih0KSB7Ci0gICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24td29y
a2VyLmpzJzsKLSAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvJzsKLSAgICAgIHJldHVybiBy
ZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSkKLSAgICAgICAgLnRoZW4oZnVu
Y3Rpb24ocmVnaXN0cmF0aW9uKSB7Ci0gICAgICAgICAgICBhc3NlcnRfdHJ1ZSgKLSAgICAgICAg
ICAgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwK
LSAgICAgICAgICAgICAgJ1N1Y2Nlc3NmdWxseSByZWdpc3RlcmVkLicpOwotICAgICAgICAgICAg
cmV0dXJuIHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCk7Ci0gICAgICAgICAgfSk7Ci0gICAgfSwg
J1JlZ2lzdGVyaW5nIHNhbWUgc2NvcGUgYXMgdGhlIHNjcmlwdCBkaXJlY3RvcnknKTsKLX0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3RyYXRpb24tdGVzdHMt
c2NyaXB0LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0
cy1zY3JpcHQuanMKaW5kZXggNGQwOGVmZDIxZjg3M2Y2ODk4ODA5MDRlODZhZmYyYzEyZmFkOTlh
NS4uZTViZGFmNDI5MWE0MjA1ZmI1MjA1ZWFiMGM3NmVjMGJjMDJiZGQ3YiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3Jp
cHQuanMKQEAgLTEsNiArMSw2IEBACiAvLyBSZWdpc3RyYXRpb24gdGVzdHMgdGhhdCBtb3N0bHkg
ZXhlcmNpc2UgdGhlIHNlcnZpY2Ugd29ya2VyIHNjcmlwdCBjb250ZW50cyBvcgogLy8gcmVzcG9u
c2UuCi1mdW5jdGlvbiByZWdpc3RyYXRpb25fdGVzdHNfc2NyaXB0KHJlZ2lzdGVyX21ldGhvZCkg
eworZnVuY3Rpb24gcmVnaXN0cmF0aW9uX3Rlc3RzX3NjcmlwdChyZWdpc3Rlcl9tZXRob2QsIHR5
cGUpIHsKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHZhciBzY3JpcHQgPSAn
cmVzb3VyY2VzL2ludmFsaWQtY2h1bmtlZC1lbmNvZGluZy5weSc7CiAgICAgICB2YXIgc2NvcGUg
PSAncmVzb3VyY2VzL3Njb3BlL2ludmFsaWQtY2h1bmtlZC1lbmNvZGluZy8nOwpAQCAtNDYsMTQg
KzQ2LDQ1IEBAIGZ1bmN0aW9uIHJlZ2lzdHJhdGlvbl90ZXN0c19zY3JpcHQocmVnaXN0ZXJfbWV0
aG9kKSB7CiAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgaW5jbHVkaW5nIHVuY2F1
Z2h0IGV4Y2VwdGlvbiBzaG91bGQgZmFpbC4nKTsKICAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0
IGluY2x1ZGluZyB1bmNhdWdodCBleGNlcHRpb24nKTsKIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgewotICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5w
eT9pbXBvcnQtbWFsZm9ybWVkLXNjcmlwdCc7Ci0gICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2Vz
L3Njb3BlL2ltcG9ydC1tYWxmb3JtZWQtc2NyaXB0JzsKLSAgICAgIHJldHVybiBwcm9taXNlX3Jl
amVjdHNfanModCwKLSAgICAgICAgICBUeXBlRXJyb3IsCi0gICAgICAgICAgcmVnaXN0ZXJfbWV0
aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAotICAgICAgICAgICdSZWdpc3RyYXRpb24gb2Yg
c2NyaXB0IGltcG9ydGluZyBtYWxmb3JtZWQgc2NyaXB0IHNob3VsZCBmYWlsLicpOwotICAgIH0s
ICdSZWdpc3RlcmluZyBzY3JpcHQgaW1wb3J0aW5nIG1hbGZvcm1lZCBzY3JpcHQnKTsKKyAgaWYg
KHR5cGUgPT09ICdjbGFzc2ljJykgeworICAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Cisg
ICAgICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIucHk/aW1wb3J0
LW1hbGZvcm1lZC1zY3JpcHQnOworICAgICAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3Bl
L2ltcG9ydC1tYWxmb3JtZWQtc2NyaXB0JzsKKyAgICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0
c19qcyh0LAorICAgICAgICAgICAgVHlwZUVycm9yLAorICAgICAgICAgICAgcmVnaXN0ZXJfbWV0
aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAorICAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBv
ZiBzY3JpcHQgaW1wb3J0aW5nIG1hbGZvcm1lZCBzY3JpcHQgc2hvdWxkIGZhaWwuJyk7CisgICAg
ICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IGltcG9ydGluZyBtYWxmb3JtZWQgc2NyaXB0Jyk7Cisg
IH0KKworICBpZiAodHlwZSA9PT0gJ21vZHVsZScpIHsKKyAgICBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgeworICAgICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQtd29ya2Vy
LnB5P3RvcC1sZXZlbC1hd2FpdCc7CisgICAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2Nv
cGUvdG9wLWxldmVsLWF3YWl0JzsKKyAgICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0
LAorICAgICAgICAgICAgVHlwZUVycm9yLAorICAgICAgICAgICAgcmVnaXN0ZXJfbWV0aG9kKHNj
cmlwdCwge3Njb3BlOiBzY29wZX0pLAorICAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3Jp
cHQgd2l0aCB0b3AtbGV2ZWwgYXdhaXQgc2hvdWxkIGZhaWwuJyk7CisgICAgICB9LCAnUmVnaXN0
ZXJpbmcgc2NyaXB0IHdpdGggdG9wLWxldmVsIGF3YWl0Jyk7CisKKyAgICBwcm9taXNlX3Rlc3Qo
ZnVuY3Rpb24odCkgeworICAgICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQt
d29ya2VyLnB5P2luc3RhbnRpYXRpb24tZXJyb3InOworICAgICAgICB2YXIgc2NvcGUgPSAncmVz
b3VyY2VzL3Njb3BlL2luc3RhbnRpYXRpb24tZXJyb3InOworICAgICAgICByZXR1cm4gcHJvbWlz
ZV9yZWplY3RzX2pzKHQsCisgICAgICAgICAgICBUeXBlRXJyb3IsCisgICAgICAgICAgICByZWdp
c3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSksCisgICAgICAgICAgICAnUmVnaXN0
cmF0aW9uIG9mIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yIHNob3VsZCBm
YWlsLicpOworICAgICAgfSwgJ1JlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50
aWF0aW9uIGVycm9yJyk7CisKKyAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgeworICAgICAg
ICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQtd29ya2VyLnB5P2luc3RhbnRpYXRp
b24tZXJyb3ItYW5kLXRvcC1sZXZlbC1hd2FpdCc7CisgICAgICAgIHZhciBzY29wZSA9ICdyZXNv
dXJjZXMvc2NvcGUvaW5zdGFudGlhdGlvbi1lcnJvci1hbmQtdG9wLWxldmVsLWF3YWl0JzsKKyAg
ICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0LAorICAgICAgICAgICAgVHlwZUVycm9y
LAorICAgICAgICAgICAgcmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAor
ICAgICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgd2l0aCBtb2R1bGUgaW5zdGFudGlh
dGlvbiBlcnJvciBhbmQgdG9wLWxldmVsIGF3YWl0IHNob3VsZCBmYWlsLicpOworICAgICAgfSwg
J1JlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yIGFuZCB0
b3AtbGV2ZWwgYXdhaXQnKTsKKyAgfQogCiAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAg
ICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9uby1zdWNoLXdvcmtlci5qcyc7CkBAIC02NCwx
NCArOTUsMTYgQEAgZnVuY3Rpb24gcmVnaXN0cmF0aW9uX3Rlc3RzX3NjcmlwdChyZWdpc3Rlcl9t
ZXRob2QpIHsKICAgICAgICAgICAnUmVnaXN0cmF0aW9uIG9mIG5vbi1leGlzdGVudCBzY3JpcHQg
c2hvdWxkIGZhaWwuJyk7CiAgICAgfSwgJ1JlZ2lzdGVyaW5nIG5vbi1leGlzdGVudCBzY3JpcHQn
KTsKIAotICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgdmFyIHNjcmlwdCA9ICdy
ZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5weT9pbXBvcnQtbm8tc3VjaC1zY3JpcHQnOwotICAg
ICAgdmFyIHNjb3BlID0gJ3Jlc291cmNlcy9zY29wZS9pbXBvcnQtbm8tc3VjaC1zY3JpcHQnOwot
ICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0LAotICAgICAgICAgIFR5cGVFcnJvciwK
LSAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSksCi0gICAg
ICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgaW1wb3J0aW5nIG5vbi1leGlzdGVudCBzY3Jp
cHQgc2hvdWxkIGZhaWwuJyk7Ci0gICAgfSwgJ1JlZ2lzdGVyaW5nIHNjcmlwdCBpbXBvcnRpbmcg
bm9uLWV4aXN0ZW50IHNjcmlwdCcpOworICBpZiAodHlwZSA9PT0gJ2NsYXNzaWMnKSB7CisgICAg
cHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJj
ZXMvbWFsZm9ybWVkLXdvcmtlci5weT9pbXBvcnQtbm8tc3VjaC1zY3JpcHQnOworICAgICAgICB2
YXIgc2NvcGUgPSAncmVzb3VyY2VzL3Njb3BlL2ltcG9ydC1uby1zdWNoLXNjcmlwdCc7CisgICAg
ICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNfanModCwKKyAgICAgICAgICAgIFR5cGVFcnJvciwK
KyAgICAgICAgICAgIHJlZ2lzdGVyX21ldGhvZChzY3JpcHQsIHtzY29wZTogc2NvcGV9KSwKKyAg
ICAgICAgICAgICdSZWdpc3RyYXRpb24gb2Ygc2NyaXB0IGltcG9ydGluZyBub24tZXhpc3RlbnQg
c2NyaXB0IHNob3VsZCBmYWlsLicpOworICAgICAgfSwgJ1JlZ2lzdGVyaW5nIHNjcmlwdCBpbXBv
cnRpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdCcpOworICB9CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0
aW9uKHQpIHsKICAgICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIu
cHk/Y2F1Z2h0LWV4Y2VwdGlvbic7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvcmVzb3VyY2UtdGltaW5nLWlmcmFtZS5zdWIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1Yi5odG1sCmluZGV4IDQxYmMyZTc3
YzFiNGFjYjNhNTdhODNmOWM5ODg5ZjRlOWM1MzgxMDMuLjM4NGMyOWI1MzZiZjFkYjgyOTUzMmI5
NDg1ZDQxMDIwZjg1YmVkOTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1Yi5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1Yi5odG1sCkBAIC0xLDYgKzEsNiBA
QAogPCFET0NUWVBFIGh0bWw+CiA8c2NyaXB0IHNyYz0iZW1wdHkuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9ImR1bW15LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJzYW1wbGUuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9InJlZGlyZWN0LnB5P1JlZGlyZWN0PWVtcHR5LmpzIj48L3Nj
cmlwdD4KIDxpbWcgc3JjPSJzcXVhcmUucG5nIj4KIDxpbWcgc3JjPSJodHRwczovL3t7aG9zdHNb
YWx0XVtdfX06e3twb3J0c1todHRwc11bMF19fS9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3NxdWFyZS5wbmciPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdvcmtlci5qcwppbmRleCA1YmM2ZWYzNDc0OGY2ZGU0
YjQxOGZkMTZkMjI2MWE0Mjc2NDgzYTZhLi5iNzRlOGNkNmEyMzZiZDdjNDQ3NzkxMGEwNjRmMzY2
ZTNkYTg0NzBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzb3Vy
Y2UtdGltaW5nLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVz
b3VyY2UtdGltaW5nLXdvcmtlci5qcwpAQCAtMSw1ICsxLDUgQEAKIHNlbGYuYWRkRXZlbnRMaXN0
ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewotICBpZiAoZXZlbnQucmVxdWVzdC51cmwu
aW5kZXhPZignZHVtbXkuanMnKSAhPSAtMSkgeworICBpZiAoZXZlbnQucmVxdWVzdC51cmwuaW5k
ZXhPZignc2FtcGxlLmpzJykgIT0gLTEpIHsKICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUHJv
bWlzZShyZXNvbHZlID0+IHsKICAgICAgIC8vIFNsaWdodGx5IGRlbGF5IHRoZSByZXNwb25zZSBz
byB3ZSBlbnN1cmUgd2UgZ2V0IGEgbm9uLXplcm8KICAgICAgIC8vIGR1cmF0aW9uLgpAQCAtNyw2
ICs3LDYgQEAgc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9uKGV2ZW50KSB7
CiAgICAgfSkpOwogICB9CiAgIGVsc2UgaWYgKGV2ZW50LnJlcXVlc3QudXJsLmluZGV4T2YoJ21p
c3NpbmcuanBnP1NXUmVzcG9uZHNXaXRoRmV0Y2gnKSAhPSAtMSkgewotICAgIGV2ZW50LnJlc3Bv
bmRXaXRoKGZldGNoKCdkdW1teS50eHQ/U1dGZXRjaGVkJykpOworICAgIGV2ZW50LnJlc3BvbmRX
aXRoKGZldGNoKCdzYW1wbGUudHh0P1NXRmV0Y2hlZCcpKTsKICAgfQogfSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9y
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjUxMjllZDUxZWE1NTBjMjEwYWJjNTNlMTEyMDllN2EzZTlkYzM2YjEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLXdv
cmtlci1pbnRlcmNlcHRvci5qcwpAQCAtMCwwICsxLDQ2IEBACitpbXBvcnRTY3JpcHRzKCcvY29t
bW9uL2dldC1ob3N0LWluZm8uc3ViLmpzJyk7CisKK2NvbnN0IHRleHQgPSAnd29ya2VyIGxvYWRp
bmcgaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXInOworY29uc3QgZGVkaWNhdGVkX3dvcmtl
cl9zY3JpcHQgPSBgcG9zdE1lc3NhZ2UoJyR7dGV4dH0nKTtgOworY29uc3Qgc2hhcmVkX3dvcmtl
cl9zY3JpcHQgPQorICAgIGBvbmNvbm5lY3QgPSBldnQgPT4gZXZ0LnBvcnRzWzBdLnBvc3RNZXNz
YWdlKCcke3RleHR9Jyk7YDsKKworc2VsZi5vbmZldGNoID0gZXZlbnQgPT4geworICBjb25zdCB1
cmwgPSBldmVudC5yZXF1ZXN0LnVybDsKKyAgY29uc3QgZGVzdGluYXRpb24gPSBldmVudC5yZXF1
ZXN0LmRlc3RpbmF0aW9uOworCisgIC8vIFJlcXVlc3QgaGFuZGxlciBmb3IgYSBzeW50aGVzaXpl
ZCByZXNwb25zZS4KKyAgaWYgKHVybC5pbmRleE9mKCdzeW50aGVzaXplZCcpICE9IC0xKSB7Cisg
ICAgbGV0IHNjcmlwdF9oZWFkZXJzID0gbmV3IEhlYWRlcnMoeyAiQ29udGVudC1UeXBlIjogInRl
eHQvamF2YXNjcmlwdCIgfSk7CisgICAgaWYgKGRlc3RpbmF0aW9uID09PSAnd29ya2VyJykKKyAg
ICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZShkZWRpY2F0ZWRfd29ya2VyX3Njcmlw
dCwgeyAnaGVhZGVycyc6IHNjcmlwdF9oZWFkZXJzIH0pKTsKKyAgICBlbHNlIGlmIChkZXN0aW5h
dGlvbiA9PT0gJ3NoYXJlZHdvcmtlcicpCisgICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVz
cG9uc2Uoc2hhcmVkX3dvcmtlcl9zY3JpcHQsIHsgJ2hlYWRlcnMnOiBzY3JpcHRfaGVhZGVycyB9
KSk7CisgICAgZWxzZQorICAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKCdVbmV4
cGVjdGVkIHJlcXVlc3QhICcgKyBkZXN0aW5hdGlvbikpOworICAgIHJldHVybjsKKyAgfQorCisg
IC8vIFJlcXVlc3QgaGFuZGxlciBmb3IgYSBzYW1lLW9yaWdpbiByZXNwb25zZS4KKyAgaWYgKHVy
bC5pbmRleE9mKCdzYW1lLW9yaWdpbicpICE9IC0xKSB7CisgICAgZXZlbnQucmVzcG9uZFdpdGgo
ZmV0Y2goJ3Bvc3RtZXNzYWdlLW9uLWxvYWQtd29ya2VyLmpzJykpOworICAgIHJldHVybjsKKyAg
fQorCisgIC8vIFJlcXVlc3QgaGFuZGxlciBmb3IgYSBjcm9zcy1vcmlnaW4gcmVzcG9uc2UuCisg
IGlmICh1cmwuaW5kZXhPZignY29ycycpICE9IC0xKSB7CisgICAgY29uc3QgZmlsZW5hbWUgPSAn
cG9zdG1lc3NhZ2Utb24tbG9hZC13b3JrZXIuanMnOworICAgIGNvbnN0IHBhdGggPSAobmV3IFVS
TChmaWxlbmFtZSwgc2VsZi5sb2NhdGlvbikpLnBhdGhuYW1lOworICAgIGxldCBuZXdfdXJsID0g
Z2V0X2hvc3RfaW5mbygpWydIVFRQU19SRU1PVEVfT1JJR0lOJ10gKyBwYXRoOworICAgIGxldCBt
b2RlOworICAgIGlmICh1cmwuaW5kZXhPZignbm8tY29ycycpICE9IC0xKSB7CisgICAgICAvLyBU
ZXN0IG5vLWNvcnMgbW9kZS4KKyAgICAgIG1vZGUgPSAnbm8tY29ycyc7CisgICAgfSBlbHNlIHsK
KyAgICAgIC8vIFRlc3QgY29ycyBtb2RlLgorICAgICAgbmV3X3VybCArPSAnP3BpcGU9aGVhZGVy
KEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiwqKSc7CisgICAgICBtb2RlID0gJ2NvcnMnOwor
ICAgIH0KKyAgICBldmVudC5yZXNwb25kV2l0aChmZXRjaChuZXdfdXJsLCB7IG1vZGU6IG1vZGUg
fSkpOworICB9Cit9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nh
bXBsZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjEyYTE3OTk4MGRmMmZmNjBjMjU4ODI3MTE5Yzc4YTY0NWUxYTc0YTcKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLmh0bWwKQEAgLTAs
MCArMSwyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxib2R5PkhlbGxvIHdvcmxkCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zYW1wbGUudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwMjk5MmM0MjIwZGUxOWE5MDc2
N2YzMDAwYTc5YTMxYjk4ZDBkZjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlLnR4dApAQCAtMCwwICsxIEBACitIZWxsbyB3b3JsZApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWlt
cG9ydGluZy1yZWRpcmVjdC10by1zY29wZTIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXJlZGlyZWN0LXRvLXNjb3BlMi5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hZTY4MWJhMzBlMGIwMWYxZWM2YzY0MmFkNGRhYzE5ZjBjYzlkYzY5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9tb2R1bGUt
d29ya2VyLWltcG9ydGluZy1yZWRpcmVjdC10by1zY29wZTIuanMKQEAgLTAsMCArMSBAQAoraW1w
b3J0ICogYXMgbW9kdWxlIGZyb20gJy4vcmVkaXJlY3QucHk/UmVkaXJlY3Q9L3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3Jp
cHQuanMnOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9t
b2R1bGUtd29ya2VyLWltcG9ydGluZy1zY29wZTIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXNjb3BlMi5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lMjg1MDUyNDljMjgxNzM1NDQxODMwMzE5YTk0NjhiZWJhOGJiNTQ3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9tb2R1bGUtd29ya2VyLWlt
cG9ydGluZy1zY29wZTIuanMKQEAgLTAsMCArMSBAQAoraW1wb3J0ICogYXMgbW9kdWxlIGZyb20g
Jy4uL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0LmpzJzsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL3czYy1pbXBvcnQubG9nCmluZGV4IGE2NzA3NzUwZjQy
YzYxZGUxMzdhMDE4Yzk3Mzk5Y2FlYTQ2ZDQ5YmIuLjRlZjQ2OGM5YjNiY2EzYmFiNDA2MTAzYmNi
YzI1NTkwMjE0ODM0N2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9z
Y29wZTEvdzNjLWltcG9ydC5sb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nj
b3BlMS93M2MtaW1wb3J0LmxvZwpAQCAtMTQsNCArMTQsNiBAQCBQcm9wZXJ0eSB2YWx1ZXMgcmVx
dWlyaW5nIHZlbmRvciBwcmVmaXhlczoKIE5vbmUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogTGlzdCBvZiBm
aWxlczoKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXIt
aW1wb3J0aW5nLXJlZGlyZWN0LXRvLXNjb3BlMi5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zY29wZTEvbW9kdWxlLXdvcmtlci1pbXBvcnRpbmctc2NvcGUyLmpzCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9yZWRpcmVjdC5weQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0LmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2NyaXB0
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmExOGU3MDRhM2M1OGZiZGUzOTkyOGQyYWNiZmMwOTUwZjU2YzQ1ZWMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL2lt
cG9ydGVkLW1vZHVsZS1zY3JpcHQuanMKQEAgLTAsMCArMSw0IEBACitleHBvcnQgY29uc3QgaW1w
b3J0ZWQgPSAnQSBtb2R1bGUgc2NyaXB0Lic7Citvbm1lc3NhZ2UgPSBtc2cgPT4geworICAgIG1z
Zy5zb3VyY2UucG9zdE1lc3NhZ2UoJ3BvbmcnKTsKK307CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3Njb3BlMi93M2MtaW1wb3J0LmxvZwppbmRleCA3NjkzNzM0NzVjYjIxNjli
Zjg0M2UwZDNiZDEwNTdkZTY4OGQwNmQ3Li41OGM1MGZhYmM0YjYwOTRiZGVkMzVhMWY4MWY1NWEx
ZjY1NTdkMjE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUy
L3czYy1pbXBvcnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTIv
dzNjLWltcG9ydC5sb2cKQEAgLTE0LDQgKzE0LDUgQEAgUHJvcGVydHkgdmFsdWVzIHJlcXVpcmlu
ZyB2ZW5kb3IgcHJlZml4ZXM6CiBOb25lCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIExpc3Qgb2YgZmlsZXM6
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi9pbXBvcnRlZC1tb2R1bGUtc2Ny
aXB0LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi93b3JrZXJfaW50ZXJj
ZXB0aW9uX3JlZGlyZWN0X3dlYndvcmtlci5weQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3N1YmRpci9ibGFuay5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3N1YmRpci9ibGFuay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzYzNhNDY4OWE2MmI0NWIxZTQyOWY2
YjdhOTQ2OTBlNTU2YTEyNTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvc3ViZGlyL2JsYW5rLmh0bWwKQEAgLTAsMCArMSwyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzx0aXRsZT5FbXB0eSBkb2M8L3RpdGxlPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3N1YmRpci93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9zdWJkaXIvdzNjLWltcG9ydC5sb2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTc1N2MxZjkxNjM0NzVh
MGU1NTkxYTY3YzAyMTA0YjZiNjM5M2M3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zdWJkaXIvdzNjLWltcG9ydC5sb2cKQEAgLTAsMCArMSwxNyBAQAor
VGhlIHRlc3RzIGluIHRoaXMgZGlyZWN0b3J5IHdlcmUgaW1wb3J0ZWQgZnJvbSB0aGUgVzNDIHJl
cG9zaXRvcnkuCitEbyBOT1QgbW9kaWZ5IHRoZXNlIHRlc3RzIGRpcmVjdGx5IGluIFdlYktpdC4K
K0luc3RlYWQsIGNyZWF0ZSBhIHB1bGwgcmVxdWVzdCBvbiB0aGUgV1BUIGdpdGh1YjoKKwlodHRw
czovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdAorCitUaGVuIHJ1biB0aGUgVG9v
bHMvU2NyaXB0cy9pbXBvcnQtdzNjLXRlc3RzIGluIFdlYktpdCB0byByZWltcG9ydAorCitEbyBO
T1QgbW9kaWZ5IG9yIHJlbW92ZSB0aGlzIGZpbGUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorUHJvcGVy
dGllcyByZXF1aXJpbmcgdmVuZG9yIHByZWZpeGVzOgorTm9uZQorUHJvcGVydHkgdmFsdWVzIHJl
cXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CitOb25lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xpc3Qgb2Yg
ZmlsZXM6CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3N1YmRpci9ibGFuay5odG1sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCmluZGV4
IGJiZDE2YWJjZTRiMzcwM2EyZjc0OTllN2MyYzRjNzU5MDU2NmQzM2UuLjNmNmEyMDU1ZjY4YmQz
M2QxMjQ3NzRjM2YxNDMwMWJhNTNmNzY1M2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCkBAIC05Miw1NiArOTIsNjYgQEAgZnVuY3Rpb24g
d2FpdF9mb3JfdXBkYXRlKHRlc3QsIHJlZ2lzdHJhdGlvbikgewogICAgIH0pKTsKIH0KIAotZnVu
Y3Rpb24gd2FpdF9mb3Jfc3RhdGUodGVzdCwgd29ya2VyLCBzdGF0ZSkgewotICBpZiAoIXdvcmtl
ciB8fCB3b3JrZXIuc3RhdGUgPT0gdW5kZWZpbmVkKSB7Ci0gICAgcmV0dXJuIFByb21pc2UucmVq
ZWN0KG5ldyBFcnJvcigKLSAgICAgICd3YWl0X2Zvcl9zdGF0ZSBtdXN0IGJlIHBhc3NlZCBhIFNl
cnZpY2VXb3JrZXInKSk7Ci0gIH0KLSAgaWYgKHdvcmtlci5zdGF0ZSA9PT0gc3RhdGUpCi0gICAg
cmV0dXJuIFByb21pc2UucmVzb2x2ZShzdGF0ZSk7Ci0KLSAgaWYgKHN0YXRlID09PSAnaW5zdGFs
bGluZycpIHsKLSAgICBzd2l0Y2ggKHdvcmtlci5zdGF0ZSkgeworLy8gUmV0dXJuIHRydWUgaWYg
fHN0YXRlX2F8IGlzIG1vcmUgYWR2YW5jZWQgdGhhbiB8c3RhdGVfYnwuCitmdW5jdGlvbiBpc19z
dGF0ZV9hZHZhbmNlZChzdGF0ZV9hLCBzdGF0ZV9iKSB7CisgIGlmIChzdGF0ZV9iID09PSAnaW5z
dGFsbGluZycpIHsKKyAgICBzd2l0Y2ggKHN0YXRlX2EpIHsKICAgICAgIGNhc2UgJ2luc3RhbGxl
ZCc6CiAgICAgICBjYXNlICdhY3RpdmF0aW5nJzoKICAgICAgIGNhc2UgJ2FjdGl2YXRlZCc6CiAg
ICAgICBjYXNlICdyZWR1bmRhbnQnOgotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3
IEVycm9yKAotICAgICAgICAgICd3b3JrZXIgaXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0IHdh
aXRpbmcgZm9yICcgKyBzdGF0ZSkpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgIH0K
IAotICBpZiAoc3RhdGUgPT09ICdpbnN0YWxsZWQnKSB7Ci0gICAgc3dpdGNoICh3b3JrZXIuc3Rh
dGUpIHsKKyAgaWYgKHN0YXRlX2IgPT09ICdpbnN0YWxsZWQnKSB7CisgICAgc3dpdGNoIChzdGF0
ZV9hKSB7CiAgICAgICBjYXNlICdhY3RpdmF0aW5nJzoKICAgICAgIGNhc2UgJ2FjdGl2YXRlZCc6
CiAgICAgICBjYXNlICdyZWR1bmRhbnQnOgotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3Qo
bmV3IEVycm9yKAotICAgICAgICAgICd3b3JrZXIgaXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0
IHdhaXRpbmcgZm9yICcgKyBzdGF0ZSkpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAg
IH0KIAotICBpZiAoc3RhdGUgPT09ICdhY3RpdmF0aW5nJykgewotICAgIHN3aXRjaCAod29ya2Vy
LnN0YXRlKSB7CisgIGlmIChzdGF0ZV9iID09PSAnYWN0aXZhdGluZycpIHsKKyAgICBzd2l0Y2gg
KHN0YXRlX2EpIHsKICAgICAgIGNhc2UgJ2FjdGl2YXRlZCc6CiAgICAgICBjYXNlICdyZWR1bmRh
bnQnOgotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAotICAgICAgICAg
ICd3b3JrZXIgaXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0IHdhaXRpbmcgZm9yICcgKyBzdGF0
ZSkpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgIH0KIAotICBpZiAoc3RhdGUgPT09
ICdhY3RpdmF0ZWQnKSB7Ci0gICAgc3dpdGNoICh3b3JrZXIuc3RhdGUpIHsKKyAgaWYgKHN0YXRl
X2IgPT09ICdhY3RpdmF0ZWQnKSB7CisgICAgc3dpdGNoIChzdGF0ZV9hKSB7CiAgICAgICBjYXNl
ICdyZWR1bmRhbnQnOgotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAot
ICAgICAgICAgICd3b3JrZXIgaXMgJyArIHdvcmtlci5zdGF0ZSArICcgYnV0IHdhaXRpbmcgZm9y
ICcgKyBzdGF0ZSkpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgIH0KKyAgcmV0dXJu
IGZhbHNlOworfQogCi0gIHJldHVybiBuZXcgUHJvbWlzZSh0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlv
bihyZXNvbHZlKSB7CitmdW5jdGlvbiB3YWl0X2Zvcl9zdGF0ZSh0ZXN0LCB3b3JrZXIsIHN0YXRl
KSB7CisgIGlmICghd29ya2VyIHx8IHdvcmtlci5zdGF0ZSA9PSB1bmRlZmluZWQpIHsKKyAgICBy
ZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAorICAgICAgJ3dhaXRfZm9yX3N0YXRlIG5l
ZWRzIGEgU2VydmljZVdvcmtlciBvYmplY3QgdG8gYmUgcGFzc2VkLicpKTsKKyAgfQorICBpZiAo
d29ya2VyLnN0YXRlID09PSBzdGF0ZSkKKyAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHN0YXRl
KTsKKworICBpZiAoaXNfc3RhdGVfYWR2YW5jZWQod29ya2VyLnN0YXRlLCBzdGF0ZSkpIHsKKyAg
ICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKAorICAgICAgYFdhaXRpbmcgZm9yICR7
c3RhdGV9IGJ1dCB0aGUgd29ya2VyIGlzIGFscmVhZHkgJHt3b3JrZXIuc3RhdGV9LmApKTsKKyAg
fQorICByZXR1cm4gbmV3IFByb21pc2UodGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24ocmVzb2x2ZSwg
cmVqZWN0KSB7CiAgICAgICB3b3JrZXIuYWRkRXZlbnRMaXN0ZW5lcignc3RhdGVjaGFuZ2UnLCB0
ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAgICAgICBpZiAod29ya2VyLnN0YXRlID09
PSBzdGF0ZSkKICAgICAgICAgICAgIHJlc29sdmUoc3RhdGUpOworCisgICAgICAgICAgaWYgKGlz
X3N0YXRlX2FkdmFuY2VkKHdvcmtlci5zdGF0ZSwgc3RhdGUpKSB7CisgICAgICAgICAgICByZWpl
Y3QobmV3IEVycm9yKAorICAgICAgICAgICAgICBgVGhlIHN0YXRlIG9mIHRoZSB3b3JrZXIgYmVj
b21lcyAke3dvcmtlci5zdGF0ZX0gd2hpbGUgd2FpdGluZ2AgKworICAgICAgICAgICAgICAgIGBm
b3IgJHtzdGF0ZX0uYCkpOworICAgICAgICAgIH0KICAgICAgICAgfSkpOwogICAgIH0pKTsKIH0K
QEAgLTI3NCwxMyArMjg0LDEzIEBAIGZ1bmN0aW9uIHdpdGhfc2FuZGJveGVkX2lmcmFtZSh1cmws
IHNhbmRib3gpIHsKICAgICB9KTsKIH0KIAotLy8gUmVnaXN0ZXJzLCB3YWl0cyBmb3IgYWN0aXZh
dGlvbiwgdGhlbiB1bnJlZ2lzdGVycyBvbiBhIGR1bW15IHNjb3BlLgorLy8gUmVnaXN0ZXJzLCB3
YWl0cyBmb3IgYWN0aXZhdGlvbiwgdGhlbiB1bnJlZ2lzdGVycyBvbiBhIHNhbXBsZSBzY29wZS4K
IC8vCiAvLyBUaGlzIGNhbiBiZSB1c2VkIHRvIHdhaXQgZm9yIGEgcGVyaW9kIG9mIHRpbWUgbmVl
ZGVkIHRvIHJlZ2lzdGVyLAogLy8gYWN0aXZhdGUsIGFuZCB0aGVuIHVucmVnaXN0ZXIgYSBzZXJ2
aWNlIHdvcmtlci4gIFdoZW4gY2hlY2tpbmcgdGhhdAogLy8gY2VydGFpbiBiZWhhdmlvciBkb2Vz
ICpOT1QqIGhhcHBlbiwgdGhpcyBpcyBwcmVmZXJhYmxlIHRvIHVzaW5nIGFuCiAvLyBhcmJpdHJh
cnkgZGVsYXkuCi1hc3luYyBmdW5jdGlvbiB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15X3Nj
b3BlKHQsIHdpbmRvd19vcl93b3JrZXJnbG9iYWxzY29wZSkgeworYXN5bmMgZnVuY3Rpb24gd2Fp
dF9mb3JfYWN0aXZhdGlvbl9vbl9zYW1wbGVfc2NvcGUodCwgd2luZG93X29yX3dvcmtlcmdsb2Jh
bHNjb3BlKSB7CiAgIGNvbnN0IHNjcmlwdCA9ICcvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9lbXB0eS13b3JrZXIuanMnOwogICBjb25zdCBzY29wZSA9ICdyZXNvdXJj
ZXMvdGhlcmUvaXMvbm8vdGhlcmUvdGhlcmU/JyArIERhdGUubm93KCk7CiAgIGxldCByZWdpc3Ry
YXRpb24gPSBhd2FpdCB3aW5kb3dfb3Jfd29ya2VyZ2xvYmFsc2NvcGUubmF2aWdhdG9yLnNlcnZp
Y2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7IHNjb3BlIH0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNTY2ZTJlOTk4NGI1ZDZiNWQzYTc5NzM4NTQyZjFiMmIyNGQxZjZiMgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LXJlcXVlc3QtbW9kZS13
b3JrZXIuanMKQEAgLTAsMCArMSwxMCBAQAorLy8gQWRkIGEgdW5pcXVlIFVVSUQgcGVyIHJlcXVl
c3QgdG8gaW5kdWNlIHNlcnZpY2Ugd29ya2VyIHNjcmlwdCB1cGRhdGUuCisvLyBUaW1lIHN0YW1w
OiAlVVVJRCUKKworLy8gVGhlIHNlcnZlciBpbmplY3RzIHRoZSByZXF1ZXN0IGhlYWRlcnMgaGVy
ZSBhcyBhIEpTT04gc3RyaW5nLgorY29uc3QgaGVhZGVyc0FzSnNvbiA9IGAlSEVBREVSUyVgOwor
Y29uc3QgaGVhZGVycyA9IEpTT04ucGFyc2UoaGVhZGVyc0FzSnNvbik7CisKK3NlbGYuYWRkRXZl
bnRMaXN0ZW5lcignbWVzc2FnZScsIGFzeW5jIChlKSA9PiB7CisgIGUuc291cmNlLnBvc3RNZXNz
YWdlKGhlYWRlcnMpOworfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2VyLnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NDQ5ODQxYTk5MzA3
OTZmZGNmZjAzMDdjMWUyYjA0M2IyYTZiN2YxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5weQpAQCAtMCwwICsx
LDIyIEBACitpbXBvcnQganNvbgoraW1wb3J0IG9zCitpbXBvcnQgdXVpZAoraW1wb3J0IHN5cwor
Citmcm9tIHdwdHNlcnZlLnV0aWxzIGltcG9ydCBpc29tb3JwaGljX2RlY29kZQorCitkZWYgbWFp
bihyZXF1ZXN0LCByZXNwb25zZSk6CisgIHBhdGggPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJu
YW1lKGlzb21vcnBoaWNfZGVjb2RlKF9fZmlsZV9fKSksCisgICAgICAgICAgICAgICAgICAgICAg
dSJ0ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIuanMiKQorICBib2R5ID0gb3BlbihwYXRoLCB1InJi
IikucmVhZCgpCisKKyAgZGF0YSA9IHtpc29tb3JwaGljX2RlY29kZShrZXkpOmlzb21vcnBoaWNf
ZGVjb2RlKHJlcXVlc3QuaGVhZGVyc1trZXldKSBmb3Iga2V5LCB2YWx1ZSBpbiByZXF1ZXN0Lmhl
YWRlcnMuaXRlbXMoKX0KKworICBib2R5ID0gYm9keS5yZXBsYWNlKGIiJUhFQURFUlMlIiwganNv
bi5kdW1wcyhkYXRhKS5lbmNvZGUoInV0Zi04IikpCisgIGJvZHkgPSBib2R5LnJlcGxhY2UoYiIl
VVVJRCUiLCBzdHIodXVpZC51dWlkNCgpKS5lbmNvZGUoInV0Zi04IikpCisKKyAgaGVhZGVycyA9
IFtdCisgIGhlYWRlcnMuYXBwZW5kKChiIkVUYWciLCBiImV0YWciKSkKKyAgaGVhZGVycy5hcHBl
bmQoKGIiQ29udGVudC1UeXBlIiwgYid0ZXh0L2phdmFzY3JpcHQnKSkKKworICByZXR1cm4gaGVh
ZGVycywgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLWhlbHBlcnMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MtaGVscGVycy5qcwppbmRleCA3YjdiNWVmZTY5YmRlNzE4YzgwZjgyNzY2YjdhYWZjNDljMDQx
ODU0Li5iMWE1Yjk2MGUwNjU2YWMzNmU1NTNjNzA5NjVhZWJmN2I4MzQ0Yzk3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdGhhcm5lc3MtaGVscGVycy5qcworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdGhhcm5lc3MtaGVscGVycy5qcwpAQCAt
MjgsNyArMjgsNyBAQCBzZWxmLmFzc2VydF9vYmplY3RfZXF1YWxzID0gZnVuY3Rpb24oYWN0dWFs
LCBleHBlY3RlZCwgZGVzY3JpcHRpb24pIHsKICAgICAgIGFzc2VydF9lcXVhbHMoYWN0dWFsLCBl
eHBlY3RlZCwgcHJlZml4KTsKICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgYXNzZXJ0X3RydWUo
dHlwZW9mIGV4cGVjdGVkID09PSAnb2JqZWN0JywgcHJlZml4KTsKKyAgICBhc3NlcnRfZXF1YWxz
KHR5cGVvZiBleHBlY3RlZCwgJ29iamVjdCcsIHByZWZpeCk7CiAgICAgYXNzZXJ0X2VxdWFscyhv
YmplY3Rfc3RhY2suaW5kZXhPZihhY3R1YWwpLCAtMSwKICAgICAgICAgICAgICAgICAgIHByZWZp
eCArICcgbXVzdCBub3QgY29udGFpbiBjeWNsaWMgcmVmZXJlbmNlcy4nKTsKIApAQCAtMTA3LDcg
KzEwNyw3IEBAIGZ1bmN0aW9uIGFzc2VydF9hcnJheV9vYmplY3RzX2VxdWFscyhhY3R1YWwsIGV4
cGVjdGVkLCBkZXNjcmlwdGlvbikgewogLy8gRklYTUU6IFJlbW92ZSBhc3NlcnRfd2lsbF9iZV9p
ZGxfYXR0cmlidXRlIG9uY2Ugd2UgY29tcGxldGUgdGhlIHRyYW5zaXRpb24KIC8vIG9mIG1vdmlu
ZyB0aGUgRE9NIGF0dHJpYnV0ZXMgdG8gcHJvdG90eXBlIGNoYWlucy4gIChodHRwOi8vY3JidWcu
Y29tLzQzMzk0KQogZnVuY3Rpb24gYXNzZXJ0X3dpbGxfYmVfaWRsX2F0dHJpYnV0ZShvYmplY3Qs
IGF0dHJpYnV0ZV9uYW1lLCBkZXNjcmlwdGlvbikgewotICBhc3NlcnRfdHJ1ZSh0eXBlb2Ygb2Jq
ZWN0ID09PSAib2JqZWN0IiwgZGVzY3JpcHRpb24pOworICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBv
YmplY3QsICJvYmplY3QiLCBkZXNjcmlwdGlvbik7CiAKICAgYXNzZXJ0X3RydWUoImhhc093blBy
b3BlcnR5IiBpbiBvYmplY3QsIGRlc2NyaXB0aW9uKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3R5cGUtY2hlY2std29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL3R5cGUtY2hlY2std29ya2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3NzllMjMyM2Q5
MmM0YzFjZjJiNWI3ODk5MzJmOGU1N2Q4NjA1NjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvdHlwZS1jaGVjay13b3JrZXIuanMKQEAgLTAsMCArMSwxMCBA
QAorbGV0IHR5cGUgPSAnJzsKK3RyeSB7CisgIGltcG9ydFNjcmlwdHMoJ2VtcHR5LmpzJyk7Cisg
IHR5cGUgPSAnY2xhc3NpYyc7Cit9IGNhdGNoIChlKSB7CisgIHR5cGUgPSAnbW9kdWxlJzsKK30K
K29ubWVzc2FnZSA9IGUgPT4geworICBlLnNvdXJjZS5wb3N0TWVzc2FnZSh0eXBlKTsKK307CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1pbW1lZGlh
dGVseS1oZWxwZXJzLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3VucmVnaXN0ZXIt
aW1tZWRpYXRlbHktaGVscGVycy5qcwppbmRleCA4NmZiMjRkOGY5ODhjODEwYTIzMzBmMTQxYWI5
MzQzOWQyMDM0OTk1Li45MWEzMGRlNWI3NzdmOWQ1MmZlZDZlZjcyNGJkNTFlNjA0OWFmM2YyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1pbW1lZGlh
dGVseS1oZWxwZXJzLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJlZ2lz
dGVyLWltbWVkaWF0ZWx5LWhlbHBlcnMuanMKQEAgLTE0LDYgKzE0LDYgQEAgYXN5bmMgZnVuY3Rp
b24gYXNzZXJ0X25vX3JlZ2lzdHJhdGlvbnNfZXhpc3QoKSB7CiBhc3luYyBmdW5jdGlvbiBhZGRf
Y29udHJvbGxlZF9pZnJhbWUodGVzdCwgdXJsKSB7CiAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0
aF9pZnJhbWUodXJsKTsKICAgdGVzdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgp
OyB9KTsKLSAgYXNzZXJ0X3RydWUoZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2Vydmlj
ZVdvcmtlci5jb250cm9sbGVyICE9PSBudWxsKTsKKyAgYXNzZXJ0X25vdF9lcXVhbHMoZnJhbWUu
Y29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyLCBudWxsKTsK
ICAgcmV0dXJuIGZyYW1lOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3czYy1pbXBv
cnQubG9nCmluZGV4IDBlZjZjMTZjN2U1YjUxYjIxZWM2ZjZkYTA1ZTY4NjlkOTcwMjJmMTkuLjMz
YWU2MjZlZWZkZTg3YjRiOGU4YmU3YmRlODFkZjI5ZGRhZDFlNjIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy93M2MtaW1wb3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvdzNjLWltcG9ydC5sb2cKQEAgLTI3LDkgKzI3LDEyIEBAIExpc3Qgb2Yg
ZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2FwcGNhY2hlLW9yZGVyaW5nLmlz
LWFwcGNhY2hlZC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2FwcGNhY2hlLW9y
ZGVyaW5nLmlzLWFwcGNhY2hlZC5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9hcHBj
YWNoZS1vcmRlcmluZy5tYW5pZmVzdAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9iYXNp
Yy1tb2R1bGUtMi5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUu
anMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYmxhbmsuaHRtbAogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLWltcG9ydGVkLXNjcmlwdC5weQogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLnB5CisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsYWltLWJsb2ItdXJsLXdvcmtlci1mZXRjaC1pZnJhbWUuaHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGFpbS1uZXN0ZWQtd29ya2VyLWZldGNo
LWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsYWltLW5lc3RlZC13
b3JrZXItZmV0Y2gtcGFyZW50LXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9jbGFpbS1zaGFyZWQtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sCkBAIC00Myw2ICs0Niw4IEBA
IExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZS1mcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZp
Z2F0ZS13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LW5hdmln
YXRlZC1mcmFtZS5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC11cmwt
b2YtYmxvYi11cmwtd29ya2VyLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xp
ZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvY2xpZW50cy1mcmFtZS1mcmVlemUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9jbGllbnRzLWdldC1jbGllbnQtdHlwZXMtZnJhbWUtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtZ2V0LWNsaWVudC10eXBlcy1mcmFtZS5odG1sCkBAIC01
Myw2ICs1OCw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2NsaWVudHMtZ2V0LW90aGVyLW9yaWdpbi5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2NsaWVudHMtZ2V0LXJlc3VsdGluZ0NsaWVudElkLXdvcmtlci5qcwogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9jbGllbnRzLWdldC13b3JrZXIuanMKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHRtbAogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLW1hdGNoYWxsLWNsaWVudC10eXBlcy1kZWRp
Y2F0ZWQtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtbWF0
Y2hhbGwtY2xpZW50LXR5cGVzLWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2NsaWVudHMtbWF0Y2hhbGwtY2xpZW50LXR5cGVzLXNoYXJlZC13b3JrZXIuanMKQEAgLTYx
LDkgKzY3LDggQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
Y29ycy1hcHByb3ZlZC50eHQKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY29ycy1hcHBy
b3ZlZC50eHQuaGVhZGVycwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jb3JzLWRlbmll
ZC50eHQKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXktd29ya2VyLWludGVyY2Vw
dG9yLmpzCi0vTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15Lmh0bWwKLS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkudHh0CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2NyZWF0ZS1ibG9iLXVybC13b3JrZXIuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvY3JlYXRlLW91dC1vZi1zY29wZS13b3JrZXIuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9lY2hvLWNvbnRlbnQucHkKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZWNo
by1jb29raWUtd29ya2VyLnB5CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2VjaG8tbWVz
c2FnZS10by1zb3VyY2Utd29ya2VyLmpzCkBAIC0xMzksNiArMTQ0LDcgQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMt
aWZyYW1lLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVx
dWVzdC1yZXNvdXJjZXMtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLXJlcXVlc3QteGhyLWlmcmFtZS5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3Itd29ya2VyLmpzCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtaWZyYW1lLmh0bWwKIC9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1vbi13b3Jr
ZXItd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3Qt
eGhyLXN5bmMtd29ya2VyLmpzCkBAIC0xNTUsMTIgKzE2MSwxNCBAQCBMaXN0IG9mIGZpbGVzOgog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9odHRwLXRvLWh0dHBzLXJlZGlyZWN0LWFuZC1y
ZWdpc3Rlci1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pZnJhbWUt
d2l0aC1pbWFnZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1w
cm90b3R5cGUtc2VydmljZXdvcmtlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9p
bXBvcnQtZWNoby1jb29raWUtd29ya2VyLW1vZHVsZS5weQogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9pbXBvcnQtZWNoby1jb29raWUtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ltcG9ydC1taW1lLXR5cGUtd29ya2VyLnB5CiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ltcG9ydC1yZWxhdGl2ZS54c2wKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvaW1wb3J0LXNjcmlwdHMtNDA0LWFmdGVyLXVwZGF0ZS1wbHVzLXVwZGF0ZS13b3JrZXIuanMK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtNDA0LWFmdGVyLXVw
ZGF0ZS5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy00MDQu
anMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3Jp
Z2luLXdvcmtlci5zdWIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0LXNj
cmlwdHMtZGlmZi1yZXNvdXJjZS1tYXAtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ltcG9ydC1zY3JpcHRzLWVjaG8ucHkKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvaW1wb3J0LXNjcmlwdHMtZ2V0LnB5CkBAIC0yMDksOCArMjE3LDEyIEBAIExpc3Qgb2YgZmls
ZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25hdmlnYXRpb24tcmVkaXJlY3QtdG8t
aHR0cC1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uYXZpZ2F0aW9u
LXJlZGlyZWN0LXRvLWh0dHAtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L25hdmlnYXRpb24tdGltaW5nLXdvcmtlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbAorL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25lc3RlZC1pZnJhbWUtcGFyZW50Lmh0bWwKKy9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkLXdvcmtlci1jcmVhdGVkLWZyb20tYmxvYi11
cmwtd29ya2VyLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmVzdGVkX2xvYWRf
d29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25vLWR5bmFtaWMtaW1wb3J0
LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25vdGlmaWNhdGlvbl9pY29uLnB5CiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL29iamVjdC1pbWFnZS1pcy1ub3QtaW50ZXJjZXB0
ZWQtaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvb2JqZWN0LWlzLW5v
dC1pbnRlcmNlcHRlZC1pZnJhbWUuaHRtbApAQCAtMjQ1LDYgKzI1Nyw3IEBAIExpc3Qgb2YgZmls
ZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWJsb2ItdXJsLmpz
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3RtZXNzYWdlLWRpY3Rpb25hcnktdHJh
bnNmZXJhYmxlcy13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1l
c3NhZ2UtZWNoby13b3JrZXIuanMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1l
c3NhZ2UtZmV0Y2hlZC10ZXh0LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3Rt
ZXNzYWdlLW1zZ3BvcnQtdG8tY2xpZW50LXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9wb3N0bWVzc2FnZS1vbi1sb2FkLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9wb3N0bWVzc2FnZS10by1jbGllbnQtd29ya2VyLmpzCkBAIC0yNTgsNyArMjcx
LDYgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVmZXJy
ZXItcG9saWN5LWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lz
dGVyLWNsb3NlZC13aW5kb3ctaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvcmVnaXN0ZXItaWZyYW1lLmh0bWwKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVn
aXN0cmF0aW9uLXRlc3RzLWJhc2ljLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jl
Z2lzdHJhdGlvbi10ZXN0cy1taW1lLXR5cGVzLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY29wZS5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9yZWdpc3RyYXRpb24tdGVzdHMtc2NyaXB0LXVybC5qcwpAQCAtMjc1LDYgKzI4Nyw5IEBA
IExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jlc3BvbmQtd2l0
aC1ib2R5LWFjY2Vzc2VkLXJlc3BvbnNlLWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Jlc3BvbmQtd2l0aC1ib2R5LWFjY2Vzc2VkLXJlc3BvbnNlLXdvcmtlci5qcwog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNwb25kLXdpdGgtYm9keS1hY2Nlc3NlZC1y
ZXNwb25zZS5qc29ucAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGUtd29ya2Vy
LWludGVyY2VwdG9yLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS5odG1s
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS50eHQKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2FuZGJveGVkLWlmcmFtZS1mZXRjaC1ldmVudC1pZnJhbWUuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW5kYm94ZWQtaWZyYW1lLWZldGNoLWV2ZW50
LWlmcmFtZS5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW5kYm94ZWQtaWZyYW1l
LWZldGNoLWV2ZW50LXdvcmtlci5qcwpAQCAtMjk5LDggKzMxNCwxMSBAQCBMaXN0IG9mIGZpbGVz
OgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1oZWFkZXJzLXdvcmtlci5qcwog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LXJlcXVlc3QtaGVhZGVycy13b3JrZXIu
cHkKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2Vy
LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtl
ci5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpz
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3RyaWNrbGUucHkKKy9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvdHlwZS1jaGVjay13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvdW5yZWdpc3Rlci1jb250cm9sbGVyLXBhZ2UuaHRtbAogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy91bnJlZ2lzdGVyLWltbWVkaWF0ZWx5LWhlbHBlcnMuanMKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvdXBkYXRlLWNsYWltLXdvcmtlci5weQpAQCAtMzMxLDYgKzM0
OSw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dvcmtl
ci1sb2FkLWludGVyY2VwdG9yLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dvcmtl
ci10ZXN0aGFybmVzcy5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy93b3JrZXJfaW50
ZXJjZXB0aW9uX3JlZGlyZWN0X3dlYndvcmtlci5weQorL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy94aHItY29udGVudC1sZW5ndGgtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL3hoci1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHIt
cmVzcG9uc2UtdXJsLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94c2wt
YmFzZS11cmwtaWZyYW1lLnhtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3dpbmRvd2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvd2luZG93Y2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcwppbmRleCBjNDkwZTg5MmRm
ZWQ4OTI5ZGQ4NjY4YTc0MDFmOTkwZmE5NDk1N2VhLi4zODNmNjY2MzFkM2EwZDNiNmY5YjAyZjY4
NDdjMDFlMWIxOTI1OWM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
d2luZG93Y2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvd2luZG93Y2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcwpAQCAtMSwzNCArMSwzMyBA
QAogaW1wb3J0U2NyaXB0cygnL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcycpOwogCi1mdW5jdGlv
biBtYXRjaF9xdWVyeShxdWVyeV9zdHJpbmcpIHsKLSAgcmV0dXJuIHNlbGYubG9jYXRpb24uc2Vh
cmNoLnN1YnN0cigxKSA9PSBxdWVyeV9zdHJpbmc7CitmdW5jdGlvbiBtYXRjaFF1ZXJ5KHF1ZXJ5
U3RyaW5nKSB7CisgIHJldHVybiBzZWxmLmxvY2F0aW9uLnNlYXJjaC5zdWJzdHIoMSkgPT09IHF1
ZXJ5U3RyaW5nOwogfQogCi1hc3luYyBmdW5jdGlvbiBuYXZpZ2F0ZV90ZXN0KHQsIGUpIHsKLSAg
dmFyIHBvcnQgPSBlLmRhdGEucG9ydDsKLSAgdmFyIHVybCA9IGUuZGF0YS51cmw7Ci0gIHZhciBl
eHBlY3RlZCA9IGUuZGF0YS5leHBlY3RlZDsKK2FzeW5jIGZ1bmN0aW9uIG5hdmlnYXRlVGVzdCh0
LCBlKSB7CisgIGNvbnN0IHBvcnQgPSBlLmRhdGEucG9ydDsKKyAgY29uc3QgdXJsID0gZS5kYXRh
LnVybDsKKyAgY29uc3QgZXhwZWN0ZWQgPSBlLmRhdGEuZXhwZWN0ZWQ7CiAKLSAgdmFyIHAgPSBj
bGllbnRzLm1hdGNoQWxsKHsgaW5jbHVkZVVuY29udHJvbGxlZCA6IHRydWUgfSkKLSAgICAudGhl
bihmdW5jdGlvbihjbGllbnRfbGlzdCkgewotICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNs
aWVudF9saXN0Lmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgICAgdmFyIGNsaWVudCA9IGNsaWVudF9s
aXN0W2ldOwotICAgICAgICAgIGlmIChjbGllbnQuZnJhbWVUeXBlID09ICduZXN0ZWQnKSB7Ci0g
ICAgICAgICAgICByZXR1cm4gY2xpZW50Lm5hdmlnYXRlKHVybCk7Ci0gICAgICAgICAgfQorICBs
ZXQgcCA9IGNsaWVudHMubWF0Y2hBbGwoeyBpbmNsdWRlVW5jb250cm9sbGVkIDogdHJ1ZSB9KQor
ICAgIC50aGVuKGZ1bmN0aW9uKGNsaWVudHMpIHsKKyAgICAgIGZvciAoY29uc3QgY2xpZW50IG9m
IGNsaWVudHMpIHsKKyAgICAgICAgaWYgKGNsaWVudC51cmwgPT09IGUuZGF0YS5jbGllbnRVcmwp
IHsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5mcmFtZVR5cGUsIGUuZGF0YS5mcmFt
ZVR5cGUpOworICAgICAgICAgIHJldHVybiBjbGllbnQubmF2aWdhdGUodXJsKTsKICAgICAgICAg
fQotICAgICAgICB0aHJvdyAnQ291bGQgbm90IGxvY2F0ZSB3aW5kb3cgY2xpZW50Lic7Ci0gICAg
ICB9KQotICAgIC50aGVuKGZ1bmN0aW9uKG5ld19jbGllbnQpIHsKLSAgICAgICAgLy8gSWYgd2Ug
ZGlkbid0IHJlamVjdCwgd2UgYmV0dGVyIGdldCByZXNvbHZlZCB3aXRoIHRoZSByaWdodCB0aGlu
Zy4KLSAgICAgICAgaWYgKG5ld19jbGllbnQgPT09IG51bGwpIHsKLSAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKG5ld19jbGllbnQsIGV4cGVjdGVkKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKG5ld19jbGllbnQudXJsLCBleHBlY3RlZCk7Ci0gICAgICAgIH0KLSAg
ICAgIH0pOworICAgICAgfQorICAgICAgdGhyb3cgJ0NvdWxkIG5vdCBsb2NhdGUgd2luZG93IGNs
aWVudC4nOworICAgIH0pLnRoZW4oZnVuY3Rpb24obmV3Q2xpZW50KSB7CisgICAgICAvLyBJZiB3
ZSBkaWRuJ3QgcmVqZWN0LCB3ZSBiZXR0ZXIgZ2V0IHJlc29sdmVkIHdpdGggdGhlIHJpZ2h0IHRo
aW5nLgorICAgICAgaWYgKG5ld0NsaWVudCA9PT0gbnVsbCkgeworICAgICAgICBhc3NlcnRfZXF1
YWxzKG5ld0NsaWVudCwgZXhwZWN0ZWQpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgYXNzZXJ0
X2VxdWFscyhuZXdDbGllbnQudXJsLCBleHBlY3RlZCk7CisgICAgICB9CisgICAgfSk7CiAKLSAg
aWYgKHR5cGVvZiBzZWxmW2V4cGVjdGVkXSA9PSAiZnVuY3Rpb24iKSB7CisgIGlmICh0eXBlb2Yg
c2VsZltleHBlY3RlZF0gPT09ICJmdW5jdGlvbiIpIHsKICAgICAvLyBJdCdzIGEgSlMgZXJyb3Ig
dHlwZSBuYW1lLiAgV2UgYXJlIGV4cGVjdGluZyBvdXIgcHJvbWlzZSB0byBiZSByZWplY3RlZAog
ICAgIC8vIHdpdGggdGhhdCBlcnJvci4KICAgICBwID0gcHJvbWlzZV9yZWplY3RzX2pzKHQsIHNl
bGZbZXhwZWN0ZWRdLCBwKTsKQEAgLTQwLDM5ICszOSwzNyBAQCBhc3luYyBmdW5jdGlvbiBuYXZp
Z2F0ZV90ZXN0KHQsIGUpIHsKIAogZnVuY3Rpb24gZ2V0VGVzdENsaWVudCgpIHsKICAgcmV0dXJu
IGNsaWVudHMubWF0Y2hBbGwoeyBpbmNsdWRlVW5jb250cm9sbGVkOiB0cnVlIH0pCi0gICAgLnRo
ZW4oZnVuY3Rpb24oY2xpZW50X2xpc3QpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBj
bGllbnRfbGlzdC5sZW5ndGg7IGkrKykgewotICAgICAgICAgIHZhciBjbGllbnQgPSBjbGllbnRf
bGlzdFtpXTsKLQotICAgICAgICAgIGlmICgvd2luZG93Y2xpZW50LW5hdmlnYXRlXC5odHRwc1wu
aHRtbC8udGVzdChjbGllbnQudXJsKSkgewotICAgICAgICAgICAgcmV0dXJuIGNsaWVudDsKLSAg
ICAgICAgICB9CisgICAgLnRoZW4oZnVuY3Rpb24oY2xpZW50cykgeworICAgICAgZm9yIChjb25z
dCBjbGllbnQgb2YgY2xpZW50cykgeworICAgICAgICBpZiAoY2xpZW50LnVybC5pbmNsdWRlcygn
d2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwnKSkgeworICAgICAgICAgIHJldHVybiBj
bGllbnQ7CiAgICAgICAgIH0KKyAgICAgIH0KIAotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nl
cnZpY2Ugd29ya2VyIHdhcyB1bmFibGUgdG8gbG9jYXRlIHRlc3QgY2xpZW50LicpOwotICAgICAg
fSk7CisgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NlcnZpY2Ugd29ya2VyIHdhcyB1bmFibGUgdG8g
bG9jYXRlIHRlc3QgY2xpZW50LicpOworICAgIH0pOwogfQogCiBmdW5jdGlvbiB3YWl0Rm9yTWVz
c2FnZShjbGllbnQpIHsKLSAgdmFyIGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKKyAg
Y29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOwogICBjbGllbnQucG9zdE1lc3Nh
Z2UoeyBwb3J0OiBjaGFubmVsLnBvcnQyIH0sIFtjaGFubmVsLnBvcnQyXSk7CiAKICAgcmV0dXJu
IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKLSAgICAgICAgY2hhbm5lbC5wb3J0MS5v
bm1lc3NhZ2UgPSByZXNvbHZlOwotICAgICAgfSk7CisgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3Nh
Z2UgPSByZXNvbHZlOworICB9KTsKIH0KIAogLy8gVGhlIHdvcmtlciBtdXN0IHJlbWFpbiBpbiB0
aGUgImluc3RhbGxpbmciIHN0YXRlIGZvciB0aGUgZHVyYXRpb24gb2Ygc29tZQogLy8gc3ViLXRl
c3RzLiBJbiBvcmRlciB0byBhY2hpZXZlIHRoaXMgY29vcmRpbmF0aW9uIHdpdGhvdXQgcmVseWlu
ZyBvbiBnbG9iYWwKIC8vIHN0YXRlLCB0aGUgd29ya2VyIG11c3QgY3JlYXRlIGEgbWVzc2FnZSBj
aGFubmVsIHdpdGggdGhlIGNsaWVudCBmcm9tIHdpdGhpbgogLy8gdGhlICJpbnN0YWxsIiBldmVu
dCBoYW5kbGVyLgotaWYgKG1hdGNoX3F1ZXJ5KCdpbnN0YWxsaW5nJykpIHsKK2lmIChtYXRjaFF1
ZXJ5KCdpbnN0YWxsaW5nJykpIHsKICAgc2VsZi5hZGRFdmVudExpc3RlbmVyKCdpbnN0YWxsJywg
ZnVuY3Rpb24oZSkgewotICAgICAgZS53YWl0VW50aWwoZ2V0VGVzdENsaWVudCgpLnRoZW4od2Fp
dEZvck1lc3NhZ2UpKTsKLSAgICB9KTsKKyAgICBlLndhaXRVbnRpbChnZXRUZXN0Q2xpZW50KCku
dGhlbih3YWl0Rm9yTWVzc2FnZSkpOworICB9KTsKIH0KIAogc2VsZi5hZGRFdmVudExpc3RlbmVy
KCdtZXNzYWdlJywgZnVuY3Rpb24oZSkgewotICAgIGUud2FpdFVudGlsKHByb21pc2VfdGVzdCh0
ID0+IG5hdmlnYXRlX3Rlc3QodCwgZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUu
ZGF0YS5kZXNjcmlwdGlvbiArICIgd29ya2VyIHNpZGUiKSk7Ci0gIH0pOworICBlLndhaXRVbnRp
bChwcm9taXNlX3Rlc3QodCA9PiBuYXZpZ2F0ZVRlc3QodCwgZSksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICBlLmRhdGEuZGVzY3JpcHRpb24gKyAiIHdvcmtlciBzaWRlIikpOworfSk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMveGhyLWNvbnRlbnQtbGVuZ3Ro
LXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHItY29udGVudC1sZW5n
dGgtd29ya2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYwNGRlZWNlMmQyNTJkNjhiNGYxNTY0MDNiNjA0MWIw
MjkwZDVhOWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
eGhyLWNvbnRlbnQtbGVuZ3RoLXdvcmtlci5qcwpAQCAtMCwwICsxLDIyIEBACisvLyBTZXJ2aWNl
IHdvcmtlciBmb3IgdGhlIHhoci1jb250ZW50LWxlbmd0aCB0ZXN0LgorCitzZWxmLmFkZEV2ZW50
TGlzdGVuZXIoImZldGNoIiwgZXZlbnQgPT4geworICBjb25zdCB1cmwgPSBuZXcgVVJMKGV2ZW50
LnJlcXVlc3QudXJsKTsKKyAgY29uc3QgdHlwZSA9IHVybC5zZWFyY2hQYXJhbXMuZ2V0KCJ0eXBl
Iik7CisKKyAgaWYgKHR5cGUgPT09ICJuby1jb250ZW50LWxlbmd0aCIpIHsKKyAgICBldmVudC5y
ZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoIkhlbGxvISIpKTsKKyAgfQorCisgIGlmICh0eXBlID09
PSAibGFyZ2VyLWNvbnRlbnQtbGVuZ3RoIikgeworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBS
ZXNwb25zZSgibWVlZWVoIiwgeyBoZWFkZXJzOiBbWyJDb250ZW50LUxlbmd0aCIsICIxMDAwMCJd
XSB9KSk7CisgIH0KKworICBpZiAodHlwZSA9PT0gImRvdWJsZS1jb250ZW50LWxlbmd0aCIpIHsK
KyAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoIm1lZWVlaCIsIHsgaGVhZGVyczog
W1siQ29udGVudC1MZW5ndGgiLCAiMTAwMDAiXSwgWyJDb250ZW50LUxlbmd0aCIsICIxMDAwMCJd
XSB9KSk7CisgIH0KKworICBpZiAodHlwZSA9PT0gImJvZ3VzLWNvbnRlbnQtbGVuZ3RoIikgewor
ICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgibWVlZWVoIiwgeyBoZWFkZXJzOiBb
WyJDb250ZW50LUxlbmd0aCIsICJ0ZXN0Il1dIH0pKTsKKyAgfQorfSk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTlmYjUyNDA0OWQ4MDdiNmRlODg3YTViMjBkMWMxNzI4MjUxMDlkZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3N2Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRt
bApAQCAtMCwwICsxLDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPG1ldGEgY2hhcnNldD0idXRmLTgi
PgorPGltZyBzcmM9Ii9pbWFnZXMvZ3JlZW4uc3ZnIj4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3N2Zy10YXJnZXQtcmVmdGVzdC5odHRwcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0Lmh0dHBzLWV4cGVjdGVkLmh0bWwKaW5kZXggNDY3
ODJhYzMyNzNmN2RjYWM5MTFhNWMxMzY4MzgzM2ViMTMxNGY1MC4uOWE5M2QzYjM3MDQ3NTYwYTFi
Njg2MjY2OTMyYzAzOTk2ODY4M2ZjZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc3Zn
LXRhcmdldC1yZWZ0ZXN0Lmh0dHBzLWV4cGVjdGVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0Lmh0dHBzLWV4cGVjdGVkLmh0bWwKQEAgLTIsNCArMiw0IEBA
CiA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiA8dGl0bGU+R3JlZW4gc3ZnIGJveCByZWZlcmVuY2Ug
ZmlsZTwvdGl0bGU+CiA8cD5QYXNzIGlmIHlvdSBzZWUgYSBncmVlbiBib3ggYmVsb3cuPC9wPgot
PGlmcmFtZSBzcmM9InJlc291cmNlcy9zdmctdGFyZ2V0LXJlZnRlc3QtMDAxLWZyYW1lLmh0bWwi
PgorPGlmcmFtZSBzcmM9InN2Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbCI+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItb25lZGF5Lmh0dHBzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItb25lZGF5Lmh0dHBzLmh0bWwKaW5kZXgg
ZDliOWZjZmI4ZGIzN2VhM2IwZDU3MTI1MGIyMmI4OGNhNzM1NDc3Mi4uZTdhOGFhNDJkMzA3Nzk5
YjE1N2ZkMzk5NGFjMjkxZDVjNTk2YmZkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
dXBkYXRlLWFmdGVyLW9uZWRheS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Vw
ZGF0ZS1hZnRlci1vbmVkYXkuaHR0cHMuaHRtbApAQCAtNDAsNyArNDAsNyBAQCBwcm9taXNlX3Rl
c3QoZnVuY3Rpb24odCkgewogICAgICAgICB9KQogICAgICAgLnRoZW4oZnVuY3Rpb24oKSB7CiAg
ICAgICAgICAgLy8gVHJpZ2dlciBhIG5vbi1uYXZpZ2F0aW9uIGZldGNoIGV2ZW50Ci0gICAgICAg
ICAgZnJhbWUuY29udGVudFdpbmRvdy5sb2FkX2ltYWdlKG5vcm1hbGl6ZVVSTCgncmVzb3VyY2Vz
L3VwZGF0ZS9kdW1teScpKTsKKyAgICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmxvYWRfaW1h
Z2Uobm9ybWFsaXplVVJMKCdyZXNvdXJjZXMvdXBkYXRlL3NhbXBsZScpKTsKICAgICAgICAgICBy
ZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHJlZ2lzdHJhdGlvbik7CiAgICAgICAgfSkKICAgICAg
ICAudGhlbihmdW5jdGlvbigpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0
ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1jb3JzLWltcG9ydC5odHRwcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZDEwYzg3ODZiYTM1YmUzOTI3MmQ0MmQ3ZjdhZGNhOGI4YTAwMTJmOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBv
cnQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKKworSGFybmVzcyBFcnJvciAo
VElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKK1BBU1MgVGVzdChtYWluOiBkZWZhdWx0LCBpbXBv
cnRlZDogZGVmYXVsdCkKK1RJTUVPVVQgVGVzdChtYWluOiBkZWZhdWx0LCBpbXBvcnRlZDogdGlt
ZSkgVGVzdCB0aW1lZCBvdXQKK05PVFJVTiBUZXN0KG1haW46IHRpbWUsIGltcG9ydGVkOiBkZWZh
dWx0KQorTk9UUlVOIFRlc3QobWFpbjogdGltZSwgaW1wb3J0ZWQ6IHRpbWUpCitOT1RSVU4gVGVz
dCBtb2R1bGUgc2NyaXB0KG1haW46IGRlZmF1bHQsIGltcG9ydGVkOiBkZWZhdWx0KQorTk9UUlVO
IFRlc3QgbW9kdWxlIHNjcmlwdChtYWluOiBkZWZhdWx0LCBpbXBvcnRlZDogdGltZSkKK05PVFJV
TiBUZXN0IG1vZHVsZSBzY3JpcHQobWFpbjogdGltZSwgaW1wb3J0ZWQ6IGRlZmF1bHQpCitOT1RS
VU4gVGVzdCBtb2R1bGUgc2NyaXB0KG1haW46IHRpbWUsIGltcG9ydGVkOiB0aW1lKQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0
dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0
Lmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTIxYTczNzhlMzU4ZDYzMmNlZTNlZjU2ZTc5YTE5Yzg2
NWVhNWMzZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRl
Y2hlY2stY29ycy1pbXBvcnQuaHR0cHMuaHRtbApAQCAtMCwwICsxLDkyIEBACis8IWRvY3R5cGUg
aHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+PC90aXRsZT4KKzxtZXRhIG5hbWU9
InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0aGFybmVzcy1o
ZWxwZXJzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJz
LnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1
Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorLy8gVGVzdHMgb2YgdXBkYXRpbmcgYSBzZXJ2aWNl
IHdvcmtlci4gVGhpcyBmaWxlIGNvbnRhaW5zIGNvcnMgY2FzZXMgb25seS4KKworLyoKKyAqIEBw
YXJhbSBzdHJpbmcgbWFpbgorICogICBEZWNpZGUgdGhlIGNvbnRlbnQgb2YgdGhlIG1haW4gc2Ny
aXB0LCB3aGVyZSAnZGVmYXVsdCcgaXMgZm9yIGNvbnN0YW50CisgKiAgIGNvbnRlbnQgd2hpbGUg
J3RpbWUnIGlzIGZvciB0aW1lLXZhcmlhbnQgY29udGVudC4KKyAqIEBwYXJhbSBzdHJpbmcgaW1w
b3J0ZWQKKyAqICAgRGVjaWRlIHRoZSBjb250ZW50IG9mIHRoZSBpbXBvcnRlZCBzY3JpcHQsIHdo
ZXJlICdkZWZhdWx0JyBpcyBmb3IgY29uc3RhbnQKKyAqICAgY29udGVudCB3aGlsZSAndGltZScg
aXMgZm9yIHRpbWUtdmFyaWFudCBjb250ZW50LgorICovCitjb25zdCBzZXR0aW5ncyA9IFt7bWFp
bjogJ2RlZmF1bHQnLCBpbXBvcnRlZDogJ2RlZmF1bHQnfSwKKyAgICAgICAgICAgICAgICAgIHtt
YWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAndGltZScgICB9LAorICAgICAgICAgICAgICAgICAg
e21haW46ICd0aW1lJywgICAgaW1wb3J0ZWQ6ICdkZWZhdWx0J30sCisgICAgICAgICAgICAgICAg
ICB7bWFpbjogJ3RpbWUnLCAgICBpbXBvcnRlZDogJ3RpbWUnICAgfV07CisKK2NvbnN0IGhvc3Rf
aW5mbyA9IGdldF9ob3N0X2luZm8oKTsKK3NldHRpbmdzLmZvckVhY2goKHttYWluLCBpbXBvcnRl
ZH0pID0+IHsKKyAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgICAgLy8gU3BlY2lmeSBh
IGNyb3NzIG9yaWdpbiBwYXRoIHRvIGxvYWQgaW1wb3J0ZWQgc2NyaXB0cyBmcm9tIGEgY3Jvc3Mg
b3JpZ2luLgorICAgIGNvbnN0IHBhdGggPSBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiAr
CisgICAgICAgICAgICAgICAgICcvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy8nOworICAgIGNvbnN0IHNjcmlwdCA9ICdyZXNvdXJjZXMvYnl0ZWNoZWNrLXdvcmtlci5w
eScgKworICAgICAgICAgICAgICAgICAgICc/bWFpbj0nICsgbWFpbiArCisgICAgICAgICAgICAg
ICAgICAgJyZpbXBvcnRlZD0nICsgaW1wb3J0ZWQgKworICAgICAgICAgICAgICAgICAgICcmcGF0
aD0nICsgcGF0aCArCisgICAgICAgICAgICAgICAgICAgJyZ0eXBlPWNsYXNzaWMnOworICAgIGNv
bnN0IHNjb3BlID0gJ3Jlc291cmNlcy9ibGFuay5odG1sJzsKKworICAgIC8vIFJlZ2lzdGVyIGEg
c2VydmljZSB3b3JrZXIuCisgICAgY29uc3Qgc3dyID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5y
ZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBzY29wZSk7CisgICAgdC5hZGRfY2xlYW51
cCgoKSA9PiBzd3IudW5yZWdpc3RlcigpKTsKKyAgICBjb25zdCBzdyA9IGF3YWl0IHdhaXRfZm9y
X3VwZGF0ZSh0LCBzd3IpOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHN3LCAnYWN0aXZh
dGVkJyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwgc3dyLndhaXRpbmcs
IHN3ci5pbnN0YWxsaW5nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVs
bF0pOworCisgICAgLy8gVXBkYXRlIHRoZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24uCisg
ICAgYXdhaXQgc3dyLnVwZGF0ZSgpOworCisgICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJlIGEgbmV3
IHNlcnZpY2Ugd29ya2VyLgorICAgIGlmIChtYWluID09PSAndGltZScgfHwgaW1wb3J0ZWQgPT09
ICd0aW1lJykgeworICAgICAgcmV0dXJuIHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIH0K
KyAgICAvLyBPdGhlcndpc2UsIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVkIHNl
cnZpY2Ugd29ya2VyLgorICAgIGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53
YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10sCisgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51
bGwsIG51bGxdKTsKKyAgfSwgYFRlc3QobWFpbjogJHttYWlufSwgaW1wb3J0ZWQ6ICR7aW1wb3J0
ZWR9KWApOworfSk7CisKK3NldHRpbmdzLmZvckVhY2goKHttYWluLCBpbXBvcnRlZH0pID0+IHsK
KyAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgICAgLy8gU3BlY2lmeSBhIGNyb3NzIG9y
aWdpbiBwYXRoIHRvIGxvYWQgaW1wb3J0ZWQgc2NyaXB0cyBmcm9tIGEgY3Jvc3Mgb3JpZ2luLgor
ICAgIGNvbnN0IHBhdGggPSBob3N0X2luZm8uSFRUUFNfUkVNT1RFX09SSUdJTiArCisgICAgICAg
ICAgICAgICAgICcvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy8nOwor
ICAgIGNvbnN0IHNjcmlwdCA9ICdyZXNvdXJjZXMvYnl0ZWNoZWNrLXdvcmtlci5weScgKworICAg
ICAgICAgICAgICAgICAgICc/bWFpbj0nICsgbWFpbiArCisgICAgICAgICAgICAgICAgICAgJyZp
bXBvcnRlZD0nICsgaW1wb3J0ZWQgKworICAgICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0
aCArCisgICAgICAgICAgICAgICAgICAgJyZ0eXBlPW1vZHVsZSc7CisgICAgY29uc3Qgc2NvcGUg
PSAncmVzb3VyY2VzL2JsYW5rLmh0bWwnOworCisgICAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdv
cmtlci4KKyAgICBjb25zdCBzd3IgPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2Fu
ZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3BlLCB7dHlwZTogJ21vZHVsZSd9KTsKKyAgICB0LmFk
ZF9jbGVhbnVwKCgpID0+IHN3ci51bnJlZ2lzdGVyKCkpOworICAgIGNvbnN0IHN3ID0gYXdhaXQg
d2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgc3cs
ICdhY3RpdmF0ZWQnKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iu
d2FpdGluZywgc3dyLmluc3RhbGxpbmddLAorICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBu
dWxsLCBudWxsXSk7CisKKyAgICAvLyBVcGRhdGUgdGhlIHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJh
dGlvbi4KKyAgICBhd2FpdCBzd3IudXBkYXRlKCk7CisKKyAgICAvLyBJZiB0aGVyZSBzaG91bGQg
YmUgYSBuZXcgc2VydmljZSB3b3JrZXIuCisgICAgaWYgKG1haW4gPT09ICd0aW1lJyB8fCBpbXBv
cnRlZCA9PT0gJ3RpbWUnKSB7CisgICAgICByZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7
CisgICAgfQorICAgIC8vIE90aGVyd2lzZSwgbWFrZSBzdXJlIHRoZXJlIGlzIG5vIG5ld2x5IGNy
ZWF0ZWQgc2VydmljZSB3b3JrZXIuCisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2
ZSwgc3dyLndhaXRpbmcsIHN3ci5pbnN0YWxsaW5nXSwKKyAgICAgICAgICAgICAgICAgICAgICAg
IFtzdywgbnVsbCwgbnVsbF0pOworICB9LCBgVGVzdCBtb2R1bGUgc2NyaXB0KG1haW46ICR7bWFp
bn0sIGltcG9ydGVkOiAke2ltcG9ydGVkfSlgKTsKK30pOworPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLmh0dHBzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLmh0dHBzLmh0bWwKaW5kZXggNjYyOGRiYTZlZTdk
MTFhZTBjZDQ1OTQxYzcyNmRmMDE3YWZiOTMzNi4uM2U1YTI4YmI2N2NiNzU2MjRhNWRkOThiZDE1
ZTEzN2U1NWM4N2IwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVj
aGVjay5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2su
aHR0cHMuaHRtbApAQCAtOCwxMCArOCw5IEBACiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3Qt
aGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9jb21tb24vZ2V0LWhvc3Qt
aW5mby5zdWIuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KKy8vIFRlc3RzIG9mIHVwZGF0aW5nIGEg
c2VydmljZSB3b3JrZXIuIFRoaXMgZmlsZSBjb250YWlucyBub24tY29ycyBjYXNlcyBvbmx5Lgog
CiAvKgotICogQHBhcmFtIGJvbGVhbiBjb3JzCi0gKiAgIERldGVybWluZSB3ZXRoZXIgdGhlIGlt
cG9ydGVkIHNjcmlwdCBzaG91bGQgYmUgYSBjcm9zcyBvcmlnaW4gc2NyaXB0LgogICogQHBhcmFt
IHN0cmluZyBtYWluCiAgKiAgIERlY2lkZSB0aGUgY29udGVudCBvZiB0aGUgbWFpbiBzY3JpcHQs
IHdoZXJlICdkZWZhdWx0JyBpcyBmb3IgY29uc3RhbnQKICAqICAgY29udGVudCB3aGlsZSAndGlt
ZScgaXMgZm9yIHRpbWUtdmFyaWFudCBjb250ZW50LgpAQCAtMTksNTcgKzE4LDc1IEBACiAgKiAg
IERlY2lkZSB0aGUgY29udGVudCBvZiB0aGUgaW1wb3J0ZWQgc2NyaXB0LCB3aGVyZSAnZGVmYXVs
dCcgaXMgZm9yIGNvbnN0YW50CiAgKiAgIGNvbnRlbnQgd2hpbGUgJ3RpbWUnIGlzIGZvciB0aW1l
LXZhcmlhbnQgY29udGVudC4KICAqLwotY29uc3Qgc2V0dGluZ3MgPSBbe2NvcnM6IGZhbHNlLCBt
YWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAnZGVmYXVsdCd9LAotICAgICAgICAgICAgICAgICAg
e2NvcnM6IGZhbHNlLCBtYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAndGltZScgICB9LAotICAg
ICAgICAgICAgICAgICAge2NvcnM6IGZhbHNlLCBtYWluOiAndGltZScsICAgIGltcG9ydGVkOiAn
ZGVmYXVsdCd9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IGZhbHNlLCBtYWluOiAndGltZScs
ICAgIGltcG9ydGVkOiAndGltZScgICB9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IHRydWUs
ICBtYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAnZGVmYXVsdCd9LAotICAgICAgICAgICAgICAg
ICAge2NvcnM6IHRydWUsICBtYWluOiAnZGVmYXVsdCcsIGltcG9ydGVkOiAndGltZScgICB9LAot
ICAgICAgICAgICAgICAgICAge2NvcnM6IHRydWUsICBtYWluOiAndGltZScsICAgIGltcG9ydGVk
OiAnZGVmYXVsdCd9LAotICAgICAgICAgICAgICAgICAge2NvcnM6IHRydWUsICBtYWluOiAndGlt
ZScsICAgIGltcG9ydGVkOiAndGltZScgICB9XTsKK2NvbnN0IHNldHRpbmdzID0gW3ttYWluOiAn
ZGVmYXVsdCcsIGltcG9ydGVkOiAnZGVmYXVsdCd9LAorICAgICAgICAgICAgICAgICAge21haW46
ICdkZWZhdWx0JywgaW1wb3J0ZWQ6ICd0aW1lJyAgIH0sCisgICAgICAgICAgICAgICAgICB7bWFp
bjogJ3RpbWUnLCAgICBpbXBvcnRlZDogJ2RlZmF1bHQnfSwKKyAgICAgICAgICAgICAgICAgIHtt
YWluOiAndGltZScsICAgIGltcG9ydGVkOiAndGltZScgICB9XTsKIAogY29uc3QgaG9zdF9pbmZv
ID0gZ2V0X2hvc3RfaW5mbygpOwotc2V0dGluZ3MucmVkdWNlKChwLCBzKSA9PiB7Ci0gIHJldHVy
biBwLnRoZW4ocHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgcGF0aCA9ICFzLmNv
cnMgPyAnJwotICAgICAgICAgICAgICAgICAgICAgICA6IGhvc3RfaW5mby5IVFRQU19SRU1PVEVf
T1JJR0lOICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAnL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvJzsKLSAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9ieXRl
Y2hlY2std29ya2VyLnB5JyArCi0gICAgICAgICAgICAgICAgICc/bWFpbj0nICsgcy5tYWluICsK
LSAgICAgICAgICAgICAgICAgJyZpbXBvcnRlZD0nICsgcy5pbXBvcnRlZCArCi0gICAgICAgICAg
ICAgICAgICcmcGF0aD0nICsgcGF0aDsKLSAgICB2YXIgc2NvcGUgPSAncmVzb3VyY2VzL2JsYW5r
Lmh0bWwnOworc2V0dGluZ3MuZm9yRWFjaCgoe21haW4sIGltcG9ydGVkfSkgPT4geworICBwcm9t
aXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgICAvLyBFbXB0eSBwYXRoIHJlc3VsdHMgaW4gdGhl
IHNhbWUgb3JpZ2luIGltcG9ydGVkIHNjcmlwdHMuCisgICAgY29uc3QgcGF0aCA9ICcnOworICAg
IGNvbnN0IHNjcmlwdCA9ICdyZXNvdXJjZXMvYnl0ZWNoZWNrLXdvcmtlci5weScgKworICAgICAg
ICAgICAgICAgICAgICc/bWFpbj0nICsgbWFpbiArCisgICAgICAgICAgICAgICAgICAgJyZpbXBv
cnRlZD0nICsgaW1wb3J0ZWQgKworICAgICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aCAr
CisgICAgICAgICAgICAgICAgICAgJyZ0eXBlPWNsYXNzaWMnOworICAgIGNvbnN0IHNjb3BlID0g
J3Jlc291cmNlcy9ibGFuay5odG1sJzsKIAotICAgIHZhciBzd3IsIHN3OwotICAgIHJldHVybiBQ
cm9taXNlLnJlc29sdmUoKQotICAgICAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtlci4KLSAg
ICAgIC50aGVuKF8gPT4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwg
c2NyaXB0LCBzY29wZSkpCi0gICAgICAudGhlbihyID0+IHsKLSAgICAgICAgdC5hZGRfY2xlYW51
cCgoKSA9PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7Ci0gICAgICAgIHN3
ciA9IHI7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKLSAgICAgIH0p
Ci0gICAgICAudGhlbih3ID0+IHN3ID0gdykKLSAgICAgIC50aGVuKF8gPT4gd2FpdF9mb3Jfc3Rh
dGUodCwgc3csICdhY3RpdmF0ZWQnKSkKLSAgICAgIC50aGVuKF8gPT4gYXNzZXJ0X2FycmF5X2Vx
dWFscyhbc3dyLmFjdGl2ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3dyLndhaXRpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3ci5p
bnN0YWxsaW5nXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51
bGwsIG51bGxdKSkKKyAgICAvLyBSZWdpc3RlciBhIHNlcnZpY2Ugd29ya2VyLgorICAgIGNvbnN0
IHN3ciA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHNj
cmlwdCwgc2NvcGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gc3dyLnVucmVnaXN0ZXIoKSk7
CisgICAgY29uc3Qgc3cgPSBhd2FpdCB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICBhd2Fp
dCB3YWl0X2Zvcl9zdGF0ZSh0LCBzdywgJ2FjdGl2YXRlZCcpOworICAgIGFzc2VydF9hcnJheV9l
cXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10sCisgICAgICAg
ICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsKIAotICAgICAgLy8gVXBkYXRlIHRo
ZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24uCi0gICAgICAudGhlbihfID0+IHN3ci51cGRh
dGUoKSkKLSAgICAgIC50aGVuKF8gPT4gewotICAgICAgICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJl
IGEgbmV3IHNlcnZpY2Ugd29ya2VyLgotICAgICAgICAgaWYgKHMubWFpbiA9PT0gJ3RpbWUnIHx8
IHMuaW1wb3J0ZWQgPT09ICd0aW1lJykgewotICAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfdXBk
YXRlKHQsIHN3cik7Ci0gICAgICAgICB9Ci0gICAgICAgICAvLyBPdGhlcndpc2UsIG1ha2Ugc3Vy
ZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVkIHNlcnZpY2Ugd29ya2VyLgotICAgICAgICAgYXNz
ZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHN3ci53YWl0aW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dyLmluc3Rh
bGxpbmddLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsK
LSAgICAgIH0pOwotICB9LCBgVGVzdChjb3JzOiAke3MuY29yc30sIG1haW46ICR7cy5tYWlufSwg
aW1wb3J0ZWQ6ICR7cy5pbXBvcnRlZH0pYCkpOwotfSwgUHJvbWlzZS5yZXNvbHZlKCkpOworICAg
IC8vIFVwZGF0ZSB0aGUgc2VydmljZSB3b3JrZXIgcmVnaXN0cmF0aW9uLgorICAgIGF3YWl0IHN3
ci51cGRhdGUoKTsKIAorICAgIC8vIElmIHRoZXJlIHNob3VsZCBiZSBhIG5ldyBzZXJ2aWNlIHdv
cmtlci4KKyAgICBpZiAobWFpbiA9PT0gJ3RpbWUnIHx8IGltcG9ydGVkID09PSAndGltZScpIHsK
KyAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICB9CisgICAgLy8gT3Ro
ZXJ3aXNlLCBtYWtlIHN1cmUgdGhlcmUgaXMgbm8gbmV3bHkgY3JlYXRlZCBzZXJ2aWNlIHdvcmtl
ci4KKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dy
Lmluc3RhbGxpbmddLAorICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7
CisgIH0sIGBUZXN0KG1haW46ICR7bWFpbn0sIGltcG9ydGVkOiAke2ltcG9ydGVkfSlgKTsKK30p
OworCitzZXR0aW5ncy5mb3JFYWNoKCh7bWFpbiwgaW1wb3J0ZWR9KSA9PiB7CisgIHByb21pc2Vf
dGVzdChhc3luYyAodCkgPT4geworICAgIC8vIEVtcHR5IHBhdGggcmVzdWx0cyBpbiB0aGUgc2Ft
ZSBvcmlnaW4gaW1wb3J0ZWQgc2NyaXB0cy4KKyAgICBjb25zdCBwYXRoID0gJy4vJzsKKyAgICBj
b25zdCBzY3JpcHQgPSAncmVzb3VyY2VzL2J5dGVjaGVjay13b3JrZXIucHknICsKKyAgICAgICAg
ICAgICAgICAgICAnP21haW49JyArIG1haW4gKworICAgICAgICAgICAgICAgICAgICcmaW1wb3J0
ZWQ9JyArIGltcG9ydGVkICsKKyAgICAgICAgICAgICAgICAgICAnJnBhdGg9JyArIHBhdGggKwor
ICAgICAgICAgICAgICAgICAgICcmdHlwZT1tb2R1bGUnOworICAgIGNvbnN0IHNjb3BlID0gJ3Jl
c291cmNlcy9ibGFuay5odG1sJzsKKworICAgIC8vIFJlZ2lzdGVyIGEgbW9kdWxlIHNlcnZpY2Ug
d29ya2VyLgorICAgIGNvbnN0IHN3ciA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJf
YW5kX3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2NvcGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dHlwZTogJ21vZHVsZSd9KTsKKwor
ICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gc3dyLnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgc3cg
PSBhd2FpdCB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0
ZSh0LCBzdywgJ2FjdGl2YXRlZCcpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3Rp
dmUsIHN3ci53YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10sCisgICAgICAgICAgICAgICAgICAgICAg
ICBbc3csIG51bGwsIG51bGxdKTsKKworICAgIC8vIFVwZGF0ZSB0aGUgc2VydmljZSB3b3JrZXIg
cmVnaXN0cmF0aW9uLgorICAgIGF3YWl0IHN3ci51cGRhdGUoKTsKKworICAgIC8vIElmIHRoZXJl
IHNob3VsZCBiZSBhIG5ldyBzZXJ2aWNlIHdvcmtlci4KKyAgICBpZiAobWFpbiA9PT0gJ3RpbWUn
IHx8IGltcG9ydGVkID09PSAndGltZScpIHsKKyAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUo
dCwgc3dyKTsKKyAgICB9CisgICAgLy8gT3RoZXJ3aXNlLCBtYWtlIHN1cmUgdGhlcmUgaXMgbm8g
bmV3bHkgY3JlYXRlZCBzZXJ2aWNlIHdvcmtlci4KKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFtz
d3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dyLmluc3RhbGxpbmddLAorICAgICAgICAgICAgICAg
ICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7CisgIH0sIGBUZXN0IG1vZHVsZSBzY3JpcHQobWFp
bjogJHttYWlufSwgaW1wb3J0ZWQ6ICR7aW1wb3J0ZWR9KWApOworfSk7CiA8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1tb2R1bGUtcmVxdWVzdC1tb2RlLmh0
dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1tb2R1bGUtcmVxdWVz
dC1tb2RlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMjhlMWI4MzE0MDRhMWE3YzJm
NzZhNjY3ZDVmZTBjMWFkMzM3ZDlkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMyBAQAorCitGQUlMIGhlYWRlcnMgb2YgYSBtYWluIG1vZHVsZSBzY3JpcHQgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgKHN0cmluZykgInNhbWUtb3JpZ2luIiBidXQgZ290ICh1bmRlZmluZWQp
IHVuZGVmaW5lZAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9kdWxl
LXJlcXVlc3QtbW9kZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVs
ZS1yZXF1ZXN0LW1vZGUuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMzg3NWQyMDdiYzI1MmRlYThl
NDNjMWI1ODVmZWJlNmQ2YTEwZjBiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMuaHRtbApAQCAtMCwwICsxLDQ1IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxtZXRhIG5hbWU9InRp
bWVvdXQiIGNvbnRlbnQ9ImxvbmciPgorPHRpdGxlPlRlc3QgdGhhdCBtb2RlIGlzIHNldCB0byBz
YW1lLW9yaWdpbiBmb3IgYSBtYWluIG1vZHVsZTwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rl
c3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKy8vIFRlc3RzIGEgbWFpbiBt
b2R1bGUgc2VydmljZSB3b3JrZXIgc2NyaXB0IGZldGNoIGR1cmluZyBhbiB1cGRhdGUgY2hlY2su
CisvLyBUaGUgZmV0Y2ggc2hvdWxkIGhhdmUgdGhlIG1vZGUgc2V0IHRvICdzYW1lLW9yaWdpbicu
CisvLworLy8gVGhlIHRlc3Qgd29ya3MgYnkgcmVnaXN0ZXJpbmcgYSBtYWluIG1vZHVsZSBzZXJ2
aWNlIHdvcmtlci4gSXQgdGhlbiBkb2VzIGFuCisvLyB1cGRhdGUuIFRoZSB0ZXN0IHNlcnZlciBy
ZXNwb25kcyB3aXRoIGFuIHVwZGF0ZWQgd29ya2VyIHNjcmlwdCB0aGF0IHJlbWVtYmVycworLy8g
dGhlIGh0dHAgcmVxdWVzdC4gVGhlIHVwZGF0ZWQgd29ya2VyIHJlcG9ydHMgYmFjayB0aGlzIHJl
cXVlc3QgdG8gdGhlIHRlc3QKKy8vIHBhZ2UuCitwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsK
KyAgY29uc3Qgc2NyaXB0ID0gInJlc291cmNlcy90ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIucHki
OworICBjb25zdCBzY29wZSA9ICJyZXNvdXJjZXMvIjsKKworICAvLyBSZWdpc3RlciB0aGUgc2Vy
dmljZSB3b3JrZXIuCisgIGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUp
OworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5y
ZWdpc3RlcigKKyAgICAgIHNjcmlwdCwge3Njb3BlLCB0eXBlOiAnbW9kdWxlJ30pOworICBhd2Fp
dCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcp
OworCisgIC8vIERvIGFuIHVwZGF0ZS4KKyAgYXdhaXQgcmVnaXN0cmF0aW9uLnVwZGF0ZSgpOwor
CisgIC8vIEFzayB0aGUgbmV3IHdvcmtlciB3aGF0IHRoZSByZXF1ZXN0IHdhcy4KKyAgY29uc3Qg
bmV3V29ya2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7CisgIGNvbnN0IHNhd01lc3NhZ2Ug
PSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geworICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2Vy
Lm9ubWVzc2FnZSA9IChldmVudCkgPT4geworICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAg
ICB9OworICB9KTsKKyAgbmV3V29ya2VyLnBvc3RNZXNzYWdlKCdnZXRIZWFkZXJzJyk7CisgIGNv
bnN0IHJlc3VsdCA9IGF3YWl0IHNhd01lc3NhZ2U7CisKKyAgLy8gVGVzdCB0aGUgcmVzdWx0Lgor
ICBhc3NlcnRfZXF1YWxzKHJlc3VsdFsnc2VjLWZldGNoLW1vZGUnXSwgJ3NhbWUtb3JpZ2luJyk7
CisgIGFzc2VydF9lcXVhbHMocmVzdWx0WydvcmlnaW4nXSwgdW5kZWZpbmVkKTsKKworfSwgJ2hl
YWRlcnMgb2YgYSBtYWluIG1vZHVsZSBzY3JpcHQnKTsKKworPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3cz
Yy1pbXBvcnQubG9nCmluZGV4IGFlZmJjOTM3YmU2ZjJkYzA0NGZlZTk4MTc1MDAzMzg4ZjU1Mzc4
ZWQuLjk4YmQ4NmEwMjRjMDkwNTYxNzFhY2NiNjhkODAxNDkwNGIyNTY2OWIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3czYy1pbXBvcnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3czYy1pbXBvcnQubG9nCkBAIC0zMSwxMCArMzEsMTIgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMuaHRtbAogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2NsaWVudC1pZC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LW5h
dmlnYXRlLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtdXJsLW9mLWJsb2It
dXJsLXdvcmtlci5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1nZXQtY2xp
ZW50LXR5cGVzLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLWdldC1jcm9z
cy1vcmlnaW4uaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtZ2V0LXJlc3Vs
dGluZ0NsaWVudElkLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLWdldC5o
dHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13
b3JrZXIuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtY2xp
ZW50LXR5cGVzLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxs
LWV4YWN0LWNvbnRyb2xsZXIuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMt
bWF0Y2hhbGwtZnJvemVuLmh0dHBzLmh0bWwKQEAgLTY5LDEwICs3MSw2IEBAIExpc3Qgb2YgZmls
ZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtYWZ0ZXItbmF2aWdhdGlvbi13aXRo
aW4tcGFnZS5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtYXN5bmMt
cmVzcG9uZC13aXRoLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1o
YW5kbGVkLmh0dHBzLmh0bWwKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0
b3J5LWJhY2t3YXJkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKLS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWZvcndhcmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0
cHMuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUt
bmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2
ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtZXZlbnQtbmV0d29yay1lcnJvci5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtZXZlbnQtcmVkaXJlY3QuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sCkBAIC04NSw3ICs4Myw2IEBA
IExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVzcG9uZC13
aXRoLXJlc3BvbnNlLWJvZHktd2l0aC1pbnZhbGlkLWNodW5rLmh0dHBzLmh0bWwKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZXNwb25kLXdpdGgtc3RvcHMtcHJvcGFnYXRpb24uaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXRocm93cy1hZnRlci1yZXNw
b25kLXdpdGguaHR0cHMuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdpdGhp
bi1zdy1tYW51YWwuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXdp
dGhpbi1zdy5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd29ya2Vy
LXRpbWluZy1mcmFtZS50ZW50YXRpdmUuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLWV2ZW50Lmh0dHBzLmh0bWwKQEAgLTEwMCw2ICs5Nyw3IEBAIExpc3Qgb2YgZmlsZXM6CiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1uby1mcmVzaG5lc3MtaGVhZGVycy5odHRw
cy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5odHRwcy5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMuaHR0cHMuaHRt
bAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMu
d2luZG93LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1vbi13
b3JrZXIuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5
bmMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLmh0dHBz
Lmh0bWwKQEAgLTEwOSw5ICsxMDcsMTAgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9nZXRyZWdpc3RyYXRpb24uaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dldHJl
Z2lzdHJhdGlvbnMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNl
d29ya2VyLmh0dHBzLmFueS5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMu
YW55LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaHR0cC10by1odHRwcy1yZWRpcmVjdC1hbmQtcmVn
aXN0ZXIuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltbXV0YWJsZS1wcm90b3R5cGUt
c2VydmljZXdvcmtlci5odHRwcy5odG1sCi0vTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1vZHVs
ZS1zY3JpcHRzLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtc2NyaXB0cy1j
cm9zcy1vcmlnaW4uaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRz
LW1pbWUtdHlwZXMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRz
LXJlZGlyZWN0Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtc2NyaXB0cy1y
ZXNvdXJjZS1tYXAuaHR0cHMuaHRtbApAQCAtMTMwLDEwICsxMjksMTQgQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9tdWx0aXBsZS11cGRhdGUuaHR0cHMuaHRtbAogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL25hdmlnYXRlLXdpbmRvdy5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC1ib2R5Lmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJlc29sdXRpb24uaHR0cHMuaHRtbAogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3QtdG8taHR0cC5odHRwcy5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25lc3Rl
ZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXh0LWhv
cC1wcm90b2NvbC5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBv
cnQtaW4tbW9kdWxlLmFueS5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0
LmFueS5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL29uYWN0aXZhdGUtc2NyaXB0LWVycm9yLmh0dHBz
Lmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9vbmluc3RhbGwtc2NyaXB0LWVycm9yLmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9vcGFxdWUtcmVzcG9uc2UtcHJlbG9hZGVkLmh0dHBzLmh0
bWwKQEAgLTE2MCw3ICsxNjMsOSBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi1pZnJhbWUuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lz
dHJhdGlvbi1taW1lLXR5cGVzLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Ry
YXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Ry
YXRpb24tc2NvcGUtbW9kdWxlLXN0YXRpYy1pbXBvcnQuaHR0cHMuaHRtbAogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVnaXN0cmF0aW9uLXNjcmlwdC1tb2R1bGUuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi1zY3JpcHQtdXJsLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZWdpc3RyYXRpb24tc2NyaXB0Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Ry
YXRpb24tc2VjdXJpdHktZXJyb3IuaHR0cHMuaHRtbApAQCAtMTk5LDkgKzIwNCwxMSBAQCBMaXN0
IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1hZnRlci1uYXZpZ2F0aW9uLWZl
dGNoLWV2ZW50Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItbmF2
aWdhdGlvbi1yZWRpcmVjdC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWFm
dGVyLW9uZWRheS5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVj
ay1jb3JzLWltcG9ydC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVj
aGVjay5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWltcG9ydC1zY3JpcHRz
Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbWlzc2luZy1pbXBvcnQtc2Ny
aXB0cy5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0
LW1vZGUuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1uby1jYWNoZS1yZXF1
ZXN0LWhlYWRlcnMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ub3QtYWxs
b3dlZC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW9uLW5hdmlnYXRpb24u
aHR0cHMuaHRtbApAQCAtMjE4LDUgKzIyNSw2IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvd29ya2VyLWluLXNhbmRib3hlZC1pZnJhbWUtYnktY3NwLWZldGNoLWV2ZW50Lmh0
dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW50ZXJjZXB0aW9uLXJlZGlyZWN0
Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBz
Lmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93
LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLXJlc3BvbnNlLXVybC5odHRwcy5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIveHNsLWJhc2UtdXJsLmh0dHBzLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3dpbmRvd2NsaWVudC1uYXZpZ2F0ZS5odHRwcy5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvd2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKaW5kZXggNGZkMmFhMWQw
NmY2MmZjOTZjYTAwZGQ2NTZjOTA3Y2E1MGVmNWMyYy4uYWQ2MGY3ODYzNjNkNmFjNDE1N2Q5YTQz
NzJlMjViNmIxNTU0NDEwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd2luZG93Y2xp
ZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd2luZG93Y2xp
ZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwKQEAgLTExLDExMiArMTEsMTM2IEBACiAKIGNvbnN0IFND
T1BFID0gJ3Jlc291cmNlcy9ibGFuay5odG1sJzsKIGNvbnN0IFNDUklQVF9VUkwgPSAncmVzb3Vy
Y2VzL3dpbmRvd2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMnOwotY29uc3QgQ1JPU1NfT1JJR0lO
X1VSTCA9IGdldF9ob3N0X2luZm8oKVsnSFRUUFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRo
KCkgKwotICAgICdyZXNvdXJjZXMvYmxhbmsuaHRtbCc7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAg
IGRlc2NyaXB0aW9uOiAnbm9ybWFsJywKLSAgICBkZXN0X3VybDogJ2JsYW5rLmh0bWw/bmF2aWdh
dGUnLAotICAgIGV4cGVjdGVkOiBub3JtYWxpemVVUkwoU0NPUEUpICsgJz9uYXZpZ2F0ZScsCi0g
IH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjogJ2JsYW5rIHVybCcsCi0g
ICAgZGVzdF91cmw6ICcnLAotICAgIGV4cGVjdGVkOiBub3JtYWxpemVVUkwoU0NSSVBUX1VSTCkK
LSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW4gc2NvcGUgYnV0
IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gaW5zdGFsbGluZyB3b3JrZXInLAotICAgIGRlc3RfdXJs
OiAnYmxhbmsuaHRtbD9uYXZpZ2F0ZScsCi0gICAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAotICAg
IHdhaXRfc3RhdGU6ICdpbnN0YWxsaW5nJywKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAg
IGRlc2NyaXB0aW9uOiAnaW4gc2NvcGUgYnV0IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gYWN0aXZl
IHdvcmtlcicsCi0gICAgZGVzdF91cmw6ICdibGFuay5odG1sP25hdmlnYXRlJywKLSAgICBleHBl
Y3RlZDogJ1R5cGVFcnJvcicsCi0gICAgc2hvdWxkX2JlX3JlbG9hZDogZmFsc2UsCi0gIH0pOwot
Ci1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjogJ291dCBvZiBzY29wZScsCi0gICAg
c3JjX3VybDogJy9jb21tb24vYmxhbmsuaHRtbCcsCi0gICAgZGVzdF91cmw6ICdibGFuay5odG1s
P25hdmlnYXRlJywKLSAgICBleHBlY3RlZDogJ1R5cGVFcnJvcicsCi0gIH0pOwotCi1uYXZpZ2F0
ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlvbjogJ2Nyb3NzIG9yZ2luIHVybCcsCi0gICAgZGVzdF91
cmw6IENST1NTX09SSUdJTl9VUkwsCi0gICAgZXhwZWN0ZWQ6IG51bGwKLSAgfSk7Ci0KLW5hdmln
YXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW52YWxpZCB1cmwgKGh0dHA6Ly9bZXhhbXBs
ZS5jb21dKScsCi0gICAgZGVzdF91cmw6ICdodHRwOi8vW2V4YW1wbGVdLmNvbScsCi0gICAgZXhw
ZWN0ZWQ6ICdUeXBlRXJyb3InCi0gIH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlw
dGlvbjogJ2ludmFsaWQgdXJsICh2aWV3LXNvdXJjZTovL2V4YW1wbGUuY29tKScsCi0gICAgZGVz
dF91cmw6ICd2aWV3LXNvdXJjZTovL2V4YW1wbGUuY29tJywKLSAgICBleHBlY3RlZDogJ1R5cGVF
cnJvcicKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW52YWxp
ZCB1cmwgKGZpbGU6Ly8vKScsCi0gICAgZGVzdF91cmw6ICdmaWxlOi8vLycsCi0gICAgZXhwZWN0
ZWQ6ICdUeXBlRXJyb3InCi0gIH0pOwotCi1uYXZpZ2F0ZV90ZXN0KHsKLSAgICBkZXNjcmlwdGlv
bjogJ2ludmFsaWQgdXJsIChhYm91dDpibGFuayknLAotICAgIGRlc3RfdXJsOiAnYWJvdXQ6Ymxh
bmsnLAotICAgIGV4cGVjdGVkOiAnVHlwZUVycm9yJwotICB9KTsKLQotZnVuY3Rpb24gbmF2aWdh
dGVfdGVzdChvdmVycmlkZV9wYXJhbWV0ZXJzKSB7Citjb25zdCBDUk9TU19PUklHSU5fVVJMID0K
KyAgZ2V0X2hvc3RfaW5mbygpWydIVFRQU19SRU1PVEVfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSAr
ICdyZXNvdXJjZXMvYmxhbmsuaHRtbCc7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9u
OiAnbm9ybWFsJywKKyAgZGVzdFVybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3Rl
ZDogbm9ybWFsaXplVVJMKFNDT1BFKSArICc/bmF2aWdhdGUnLAorfSk7CisKK25hdmlnYXRlVGVz
dCh7CisgIGRlc2NyaXB0aW9uOiAnYmxhbmsgdXJsJywKKyAgZGVzdFVybDogJycsCisgIGV4cGVj
dGVkOiBub3JtYWxpemVVUkwoU0NSSVBUX1VSTCkKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBk
ZXNjcmlwdGlvbjogJ2luIHNjb3BlIGJ1dCBub3QgY29udHJvbGxlZCB0ZXN0IG9uIGluc3RhbGxp
bmcgd29ya2VyJywKKyAgZGVzdFVybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3Rl
ZDogJ1R5cGVFcnJvcicsCisgIHdhaXRTdGF0ZTogJ2luc3RhbGxpbmcnLAorfSk7CisKK25hdmln
YXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAnaW4gc2NvcGUgYnV0IG5vdCBjb250cm9sbGVkIHRl
c3Qgb24gYWN0aXZlIHdvcmtlcicsCisgIGRlc3RVcmw6ICdibGFuay5odG1sP25hdmlnYXRlJywK
KyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAorICBjb250cm9sbGVkOiBmYWxzZSwKK30pOworCitu
YXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ291dCBvZiBzY29wZScsCisgIHNyY1VybDog
Jy9jb21tb24vYmxhbmsuaHRtbCcsCisgIGRlc3RVcmw6ICdibGFuay5odG1sP25hdmlnYXRlJywK
KyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InLAorfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2Ny
aXB0aW9uOiAnY3Jvc3Mgb3JnaW4gdXJsJywKKyAgZGVzdFVybDogQ1JPU1NfT1JJR0lOX1VSTCwK
KyAgZXhwZWN0ZWQ6IG51bGwKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjog
J2ludmFsaWQgdXJsIChodHRwOi8vW2V4YW1wbGUuY29tXSknLAorICBkZXN0VXJsOiAnaHR0cDov
L1tleGFtcGxlXS5jb20nLAorICBleHBlY3RlZDogJ1R5cGVFcnJvcicKK30pOworCituYXZpZ2F0
ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJsICh2aWV3LXNvdXJjZTovL2V4YW1w
bGUuY29tKScsCisgIGRlc3RVcmw6ICd2aWV3LXNvdXJjZTovL2V4YW1wbGUuY29tJywKKyAgZXhw
ZWN0ZWQ6ICdUeXBlRXJyb3InCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246
ICdpbnZhbGlkIHVybCAoZmlsZTovLy8pJywKKyAgZGVzdFVybDogJ2ZpbGU6Ly8vJywKKyAgZXhw
ZWN0ZWQ6ICdUeXBlRXJyb3InCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246
ICdpbnZhbGlkIHVybCAoYWJvdXQ6YmxhbmspJywKKyAgZGVzdFVybDogJ2Fib3V0OmJsYW5rJywK
KyAgZXhwZWN0ZWQ6ICdUeXBlRXJyb3InCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3Jp
cHRpb246ICduYXZpZ2F0ZSBvbiBhIHRvcC1sZXZlbCB3aW5kb3cgY2xpZW50JywKKyAgZGVzdFVy
bDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAorICBzcmNVcmw6ICdyZXNvdXJjZXMvbG9hZGVkLmh0
bWwnLAorICBzY29wZTogJ3Jlc291cmNlcy9sb2FkZWQuaHRtbCcsCisgIGV4cGVjdGVkOiBub3Jt
YWxpemVVUkwoU0NPUEUpICsgJz9uYXZpZ2F0ZScsCisgIGZyYW1lVHlwZTogJ3RvcC1sZXZlbCcK
K30pOworCithc3luYyBmdW5jdGlvbiBjcmVhdGVGcmFtZSh0LCBwYXJhbWV0ZXJzKSB7CisgIGlm
IChwYXJhbWV0ZXJzLmZyYW1lVHlwZSA9PT0gJ3RvcC1sZXZlbCcpIHsKKyAgICAvLyBXYWl0IGZv
ciB3aW5kb3cub3BlbiBpcyBjb21wbGV0ZWQuCisgICAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2
ZSA9PiB7CisgICAgICBjb25zdCB3aW4gPSB3aW5kb3cub3BlbihwYXJhbWV0ZXJzLnNyY1VybCk7
CisgICAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHdpbi5jbG9zZSgpKTsKKyAgICAgIHdpbmRvdy5h
ZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgKGUpID0+IHsKKyAgICAgICAgaWYgKGUuZGF0YS50
eXBlID09PSAnTE9BREVEJykgeworICAgICAgICAgIHJlc29sdmUoKTsKKyAgICAgICAgfQorICAg
ICAgfSk7CisgICAgfSk7CisgIH0KKworICBpZiAocGFyYW1ldGVycy5mcmFtZVR5cGUgPT09ICdu
ZXN0ZWQnKSB7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYXJhbWV0ZXJz
LnNyY1VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CisgIH0K
K30KKworZnVuY3Rpb24gbmF2aWdhdGVUZXN0KG92ZXJyaWRlUGFyYW1ldGVycykgewogICAvLyBk
ZWZhdWx0IHBhcmFtZXRlcnMKLSAgdmFyIHBhcmFtZXRlcnMgPSB7CisgIGNvbnN0IHBhcmFtZXRl
cnMgPSB7CiAgICAgZGVzY3JpcHRpb246IG51bGwsCi0gICAgc3JjX3VybDogU0NPUEUsCi0gICAg
ZGVzdF91cmw6IG51bGwsCisgICAgc3JjVXJsOiBTQ09QRSwKKyAgICBkZXN0VXJsOiBudWxsLAog
ICAgIGV4cGVjdGVkOiBudWxsLAotICAgIHdhaXRfc3RhdGU6ICdhY3RpdmF0ZWQnLAorICAgIHdh
aXRTdGF0ZTogJ2FjdGl2YXRlZCcsCiAgICAgc2NvcGU6IFNDT1BFLAotICAgIHNob3VsZF9iZV9y
ZWxvYWQ6IHRydWUKKyAgICBjb250cm9sbGVkOiB0cnVlLAorICAgIC8vIGBmcmFtZVR5cGVgIGNh
biBiZSAnbmVzdGVkJyBmb3IgYW4gaWZyYW1lIFdpbmRvd0NsaWVudCBvciAndG9wLWxldmVsJyBm
b3IKKyAgICAvLyBhIG1haW4gZnJhbWUgV2luZG93Q2xpZW50LgorICAgIGZyYW1lVHlwZTogJ25l
c3RlZCcKICAgfTsKLSAgdmFyIGtleTsKIAotICBmb3IgKGtleSBpbiBvdmVycmlkZV9wYXJhbWV0
ZXJzKQotICAgIHBhcmFtZXRlcnNba2V5XSA9IG92ZXJyaWRlX3BhcmFtZXRlcnNba2V5XTsKKyAg
Zm9yIChjb25zdCBrZXkgaW4gb3ZlcnJpZGVQYXJhbWV0ZXJzKQorICAgIHBhcmFtZXRlcnNba2V5
XSA9IG92ZXJyaWRlUGFyYW1ldGVyc1trZXldOwogCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0
ZXN0KSB7Ci0gICAgdmFyIHNlcnZpY2Vfd29ya2VyOwotICAgIHZhciBjbGllbnRfZnJhbWU7Ci0g
ICAgdmFyIHJlZ2lzdHJhdGlvbjsKLSAgICB2YXIgcGF1c2VkTGlmZWN5Y2xlUG9ydDsKLSAgICB2
YXIgc2NyaXB0X3VybCA9IFNDUklQVF9VUkw7CisgIHByb21pc2VfdGVzdChhc3luYyBmdW5jdGlv
bih0KSB7CisgICAgbGV0IHBhdXNlZExpZmVjeWNsZVBvcnQ7CisgICAgbGV0IHNjcmlwdFVybCA9
IFNDUklQVF9VUkw7CiAKICAgICAvLyBGb3IgaW4tc2NvcGUtYnV0LW5vdC1jb250cm9sbGVkIHRl
c3Qgb24gaW5zdGFsbGluZyB3b3JrZXIsCi0gICAgLy8gaWYgdGhlIHdhaXRfc3RhdGUgaXMgImlu
c3RhbGxpbmciLCB0aGVuIGFwcGVuZCB0aGUgcXVlcnkgdG8gc2NyaXB0X3VybC4KLSAgICBpZiAo
cGFyYW1ldGVycy53YWl0X3N0YXRlID09ICdpbnN0YWxsaW5nJykgewotICAgICAgc2NyaXB0X3Vy
bCArPSAnPycgKyBwYXJhbWV0ZXJzLndhaXRfc3RhdGU7Ci0KLSAgICAgIG5hdmlnYXRvci5zZXJ2
aWNlV29ya2VyLmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBmdW5jdGlvbihldmVudCkgewot
ICAgICAgICAgIGlmIChldmVudC5kYXRhLnBvcnQpIHsKLSAgICAgICAgICAgIHBhdXNlZExpZmVj
eWNsZVBvcnQgPSBldmVudC5kYXRhLnBvcnQ7Ci0gICAgICAgICAgfQotICAgICAgICB9KTsKKyAg
ICAvLyBpZiB0aGUgd2FpdFN0YXRlIGlzICJpbnN0YWxsaW5nIiwgdGhlbiBhcHBlbmQgdGhlIHF1
ZXJ5IHRvIHNjcmlwdFVybC4KKyAgICBpZiAocGFyYW1ldGVycy53YWl0U3RhdGUgPT09ICdpbnN0
YWxsaW5nJykgeworICAgICAgc2NyaXB0VXJsICs9ICc/JyArIHBhcmFtZXRlcnMud2FpdFN0YXRl
OworCisgICAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5hZGRFdmVudExpc3RlbmVyKCdtZXNz
YWdlJywgKGV2ZW50KSA9PiB7CisgICAgICAgIGlmIChldmVudC5kYXRhLnBvcnQpIHsKKyAgICAg
ICAgICBwYXVzZWRMaWZlY3ljbGVQb3J0ID0gZXZlbnQuZGF0YS5wb3J0OworICAgICAgICB9Cisg
ICAgICB9KTsKICAgICB9CiAKLSAgICB0ZXN0LmFkZF9jbGVhbnVwKGZ1bmN0aW9uKCkgewotICAg
ICAgaWYgKGNsaWVudF9mcmFtZSAmJiBjbGllbnRfZnJhbWUpIHsKLSAgICAgICAgY2xpZW50X2Zy
YW1lLnJlbW92ZSgpOwotICAgICAgfQotCisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7CiAgICAg
ICAvLyBTb21lIHRlc3RzIHJlcXVpcmUgdGhhdCB0aGUgd29ya2VyIHJlbWFpbiBpbiBhIGdpdmVu
IGxpZmVjeWNsZSBwaGFzZS4KICAgICAgIC8vICJDbGVhbiB1cCIgbG9naWMgZm9yIHRoZXNlIHRl
c3RzIHJlcXVpcmVzIHNpZ25hbGluZyB0aGUgd29ya2VyIHRvCiAgICAgICAvLyByZWxlYXNlIHRo
ZSBob2xkOyB0aGlzIGFsbG93cyB0aGUgd29ya2VyIHRvIGJlIHByb3Blcmx5IGRpc2NhcmRlZApA
QCAtMTI2LDQ3ICsxNTAsNDAgQEAgZnVuY3Rpb24gbmF2aWdhdGVfdGVzdChvdmVycmlkZV9wYXJh
bWV0ZXJzKSB7CiAgICAgICAgIC8vIHNwZWNpZmllZCBoZXJlIHNvbGVseSB0byBhaWQgaW4gdGVz
dCBkZWJ1Z2dpbmcuCiAgICAgICAgIHBhdXNlZExpZmVjeWNsZVBvcnQucG9zdE1lc3NhZ2UoJ2Nv
bnRpbnVlIGxpZmVjeWNsZScpOwogICAgICAgfQorICAgIH0pOwogCi0gICAgICBpZiAocmVnaXN0
cmF0aW9uKSB7Ci0gICAgICAgIHJldHVybiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpOwotICAg
ICAgfQorICAgIC8vIENyZWF0ZSBhIGZyYW1lIHRoYXQgaXMgbm90IGNvbnRyb2xsZWQgYnkgYSBz
ZXJ2aWNlIHdvcmtlci4KKyAgICBpZiAoIXBhcmFtZXRlcnMuY29udHJvbGxlZCkgeworICAgICAg
YXdhaXQgY3JlYXRlRnJhbWUodCwgcGFyYW1ldGVycyk7CisgICAgfQorCisgICAgY29uc3QgcmVn
aXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIo
CisgICAgICAgIHQsIHNjcmlwdFVybCwgcGFyYW1ldGVycy5zY29wZSk7CisgICAgY29uc3Qgc2Vy
dmljZVdvcmtlciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOworICAgIGF3YWl0IHdhaXRfZm9y
X3N0YXRlKHQsIHNlcnZpY2VXb3JrZXIsIHBhcmFtZXRlcnMud2FpdFN0YXRlKTsKKyAgICB0LmFk
ZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCkpOworCisgICAgLy8gQ3Jl
YXRlIGEgZnJhbWUgYWZ0ZXIgYSBzZXJ2aWNlIHdvcmtlciBpcyByZWdpc3RlcmVkIHNvIHRoYXQg
dGhlIGZybWFlIGlzCisgICAgLy8gY29udHJvbGxlZCBieSBhbiBhY3RpdmUgc2VydmljZSB3b3Jr
ZXIuCisgICAgaWYgKHBhcmFtZXRlcnMuY29udHJvbGxlZCkgeworICAgICAgYXdhaXQgY3JlYXRl
RnJhbWUodCwgcGFyYW1ldGVycyk7CisgICAgfQorCisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2Fp
dCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgIGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVz
c2FnZUNoYW5uZWwoKTsKKyAgICAgIGNoYW5uZWwucG9ydDEub25tZXNzYWdlID0gdC5zdGVwX2Z1
bmMocmVzb2x2ZSk7CisgICAgICBzZXJ2aWNlV29ya2VyLnBvc3RNZXNzYWdlKHsKKyAgICAgICAg
cG9ydDogY2hhbm5lbC5wb3J0MiwKKyAgICAgICAgdXJsOiBwYXJhbWV0ZXJzLmRlc3RVcmwsCisg
ICAgICAgIGNsaWVudFVybDogbmV3IFVSTChwYXJhbWV0ZXJzLnNyY1VybCwgbG9jYXRpb24pLnRv
U3RyaW5nKCksCisgICAgICAgIGZyYW1lVHlwZTogcGFyYW1ldGVycy5mcmFtZVR5cGUsCisgICAg
ICAgIGV4cGVjdGVkOiBwYXJhbWV0ZXJzLmV4cGVjdGVkLAorICAgICAgICBkZXNjcmlwdGlvbjog
cGFyYW1ldGVycy5kZXNjcmlwdGlvbiwKKyAgICAgIH0sIFtjaGFubmVsLnBvcnQyXSk7CiAgICAg
fSk7CiAKLSAgICByZXR1cm4gd2l0aF9pZnJhbWUocGFyYW1ldGVycy5zcmNfdXJsKQotICAgICAg
LnRoZW4oZnVuY3Rpb24oZnJhbWUpIHsKLSAgICAgICAgICBjbGllbnRfZnJhbWUgPSBmcmFtZTsK
LSAgICAgICAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIo
Ci0gICAgICAgICAgICAgIHRlc3QsIHNjcmlwdF91cmwsIHBhcmFtZXRlcnMuc2NvcGUpOwotICAg
ICAgICB9KQotICAgICAgLnRoZW4oZnVuY3Rpb24ocikgewotICAgICAgICAgIHJlZ2lzdHJhdGlv
biA9IHI7Ci0gICAgICAgICAgc2VydmljZV93b3JrZXIgPSByZWdpc3RyYXRpb24uaW5zdGFsbGlu
ZzsKLSAgICAgICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodGVzdCwgc2VydmljZV93b3JrZXIs
IHBhcmFtZXRlcnMud2FpdF9zdGF0ZSk7Ci0gICAgICAgIH0pCi0gICAgICAudGhlbihmdW5jdGlv
bigpIHsKLSAgICAgICAgICBpZiAocGFyYW1ldGVycy5zaG91bGRfYmVfcmVsb2FkKSB7Ci0gICAg
ICAgICAgICBjbGllbnRfZnJhbWUucmVtb3ZlKCk7Ci0gICAgICAgICAgICByZXR1cm4gd2l0aF9p
ZnJhbWUocGFyYW1ldGVycy5zcmNfdXJsKTsKLSAgICAgICAgICB9Ci0gICAgICAgICAgcmV0dXJu
IGNsaWVudF9mcmFtZTsKLSAgICAgICAgfSkKLSAgICAgIC50aGVuKGZ1bmN0aW9uKGZyYW1lKSB7
Ci0gICAgICAgICAgY2xpZW50X2ZyYW1lID0gZnJhbWU7Ci0gICAgICAgICAgcmV0dXJuIG5ldyBQ
cm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKLSAgICAgICAgICAgICAgdmFyIGNoYW5uZWwgPSBu
ZXcgTWVzc2FnZUNoYW5uZWwoKTsKLSAgICAgICAgICAgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3Nh
Z2UgPSB0ZXN0LnN0ZXBfZnVuYyhyZXNvbHZlKTsKLSAgICAgICAgICAgICAgc2VydmljZV93b3Jr
ZXIucG9zdE1lc3NhZ2UoewotICAgICAgICAgICAgICAgICAgcG9ydDogY2hhbm5lbC5wb3J0MiwK
LSAgICAgICAgICAgICAgICAgIHVybDogcGFyYW1ldGVycy5kZXN0X3VybCwKLSAgICAgICAgICAg
ICAgICAgIGV4cGVjdGVkOiBwYXJhbWV0ZXJzLmV4cGVjdGVkLAotICAgICAgICAgICAgICAgICAg
ZGVzY3JpcHRpb246IHBhcmFtZXRlcnMuZGVzY3JpcHRpb24sCi0gICAgICAgICAgICAgICAgfSwg
W2NoYW5uZWwucG9ydDJdKTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9KQotICAgICAgLnRo
ZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKLSAgICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNl
LmRhdGEsIG51bGwpOwotICAgICAgICAgIHJldHVybiBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihz
ZXJ2aWNlX3dvcmtlcik7Ci0gICAgICAgIH0pOworICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uu
ZGF0YSwgbnVsbCk7CisgICAgYXdhaXQgZmV0Y2hfdGVzdHNfZnJvbV93b3JrZXIoc2VydmljZVdv
cmtlcik7CiAgIH0sIHBhcmFtZXRlcnMuZGVzY3JpcHRpb24pOwogfQogPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMtZXhw
ZWN0ZWQudHh0CmluZGV4IGVjMzgwYTliN2VjY2Q2OWNmMWI1YWUyOTMwNjZhZTYxOWU1Mjc3Njgu
LmIyMDI0NGViODQ2M2FlNmIwZDM5NjlkMDcyOTljZjM4ZTU2OWZlN2YgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQu
dHh0CkBAIC0xLDUgKzEsNiBAQAogCiBGQUlMIFZlcmlmeSBhIGRlZGljYXRlZCB3b3JrZXIgc2Ny
aXB0IHJlcXVlc3QgaXNzdWVkIGZyb20gYSB1bmNvbnRyb2xsZWQgZG9jdW1lbnQgaXMgaW50ZXJj
ZXB0ZWQgYnkgd29ya2VyJ3Mgb3duIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogdW5kZWZpbmVkCitGQUlMIFZlcmlmeSBhbiBvdXQt
b2Ytc2NvcGUgZGVkaWNhdGVkIHdvcmtlciBzY3JpcHQgcmVxdWVzdCBpc3N1ZWQgZnJvbSBhIGNv
bnRyb2xsZWQgZG9jdW1lbnQgc2hvdWxkIG5vdCBiZSBpbnRlcmNlcHRlZCBieSBkb2N1bWVudCdz
IHNlcnZpY2Ugd29ya2VyLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAid29ya2VyIGxvYWRpbmcg
d2FzIG5vdCBpbnRlcmNlcHRlZCBieSBzZXJ2aWNlIHdvcmtlciIgYnV0IGdvdCAid29ya2VyIGxv
YWRpbmcgaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXIiCiBGQUlMIFZlcmlmeSBhIHNoYXJl
ZCB3b3JrZXIgc2NyaXB0IHJlcXVlc3QgaXNzdWVkIGZyb20gYSB1bmNvbnRyb2xsZWQgZG9jdW1l
bnQgaXMgaW50ZXJjZXB0ZWQgYnkgd29ya2VyJ3Mgb3duIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VF
cnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogU2hhcmVkV29ya2VyIgogRkFJTCBWZXJpZnkgYSBz
YW1lLW9yaWdpbiB3b3JrZXIgc2NyaXB0IHNlcnZlZCBieSBhIHNlcnZpY2Ugd29ya2VyIHN1Y2Nl
ZWRzIGluIHN0YXJ0aW5nIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IHVuZGVmaW5lZAogRkFJTCBWZXJpZnkgYSBzYW1lLW9y
aWdpbiB3b3JrZXIgc2NyaXB0IHNlcnZlZCBieSBhIHNlcnZpY2Ugd29ya2VyIHN1Y2NlZWRzIGlu
IHN0YXJ0aW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFi
bGU6IFNoYXJlZFdvcmtlciIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1p
bnRlcmNlcHRpb24uaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNl
cHRpb24uaHR0cHMuaHRtbAppbmRleCAzMDJhMjE0YWM2MTk0MDBjMzhmNzU2NGMwNjVhNWUwYmU0
N2FjNmRmLi4yZWZkZWFjZjA4NDljMjhkYjhjZGY0MDRiN2FiM2Y1MTgxMDhmZDZjIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvd29ya2VyLWludGVyY2VwdGlvbi5odHRwcy5odG1sCkBAIC0x
Nyw4ICsxNyw4IEBAIGFzeW5jIGZ1bmN0aW9uIHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZp
Y2Vfd29ya2VyX3VybCwgc2NvcGUpIHsKIH0KIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewot
ICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1zeW50aGVzaXplZC13b3JrZXIu
anM/ZGVkaWNhdGVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9k
dW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291
cmNlcy9zYW1wbGUtc3ludGhlc2l6ZWQtd29ya2VyLmpzP2RlZGljYXRlZCc7CisgIGNvbnN0IHNl
cnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5q
cyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNl
X3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAgLTMyLDggKzMyLDM1IEBA
IHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgIGBkb2N1bWVudCBpcyBpbnRlcmNlcHRlZCBi
eSB3b3JrZXIncyBvd24gc2VydmljZSB3b3JrZXIuYCk7CiAKIHByb21pc2VfdGVzdChhc3luYyB0
ID0+IHsKLSAgY29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktc3ludGhlc2l6ZWQt
d29ya2VyLmpzP3NoYXJlZCc7Ci0gIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJj
ZXMvZHVtbXktd29ya2VyLWludGVyY2VwdG9yLmpzJzsKKyAgY29uc3QgZnJhbWVfdXJsID0gJ3Jl
c291cmNlcy9jcmVhdGUtb3V0LW9mLXNjb3BlLXdvcmtlci5odG1sJzsKKyAgY29uc3Qgc2Vydmlj
ZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsK
KyAgY29uc3Qgc2NvcGUgPSBmcmFtZV91cmw7CisKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdh
aXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIoCisgICAgICB0LCBzZXJ2
aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiBzZXJ2aWNlX3dv
cmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJl
Z2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgY29uc3QgZnJhbWUgPSBh
d2FpdCB3aXRoX2lmcmFtZShmcmFtZV91cmwpOworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUu
cmVtb3ZlKCkpOworCisgIGFzc2VydF9lcXVhbHMoCisgICAgZnJhbWUuY29udGVudFdpbmRvdy5u
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyLnNjcmlwdFVSTCwKKyAgICBnZXRfbmV3
ZXN0X3dvcmtlcihyZWdpc3RyYXRpb24pLnNjcmlwdFVSTCwKKyAgICAndGhlIGZyYW1lIHNob3Vs
ZCBiZSBjb250cm9sbGVkIGJ5IGEgc2VydmljZSB3b3JrZXInCisgICk7CisKKyAgY29uc3QgcmVz
dWx0ID0gYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy5nZXRXb3JrZXJQcm9taXNlKCk7CisKKyAg
YXNzZXJ0X2VxdWFscyhyZXN1bHQsCisgICAgICAgICAgICAgICAgJ3dvcmtlciBsb2FkaW5nIHdh
cyBub3QgaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXInKTsKK30sIGBWZXJpZnkgYW4gb3V0
LW9mLXNjb3BlIGRlZGljYXRlZCB3b3JrZXIgc2NyaXB0IHJlcXVlc3QgaXNzdWVkIGZyb20gYSBg
ICsKKyAgIGBjb250cm9sbGVkIGRvY3VtZW50IHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQgYnkg
ZG9jdW1lbnQncyBzZXJ2aWNlIGAgKworICAgYHdvcmtlci5gKTsKKworcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc3ludGhl
c2l6ZWQtd29ya2VyLmpzP3NoYXJlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdy
ZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0g
d29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dv
cmtlcl91cmwsIHNjb3BlKTsKQEAgLTQ3LDggKzc0LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4gewogICAgYGRvY3VtZW50IGlzIGludGVyY2VwdGVkIGJ5IHdvcmtlcidzIG93biBzZXJ2aWNl
IHdvcmtlci5gKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJf
dXJsID0gJ3Jlc291cmNlcy9kdW1teS1zYW1lLW9yaWdpbi13b3JrZXIuanM/ZGVkaWNhdGVkJzsK
LSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50
ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc2Ft
ZS1vcmlnaW4td29ya2VyLmpzP2RlZGljYXRlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3Vy
bCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNj
b3BlID0gd29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2
aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAgLTYyLDggKzg5LDggQEAgcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4gewogICAgJ2luIHN0YXJ0aW5nIGEgZGVkaWNhdGVkIHdvcmtlci4nKTsKIAogcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9k
dW1teS1zYW1lLW9yaWdpbi13b3JrZXIuanM/c2hhcmVkJzsKLSAgY29uc3Qgc2VydmljZV93b3Jr
ZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25z
dCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtc2FtZS1vcmlnaW4td29ya2VyLmpzP3No
YXJlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdv
cmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBh
d2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsK
QEAgLTc3LDggKzEwNCw4IEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgICdpbiBzdGFy
dGluZyBhIHNoYXJlZCB3b3JrZXIuJyk7CiAKIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKLSAg
Y29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktY29ycy13b3JrZXIuanM/ZGVkaWNh
dGVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3Jr
ZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1w
bGUtY29ycy13b3JrZXIuanM/ZGVkaWNhdGVkJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJs
ID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qgc2Nv
cGUgPSB3b3JrZXJfdXJsOwogCiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZp
Y2Vfd29ya2VyX3VybCwgc2NvcGUpOwpAQCAtODksOCArMTE2LDggQEAgcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4gewogICAgJ3dvcmtlciBzdGFydC4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQg
PT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1jb3JzLXdvcmtlci5q
cz9zaGFyZWQnOwotICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15
LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2Vz
L3NhbXBsZS1jb3JzLXdvcmtlci5qcz9zaGFyZWQnOworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91
cmwgPSAncmVzb3VyY2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3IuanMnOwogICBjb25zdCBz
Y29wZSA9IHdvcmtlcl91cmw7CiAKICAgYXdhaXQgc2V0dXBfc2VydmljZV93b3JrZXIodCwgc2Vy
dmljZV93b3JrZXJfdXJsLCBzY29wZSk7CkBAIC0xMDEsOCArMTI4LDggQEAgcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4gewogICAgJ3dvcmtlciBzdGFydC4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5j
IHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1uby1jb3JzLXdv
cmtlci5qcz9kZWRpY2F0ZWQnOwotICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3Vy
Y2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAn
cmVzb3VyY2VzL3NhbXBsZS1uby1jb3JzLXdvcmtlci5qcz9kZWRpY2F0ZWQnOworICBjb25zdCBz
ZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3Iu
anMnOwogICBjb25zdCBzY29wZSA9IHdvcmtlcl91cmw7CiAKICAgYXdhaXQgc2V0dXBfc2Vydmlj
ZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJfdXJsLCBzY29wZSk7CkBAIC0xMTMsOCArMTQwLDgg
QEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgJ2ZhaWxzIGRlZGljYXRlZCB3b3JrZXIg
c3RhcnQuJyk7CiAKIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKLSAgY29uc3Qgd29ya2VyX3Vy
bCA9ICdyZXNvdXJjZXMvZHVtbXktbm8tY29ycy13b3JrZXIuanM/c2hhcmVkJzsKLSAgY29uc3Qg
c2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3Iu
anMnOworICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtbm8tY29ycy13b3Jr
ZXIuanM/c2hhcmVkJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9z
YW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJfdXJs
OwogCiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwg
c2NvcGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3Ro
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVu
dC1sZW5ndGguaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMzI2YmZlNWM4
MGVjYTY2ODViNTg4OGE1NzRmOTdhMjdkOTVmNDE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw3IEBACisKK1BBU1MgU2V0dXAKK1BBU1MgU3ludGhldGljIHJlc3BvbnNlIHdp
dGhvdXQgQ29udGVudC1MZW5ndGggaGVhZGVyCitGQUlMIFN5bnRoZXRpYyByZXNwb25zZSB3aXRo
IENvbnRlbnQtTGVuZ3RoIGhlYWRlciB3aXRoIHZhbHVlIGxhcmdlciB0aGFuIHJlc3BvbnNlIGJv
ZHkgbGVuZ3RoIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBTeW50
aGV0aWMgcmVzcG9uc2Ugd2l0aCB0d28gQ29udGVudC1MZW5ndGggaGVhZGVycyB2YWx1ZSBsYXJn
ZXIgdGhhbiByZXNwb25zZSBib2R5IGxlbmd0aCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKK1BBU1MgU3ludGhldGljIHJlc3BvbnNlIHdpdGggYm9ndXMgQ29udGVudC1MZW5n
dGggaGVhZGVyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxl
bmd0aC5odHRwcy53aW5kb3cuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxl
bmd0aC5odHRwcy53aW5kb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZj
NjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
eGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndpbmRvdy5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0g
VGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBy
dW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5k
b3cuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjFhZTMyMGU5YzNjNTcxM2EyZDQ3MjkxZDgzYmE3ZDcyZGMwM2MxNTIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGgu
aHR0cHMud2luZG93LmpzCkBAIC0wLDAgKzEsNTUgQEAKKy8vIE1FVEE6IHNjcmlwdD1yZXNvdXJj
ZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcworCitsZXQgZnJhbWU7CisKK3Byb21pc2VfdGVzdChhc3lu
YyAodCkgPT4geworICBjb25zdCBzY29wZSA9ICJyZXNvdXJjZXMvZW1wdHkuaHRtbCI7CisgIGNv
bnN0IHNjcmlwdCA9ICJyZXNvdXJjZXMveGhyLWNvbnRlbnQtbGVuZ3RoLXdvcmtlci5qcyI7Cisg
IGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5k
X3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2NvcGUpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCBy
ZWdpc3RyYXRpb24uaW5zdGFsbGluZywgImFjdGl2YXRlZCIpOworICBmcmFtZSA9IGF3YWl0IHdp
dGhfaWZyYW1lKHNjb3BlKTsKK30sICJTZXR1cCIpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9
PiB7CisgIGNvbnN0IHhociA9IG5ldyBmcmFtZS5jb250ZW50V2luZG93LlhNTEh0dHBSZXF1ZXN0
KCk7CisgIHhoci5vcGVuKCJHRVQiLCAidGVzdD90eXBlPW5vLWNvbnRlbnQtbGVuZ3RoIik7Cisg
IHhoci5zZW5kKCk7CisgIGNvbnN0IGV2ZW50ID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9
PiB4aHIub25sb2FkID0gcmVzb2x2ZSk7CisgIGFzc2VydF9lcXVhbHMoeGhyLmdldFJlc3BvbnNl
SGVhZGVyKCJjb250ZW50LWxlbmd0aCIpLCBudWxsKTsKKyAgYXNzZXJ0X2ZhbHNlKGV2ZW50Lmxl
bmd0aENvbXB1dGFibGUpOworICBhc3NlcnRfZXF1YWxzKGV2ZW50LnRvdGFsLCAwKTsKKyAgYXNz
ZXJ0X2VxdWFscyhldmVudC5sb2FkZWQsIHhoci5yZXNwb25zZVRleHQubGVuZ3RoKTsKK30sIGBT
eW50aGV0aWMgcmVzcG9uc2Ugd2l0aG91dCBDb250ZW50LUxlbmd0aCBoZWFkZXJgKTsKKworcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29udGVudFdp
bmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICB4aHIub3BlbigiR0VUIiwgInRlc3Q/dHlwZT1sYXJn
ZXItY29udGVudC1sZW5ndGgiKTsKKyAgeGhyLnNlbmQoKTsKKyAgY29uc3QgZXZlbnQgPSBhd2Fp
dCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHhoci5vbmxvYWQgPSByZXNvbHZlKTsKKyAgYXNzZXJ0
X2VxdWFscyh4aHIuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtbGVuZ3RoIiksICIxMDAwMCIp
OworICBhc3NlcnRfdHJ1ZShldmVudC5sZW5ndGhDb21wdXRhYmxlKTsKKyAgYXNzZXJ0X2VxdWFs
cyhldmVudC50b3RhbCwgMTAwMDApOworICBhc3NlcnRfZXF1YWxzKGV2ZW50LmxvYWRlZCwgeGhy
LnJlc3BvbnNlVGV4dC5sZW5ndGgpOworfSwgYFN5bnRoZXRpYyByZXNwb25zZSB3aXRoIENvbnRl
bnQtTGVuZ3RoIGhlYWRlciB3aXRoIHZhbHVlIGxhcmdlciB0aGFuIHJlc3BvbnNlIGJvZHkgbGVu
Z3RoYCk7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3QgeGhyID0gbmV3IGZy
YW1lLmNvbnRlbnRXaW5kb3cuWE1MSHR0cFJlcXVlc3QoKTsKKyAgeGhyLm9wZW4oIkdFVCIsICJ0
ZXN0P3R5cGU9ZG91YmxlLWNvbnRlbnQtbGVuZ3RoIik7CisgIHhoci5zZW5kKCk7CisgIGNvbnN0
IGV2ZW50ID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB4aHIub25sb2FkID0gcmVzb2x2
ZSk7CisgIGFzc2VydF9lcXVhbHMoeGhyLmdldFJlc3BvbnNlSGVhZGVyKCJjb250ZW50LWxlbmd0
aCIpLCAiMTAwMDAsIDEwMDAwIik7CisgIGFzc2VydF90cnVlKGV2ZW50Lmxlbmd0aENvbXB1dGFi
bGUpOworICBhc3NlcnRfZXF1YWxzKGV2ZW50LnRvdGFsLCAxMDAwMCk7CisgIGFzc2VydF9lcXVh
bHMoZXZlbnQubG9hZGVkLCB4aHIucmVzcG9uc2VUZXh0Lmxlbmd0aCk7Cit9LCBgU3ludGhldGlj
IHJlc3BvbnNlIHdpdGggdHdvIENvbnRlbnQtTGVuZ3RoIGhlYWRlcnMgdmFsdWUgbGFyZ2VyIHRo
YW4gcmVzcG9uc2UgYm9keSBsZW5ndGhgKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewor
ICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29udGVudFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOwor
ICB4aHIub3BlbigiR0VUIiwgInRlc3Q/dHlwZT1ib2d1cy1jb250ZW50LWxlbmd0aCIpOworICB4
aHIuc2VuZCgpOworICBjb25zdCBldmVudCA9IGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4g
eGhyLm9ubG9hZCA9IHJlc29sdmUpOworICBhc3NlcnRfZXF1YWxzKHhoci5nZXRSZXNwb25zZUhl
YWRlcigiY29udGVudC1sZW5ndGgiKSwgInRlc3QiKTsKKyAgYXNzZXJ0X2ZhbHNlKGV2ZW50Lmxl
bmd0aENvbXB1dGFibGUpOworICBhc3NlcnRfZXF1YWxzKGV2ZW50LnRvdGFsLCAwKTsKKyAgYXNz
ZXJ0X2VxdWFscyhldmVudC5sb2FkZWQsIHhoci5yZXNwb25zZVRleHQubGVuZ3RoKTsKK30sIGBT
eW50aGV0aWMgcmVzcG9uc2Ugd2l0aCBib2d1cyBDb250ZW50LUxlbmd0aCBoZWFkZXJgKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1yZXNwb25zZS11cmwuaHR0cHMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3hoci1yZXNwb25zZS11cmwuaHR0cHMuaHRtbAppbmRleCAxYWQy
Y2UzODUxY2M3YmNlMjQxMjBkZDgwYmRmNTQ2NjI3ODFhYzY2Li42NzNjYTUyY2M2NzQ1MGY4YjI5
NmVhNTBmN2FjNGM0ZmVlMzEwNjAyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHIt
cmVzcG9uc2UtdXJsLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLXJlc3Bv
bnNlLXVybC5odHRwcy5odG1sCkBAIC0zMCw3ICszMCw3IEBAIHByb21pc2VfdGVzdChhc3luYyAo
dCkgPT4gewogLy8gd29ya2VyLgogcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIC8vIEJ1
aWxkIGEgVVJMIHRoYXQgdGVsbHMgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHJlc3BvbmRXaXRoKGZl
dGNoKHx0YXJnZXR8KSkuCi0gIGNvbnN0IHRhcmdldCA9IG5ldyBVUkwoJ3Jlc291cmNlcy9kdW1t
eS50eHQnLCB3aW5kb3cubG9jYXRpb24pOworICBjb25zdCB0YXJnZXQgPSBuZXcgVVJMKCdyZXNv
dXJjZXMvc2FtcGxlLnR4dCcsIHdpbmRvdy5sb2NhdGlvbik7CiAgIGNvbnN0IHVybCA9IGJ1aWxk
X3VybCh7CiAgICAgcmVzcG9uZFdpdGg6ICdmZXRjaCcsCiAgICAgdXJsOiB0YXJnZXQKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3Rlc3RzLW9wdGlvbnMuanNvbiBiL0xheW91dFRlc3RzL3Rlc3Rz
LW9wdGlvbnMuanNvbgppbmRleCAzNTMzMzYyNzU3NWZkNTQ1NTlkOGRlODM4YTNhMTk4YTFmMDM1
NGQ5Li5jMThiNmRjYzZiMGQwMjQ5ODIwYjQ5MjhmYjk2NzUzYzczOWI0NjBiIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy90ZXN0cy1vcHRpb25zLmpzb24KKysrIGIvTGF5b3V0VGVzdHMvdGVzdHMt
b3B0aW9ucy5qc29uCkBAIC0yODQ5LDYgKzI4NDksMTIgQEAKICAgICAiaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvYWN0aXZhdGlv
bi5odHRwcy5odG1sIjogWwogICAgICAgICAic2xvdyIKICAgICBdLAorICAgICJpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFp
bS1mZXRjaC5odHRwcy5odG1sIjogWworICAgICAgICAic2xvdyIKKyAgICBdLAorICAgICJpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbCI6IFsKKyAgICAgICAgInNsb3ciCisgICAgXSwK
ICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1vcmRlci5odHRwcy5odG1sIjogWwogICAgICAg
ICAic2xvdyIKICAgICBdLApAQCAtMjkxNSw2ICsyOTIxLDkgQEAKICAgICAiaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0
cmF0aW9uLW1pbWUtdHlwZXMuaHR0cHMuaHRtbCI6IFsKICAgICAgICAgInNsb3ciCiAgICAgXSwK
KyAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjaGVkdWxlLWpvYi5odHRwcy5odG1sIjogWworICAg
ICAgICAic2xvdyIKKyAgICBdLAogICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tdXBkYXRldmlhY2Fj
aGUuaHR0cHMuaHRtbCI6IFsKICAgICAgICAgInNsb3ciCiAgICAgXSwKQEAgLTI5MzMsOSArMjk0
MiwxNSBAQAogICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItbmF2aWdhdGlvbi1yZWRpcmVjdC5odHRw
cy5odG1sIjogWwogICAgICAgICAic2xvdyIKICAgICBdLAorICAgICJpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0
ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0dHBzLmh0bWwiOiBbCisgICAgICAgICJzbG93IgorICAgIF0s
CiAgICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2suaHR0cHMuaHRtbCI6IFsKICAgICAgICAgInNs
b3ciCiAgICAgXSwKKyAgICAiaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMu
aHRtbCI6IFsKKyAgICAgICAgInNsb3ciCisgICAgXSwKICAgICAiaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLmh0dHBz
Lmh0bWwiOiBbCiAgICAgICAgICJzbG93IgogICAgIF0sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432511</attachid>
            <date>2021-06-29 12:39:11 -0700</date>
            <delta_ts>2021-06-29 15:04:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227490-20210629123911.patch</filename>
            <type>text/plain</type>
            <size>333300</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5Mzc0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmJlYTU5YTc1YzY3MzEyYWE2N2Ji
YTYzODUzYWVkYjIxNDk0NTI1Yy4uNzFlNDFkNWFiNTI1YzU3YWRiZGQyZWY2OTVmZjA3ZGUzMGMy
MzcxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA2LTI5ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIHNlcnZpY2Utd29ya2VyIFdQVCB0ZXN0
cyBmcm9tIHVwc3RyZWFtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjc0OTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogdGVzdHMtb3B0aW9ucy5qc29u
OgorCiAyMDIxLTA2LTI5ICBZb3NoaWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FA
c29ueS5jb20+CiAKICAgICAgICAgUC0zODQgRUMgcHVibGljIEpXSyBrZXkgaW4gbGF5b3V0IHRl
c3RzIGlzIHdyb25nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA3NTlmZmNmYTll
ZmJiMmM5ZjY3ZjU4ZjQ0ZTM2MDIzNDI1ODAyMDU5Li43NjYzYTZmMzFhYzc1Njc5YTEyZGNhMDY2
ZDU0YmQyM2EzY2MyY2I3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAyMS0wNi0yOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisg
ICAgICAgIFJlc3luYyBzZXJ2aWNlLXdvcmtlciBXUFQgdGVzdHMgZnJvbSB1cHN0cmVhbQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NDkwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVzeW5jIHNlcnZp
Y2Utd29ya2VyIFdQVCB0ZXN0cyBmcm9tIHVwc3RyZWFtIGEzODYxMmYzOWU3NzUyYzM1MzIwOC4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvKjogVXBkYXRl
ZC4KKwogMjAyMS0wNi0yOSAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+
CiAKICAgICAgICAgQ1NTIHNjcm9sbCBzbmFwIHNob3VsZCBhbGxvdyBzY3JvbGxpbmcgdG8gdGhl
IG1pZGRsZSBvZiBzbmFwIGFyZWFzIHRoYXQgb3ZlcmZsb3cgdGhlIHNuYXBwb3J0CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCAyOWY0NDdhZjI2NGEzNGQwYmI1OTFjZTJmMDAzODgwMWJmYzE2NzI0Li5j
MDhhYzM1Yjg4ZmVkZTgxYTBiZDE5N2U2YmZiNWI0NmEyNmZlYWZjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTMxNiw3ICszMTYsMTAgQEAgd2Via2l0Lm9yZy9iLzIwMTY2NSBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmsKIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL211
bHRpcGFydC1pbWFnZS5odHRwcy5odG1sIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3JrZXItaW4tc2FuZGJv
eGVkLWlmcmFtZS1ieS1jc3AtZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbCBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtd29ya2VyLXRpbWluZy1mcmFtZS50ZW50YXRpdmUuaHR0cHMuaHRtbCBbIFNr
aXAgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLmh0bWwgWyBTa2lwIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsaWVudC1uYXZpZ2F0ZS5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXN0ZWQtYmxvYi11
cmwtd29ya2Vycy5odHRwcy5odG1sIFsgU2tpcCBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNv
cnMtaW1wb3J0Lmh0dHBzLmh0bWwgWyBTa2lwIF0KIAogIyBUaGVlIHRlc3RzIGFyZSBjcmFzaGlu
ZyBpbiBEZWJ1ZyAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzMx
MCkKIFsgRGVidWcgXSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
cmVkZW50aWFscy9hdXRoZW50aWNhdGlvbi1iYXNpYy5hbnkuaHRtbCBbIFNraXAgXQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jlc291cmNlcy9yZXNvdXJjZS1maWxlcy5q
c29uIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jlc291cmNlcy9yZXNvdXJjZS1maWxlcy5q
c29uCmluZGV4IGZlYTNiOTIzOGYwMzg5ZmRhOGRlY2Q1MDMzNGU5YjE3NTcyMzEwOWUuLjhjYzhl
MmY4MGY1MTQ0YjhhZTE5MWQ4ZWVkNWQ3ZjcyNzQ2NzlkYTggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvcmVzb3VyY2UtZmlsZXMuanNvbgorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvcmVzb3VyY2VzL3Jlc291cmNlLWZpbGVzLmpzb24KQEAgLTI2
NzUsNiArMjY3NSw3IEBACiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL211bHRpLWdsb2JhbHMvY3VycmVudC9jdXJyZW50Lmh0dHBzLmh0
bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9tdWx0aS1nbG9iYWxzL2luY3VtYmVudC9pbmN1bWJlbnQuaHR0cHMuaHRtbCIsCiAg
ICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L211bHRpLWdsb2JhbHMvcmVsZXZhbnQvcmVsZXZhbnQuaHR0cHMuaHRtbCIsCisgICAgICAgICJ3
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3N2Zy10YXJn
ZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbCIsCiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMv
c2hhZG93LWRvbS9kZWNsYXJhdGl2ZS9zdXBwb3J0L2RlY2xhcmF0aXZlLWNoaWxkLWZyYW1lLmh0
bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL3NoYWRvdy1kb20vZXZlbnQtb24tcHNl
dWRvLWVsZW1lbnQtY3Jhc2guaHRtbCIsCiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvc2hh
ZG93LWRvbS9pbXBlcmF0aXZlLXNsb3QtYXBpLWNyYXNoLmh0bWwiLApAQCAtMjc3NCw0ICsyNzc1
LDQgQEAKICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy94aHIveG1saHR0cHJlcXVlc3Qtc3lu
Yy1ibG9jay1kZWZlci1zY3JpcHRzLXN1YmZyYW1lLmh0bWwiLAogICAgICAgICAid2ViLXBsYXRm
b3JtLXRlc3RzL3hoci94bWxodHRwcmVxdWVzdC1zeW5jLW5vdC1oYW5nLXNjcmlwdGxvYWRlci1z
dWJmcmFtZS5odG1sIgogICAgIF0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCit9CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Jlc291cmNlcy92YXJ5LnB5IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUt
c3RvcmFnZS9yZXNvdXJjZXMvdmFyeS5weQppbmRleCBlN2E5MTRlY2E4Mjc2MzFhOGJjNzg3ODEx
MmM2YjZkZTg3ZTdjZTkxLi43ZmRlMWIxMDk0ZWQ0Y2U0MDE4ZjE3Njg4ZTU1ZDNiZTA2ZmZmOTkz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Jlc291cmNlcy92YXJ5LnB5CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2UvcmVzb3VyY2VzL3ZhcnkucHkKQEAgLTEsNSArMSwzIEBACi1mcm9tIHNp
eCBpbXBvcnQgdGV4dF90eXBlCi0KIGRlZiBtYWluKHJlcXVlc3QsIHJlc3BvbnNlKToKICAgaWYg
YiJjbGVhci12YXJ5LXZhbHVlLW92ZXJyaWRlLWNvb2tpZSIgaW4gcmVxdWVzdC5HRVQ6CiAgICAg
cmVzcG9uc2UudW5zZXRfY29va2llKGIidmFyeS12YWx1ZS1vdmVycmlkZSIpCkBAIC0xNSw5ICsx
Myw5IEBAIGRlZiBtYWluKHJlcXVlc3QsIHJlc3BvbnNlKToKICAgIyBmb3IgdGhlIFZBUlkgaGVh
ZGVyIG5vIG1hdHRlciB3aGF0IHRoZSBxdWVyeSBzdHJpbmcgaXMgc2V0IHRvLiAgVGhpcwogICAj
IG92ZXJyaWRlIGlzIG5lY2Vzc2FyeSB0byB0ZXN0IHRoZSBjYXNlIHdoZW4gdHdvIFVSTHMgYXJl
IGlkZW50aWNhbAogICAjIChpbmNsdWRpbmcgcXVlcnkpLCBidXQgZGlmZmVyIGJ5IFZBUlkgaGVh
ZGVyLgotICBjb29raWVfdmFyeSA9IHJlcXVlc3QuY29va2llcy5nZXQoYiJ2YXJ5LXZhbHVlLW92
ZXJyaWRlIik7CisgIGNvb2tpZV92YXJ5ID0gcmVxdWVzdC5jb29raWVzLmdldChiInZhcnktdmFs
dWUtb3ZlcnJpZGUiKQogICBpZiBjb29raWVfdmFyeToKLSAgICByZXNwb25zZS5oZWFkZXJzLnNl
dChiInZhcnkiLCB0ZXh0X3R5cGUoY29va2llX3ZhcnkpKQorICAgIHJlc3BvbnNlLmhlYWRlcnMu
c2V0KGIidmFyeSIsIHN0cihjb29raWVfdmFyeSkpCiAgIGVsc2U6CiAgICAgIyBJZiB0aGVyZSBp
cyBubyBjb29raWUsIHRoZW4gdXNlIHRoZSBxdWVyeSBzdHJpbmcgdmFsdWUsIGlmIHByZXNlbnQu
CiAgICAgcXVlcnlfdmFyeSA9IHJlcXVlc3QuR0VULmZpcnN0KGIidmFyeSIsIGRlZmF1bHQ9YiIi
KQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtYWRkLmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtYWRkLmpzCmluZGV4IGYxNjE3
MTA5Y2ZhMTM4NWEyZWFiOGQzODllMTllOThmZjAwOTcwZjcuLjYyYjQ0Yzc4ODAxNjhiNTc2Mjc4
NWVkOWY3NWMyZGZhMTY3Zjk0MDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2NyaXB0
LXRlc3RzL2NhY2hlLWFkZC5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9j
YWNoZS1hZGQuanMKQEAgLTEsOCArMSwxMSBAQAogaWYgKHNlbGYuaW1wb3J0U2NyaXB0cykgewog
ICAgIGltcG9ydFNjcmlwdHMoJy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMnKTsKKyAgICBpbXBv
cnRTY3JpcHRzKCcvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzJyk7CiAgICAgaW1wb3J0U2Ny
aXB0cygnLi4vcmVzb3VyY2VzL3Rlc3QtaGVscGVycy5qcycpOwogfQogCitjb25zdCB7IFJFTU9U
RV9IT1NUIH0gPSBnZXRfaG9zdF9pbmZvKCk7CisKIGNhY2hlX3Rlc3QoZnVuY3Rpb24oY2FjaGUs
IHRlc3QpIHsKICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKAogICAgICAgdGVzdCwKQEAg
LTEwNCw2ICsxMDcsMjEgQEAgY2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSwgdGVzdCkgewogICAg
ICAgJ0NhY2hlLmFkZEFsbCBzaG91bGQgcmVqZWN0IHdpdGggVHlwZUVycm9yIGlmIGFueSByZXF1
ZXN0IGZhaWxzJyk7CiAgIH0sICdDYWNoZS5hZGRBbGwgd2l0aCAyMDYgcmVzcG9uc2UnKTsKIAor
Y2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSwgdGVzdCkgeworICAgIHZhciB1cmxzID0gWycuLi9y
ZXNvdXJjZXMvZmV0Y2gtc3RhdHVzLnB5P3N0YXR1cz0yMDYnLAorICAgICAgICAgICAgICAgICcu
Li9yZXNvdXJjZXMvZmV0Y2gtc3RhdHVzLnB5P3N0YXR1cz0yMDAnXTsKKyAgICB2YXIgcmVxdWVz
dHMgPSB1cmxzLm1hcChmdW5jdGlvbih1cmwpIHsKKyAgICAgICAgdmFyIGNyb3NzX29yaWdpbl91
cmwgPSBuZXcgVVJMKHVybCwgbG9jYXRpb24uaHJlZik7CisgICAgICAgIGNyb3NzX29yaWdpbl91
cmwuaG9zdG5hbWUgPSBSRU1PVEVfSE9TVDsKKyAgICAgICAgcmV0dXJuIG5ldyBSZXF1ZXN0KGNy
b3NzX29yaWdpbl91cmwuaHJlZiwgeyBtb2RlOiAnbm8tY29ycycgfSk7CisgICAgICB9KTsKKyAg
ICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKAorICAgICAgdGVzdCwKKyAgICAgIFR5cGVFcnJv
ciwKKyAgICAgIGNhY2hlLmFkZEFsbChyZXF1ZXN0cyksCisgICAgICAnQ2FjaGUuYWRkQWxsIHNo
b3VsZCByZWplY3Qgd2l0aCBUeXBlRXJyb3IgaWYgYW55IHJlcXVlc3QgZmFpbHMnKTsKKyAgfSwg
J0NhY2hlLmFkZEFsbCB3aXRoIG9wYXF1ZS1maWx0ZXJlZCAyMDYgcmVzcG9uc2UnKTsKKwogY2Fj
aGVfdGVzdChmdW5jdGlvbihjYWNoZSwgdGVzdCkgewogICAgIHJldHVybiBwcm9taXNlX3JlamVj
dHNfanMoCiAgICAgICB0ZXN0LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zY3JpcHQt
dGVzdHMvY2FjaGUtbWF0Y2guanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNo
ZS1tYXRjaC5qcwppbmRleCA4YmY3ZmRhMzA5NjdmYmI0ZWQyNTMyNWQ0OWUwY2Q5OWZjMTZkZjU1
Li42MGMwZGQwYTAyZjIwZTFkNGZhN2QzMGE0ZDBhNTk2ODUwN2FjYTAzIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNoZS1tYXRjaC5qcworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNo
ZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNoZS1tYXRjaC5qcwpAQCAtMzgxLDYgKzM4MSw3IEBA
IGNhY2hlX3Rlc3QoYXN5bmMgKGNhY2hlKSA9PiB7CiBjYWNoZV90ZXN0KGFzeW5jIChjYWNoZSkg
PT4gewogICAgIGNvbnN0IHVybCA9ICcvZHVtbXknOwogICAgIGNvbnN0IG9yaWdpbmFsX3R5cGUg
PSAndGV4dC9odG1sJzsKKyAgICBjb25zdCBvdmVycmlkZV90eXBlID0gJ3RleHQvcGxhaW4nOwog
ICAgIGNvbnN0IGluaXRfd2l0aF9oZWFkZXJzID0gewogICAgICAgaGVhZGVyczogewogICAgICAg
ICAnY29udGVudC10eXBlJzogb3JpZ2luYWxfdHlwZQpAQCAtMzk0LDI0ICszOTUsMjIgQEAgY2Fj
aGVfdGVzdChhc3luYyAoY2FjaGUpID0+IHsKICAgICBhc3NlcnRfdHJ1ZShvcmlnaW5hbF9yZXNw
b25zZV90eXBlLmluY2x1ZGVzKG9yaWdpbmFsX3R5cGUpLAogICAgICAgICAgICAgICAgICdvcmln
aW5hbCByZXNwb25zZSBzaG91bGQgaW5jbHVkZSB0aGUgZXhwZWN0ZWQgbWltZSB0eXBlJyk7CiAK
LSAgICAvLyBWZXJpZnkgb3ZlcndyaXRpbmcgdGhlIGNvbnRlbnQtdHlwZSBoZWFkZXIgZG9lcyBu
b3QgY2hhbmdlIHRoZSBtaW1lCi0gICAgLy8gdHlwZS4gIEl0IHNob3VsZCBiZSBmaXhlZCBhdCBS
ZXNwb25zZSBjb25zdHJ1Y3Rpb24gdGltZS4KKyAgICAvLyBWZXJpZnkgb3ZlcndyaXRpbmcgdGhl
IGNvbnRlbnQtdHlwZSBoZWFkZXIgY2hhbmdlcyB0aGUgbWltZSB0eXBlLgogICAgIGNvbnN0IG92
ZXJ3cml0dGVuX3Jlc3BvbnNlID0gbmV3IFJlc3BvbnNlKCdoZWxsbyB3b3JsZCcsIGluaXRfd2l0
aF9oZWFkZXJzKTsKLSAgICBvdmVyd3JpdHRlbl9yZXNwb25zZS5oZWFkZXJzLnNldCgnY29udGVu
dC10eXBlJywgJ3RleHQvcGxhaW4nKTsKKyAgICBvdmVyd3JpdHRlbl9yZXNwb25zZS5oZWFkZXJz
LnNldCgnY29udGVudC10eXBlJywgb3ZlcnJpZGVfdHlwZSk7CiAgICAgY29uc3Qgb3ZlcndyaXR0
ZW5fcmVzcG9uc2VfdHlwZSA9IChhd2FpdCBvdmVyd3JpdHRlbl9yZXNwb25zZS5ibG9iKCkpLnR5
cGU7Ci0gICAgYXNzZXJ0X2VxdWFscyhvdmVyd3JpdHRlbl9yZXNwb25zZV90eXBlLCBvcmlnaW5h
bF9yZXNwb25zZV90eXBlLAotICAgICAgICAgICAgICAgICAgJ29yaWdpbmFsIGFuZCBvdmVyd3Jp
dHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCcpOworICAgIGFzc2VydF9lcXVh
bHMob3ZlcndyaXR0ZW5fcmVzcG9uc2VfdHlwZSwgb3ZlcnJpZGVfdHlwZSwKKyAgICAgICAgICAg
ICAgICAgICdtaW1lIHR5cGUgY2FuIGJlIG92ZXJyaWRkZW4nKTsKIAogICAgIC8vIFZlcmlmeSB0
aGUgUmVzcG9uc2UgcmVhZCBmcm9tIENhY2hlIHVzZXMgdGhlIG9yaWdpbmFsIG1pbWUgdHlwZQog
ICAgIC8vIGNvbXB1dGVkIHdoZW4gaXQgd2FzIGZpcnN0IGNvbnN0cnVjdGVkLgogICAgIGNvbnN0
IHRtcCA9IG5ldyBSZXNwb25zZSgnaGVsbG8gd29ybGQnLCBpbml0X3dpdGhfaGVhZGVycyk7Ci0g
ICAgdG1wLmhlYWRlcnMuc2V0KCdjb250ZW50LXR5cGUnLCAndGV4dC9wbGFpbicpOworICAgIHRt
cC5oZWFkZXJzLnNldCgnY29udGVudC10eXBlJywgb3ZlcnJpZGVfdHlwZSk7CiAgICAgYXdhaXQg
Y2FjaGUucHV0KHVybCwgdG1wKTsKICAgICBjb25zdCBjYWNoZV9yZXNwb25zZSA9IGF3YWl0IGNh
Y2hlLm1hdGNoKHVybCk7CiAgICAgY29uc3QgY2FjaGVfbWltZV90eXBlID0gKGF3YWl0IGNhY2hl
X3Jlc3BvbnNlLmJsb2IoKSkudHlwZTsKLSAgICBhc3NlcnRfZXF1YWxzKGNhY2hlX21pbWVfdHlw
ZSwgb3JpZ2luYWxfcmVzcG9uc2VfdHlwZSwKLSAgICAgICAgICAgICAgICAgICdvcmlnaW5hbCBh
bmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgJyArCi0gICAgICAgICAg
ICAgICAgICAnc2hvdWxkIG1hdGNoJyk7Ci0gIH0sICdNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3pl
biBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uJyk7CisgICAgYXNzZXJ0X2VxdWFscyhjYWNoZV9t
aW1lX3R5cGUsIG92ZXJyaWRlX3R5cGUsCisgICAgICAgICAgICAgICAgICAnb3ZlcndyaXR0ZW4g
YW5kIGNhY2hlZCByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCcpOworICB9LCAnTUlN
RSB0eXBlIHNob3VsZCByZWZsZWN0IENvbnRlbnQtVHlwZSBoZWFkZXJzIG9mIHJlc3BvbnNlLicp
OwogCiBkb25lKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9j
YWNoZS1wdXQuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NjcmlwdC10ZXN0cy9jYWNoZS1wdXQuanMK
aW5kZXggNDRiYTU2NWQ4NmNhMDVlZGJmNjI1NTlmMjYyYTY0ZTBkYTc1Zjk2Yi4uYjQ1OTEwYTNi
OGJhMDg5ZTE3MjRlZmE4YjllOGE4ZDY3OWM1OTMyMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS9zY3JpcHQtdGVzdHMvY2FjaGUtcHV0LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2Ny
aXB0LXRlc3RzL2NhY2hlLXB1dC5qcwpAQCAtMSwxMCArMSwxMiBAQAogaWYgKHNlbGYuaW1wb3J0
U2NyaXB0cykgewogICAgIGltcG9ydFNjcmlwdHMoJy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMn
KTsKKyAgICBpbXBvcnRTY3JpcHRzKCcvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzJyk7CiAg
ICAgaW1wb3J0U2NyaXB0cygnLi4vcmVzb3VyY2VzL3Rlc3QtaGVscGVycy5qcycpOwogfQogCiB2
YXIgdGVzdF91cmwgPSAnaHR0cHM6Ly9leGFtcGxlLmNvbS9mb28nOwogdmFyIHRlc3RfYm9keSA9
ICdIZWxsbyB3b3JsZCEnOworY29uc3QgeyBSRU1PVEVfSE9TVCB9ID0gZ2V0X2hvc3RfaW5mbygp
OwogCiBjYWNoZV90ZXN0KGZ1bmN0aW9uKGNhY2hlKSB7CiAgICAgdmFyIHJlcXVlc3QgPSBuZXcg
UmVxdWVzdCh0ZXN0X3VybCk7CkBAIC0xMjksNiArMTMxLDIzIEBAIGNhY2hlX3Rlc3QoZnVuY3Rp
b24oY2FjaGUsIHRlc3QpIHsKICAgICAgICAgfSk7CiAgIH0sICdDYWNoZS5wdXQgd2l0aCBIVFRQ
IDIwNiByZXNwb25zZScpOwogCitjYWNoZV90ZXN0KGZ1bmN0aW9uKGNhY2hlLCB0ZXN0KSB7Cisg
ICAgdmFyIHRlc3RfdXJsID0gbmV3IFVSTCgnLi4vcmVzb3VyY2VzL2ZldGNoLXN0YXR1cy5weT9z
dGF0dXM9MjA2JywgbG9jYXRpb24uaHJlZik7CisgICAgdGVzdF91cmwuaG9zdG5hbWUgPSBSRU1P
VEVfSE9TVDsKKyAgICB2YXIgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0KHRlc3RfdXJsLmhyZWYsIHsg
bW9kZTogJ25vLWNvcnMnIH0pOworICAgIHZhciByZXNwb25zZTsKKyAgICByZXR1cm4gZmV0Y2go
cmVxdWVzdCkKKyAgICAgIC50aGVuKGZ1bmN0aW9uKGZldGNoX3Jlc3VsdCkgeworICAgICAgICAg
IGFzc2VydF9lcXVhbHMoZmV0Y2hfcmVzdWx0LnR5cGUsICdvcGFxdWUnLAorICAgICAgICAgICAg
ICAnVGVzdCBmcmFtZXdvcmsgZXJyb3I6IFRoZSByZXNwb25zZSB0eXBlIHNob3VsZCBiZSBvcGFx
dWUuJyk7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmZXRjaF9yZXN1bHQuc3RhdHVzLCAwLAor
ICAgICAgICAgICAgICAnVGVzdCBmcmFtZXdvcmsgZXJyb3I6IFRoZSBzdGF0dXMgY29kZSBzaG91
bGQgYmUgMCBmb3IgYW4gJyArCisgICAgICAgICAgICAgICcgb3BhcXVlLWZpbHRlcmVkIHJlc3Bv
bnNlLiBUaGlzIGlzIGFjdHVhbGx5IEhUVFAgMjA2LicpOworICAgICAgICAgIHJlc3BvbnNlID0g
ZmV0Y2hfcmVzdWx0LmNsb25lKCk7CisgICAgICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19q
cyh0ZXN0LCBUeXBlRXJyb3IsIGNhY2hlLnB1dChyZXF1ZXN0LCBmZXRjaF9yZXN1bHQpKTsKKyAg
ICAgICAgfSk7CisgIH0sICdDYWNoZS5wdXQgd2l0aCBvcGFxdWUtZmlsdGVyZWQgSFRUUCAyMDYg
cmVzcG9uc2UnKTsKKwogY2FjaGVfdGVzdChmdW5jdGlvbihjYWNoZSkgewogICAgIHZhciB0ZXN0
X3VybCA9IG5ldyBVUkwoJy4uL3Jlc291cmNlcy9mZXRjaC1zdGF0dXMucHk/c3RhdHVzPTUwMCcs
IGxvY2F0aW9uLmhyZWYpLmhyZWY7CiAgICAgdmFyIHJlcXVlc3QgPSBuZXcgUmVxdWVzdCh0ZXN0
X3VybCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
YWRkLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9j
YWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDhiODM1N2E4YzJkMDllMjM3ODdkMzM2
NWZhYzk1NTMxMzk4NTNlNDcuLjIyMTcxYzg1NGU3YTc3MTY1NGVkOWQ1ODZmNzk1YTY5MThlNWJj
OGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1hZGQu
aHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9j
YWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC05LDYgKzksNyBAQCBQQVNTIENhY2hlLmFk
ZCBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBSZXF1ZXN0IG9iamVjdAogUEFTUyBDYWNoZS5h
ZGQgd2l0aCByZXF1ZXN0IHdpdGggbnVsbCBib2R5IChub3QgY29uc3VtZWQpCiBQQVNTIENhY2hl
LmFkZCB3aXRoIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCAyMDYgcmVzcG9u
c2UKK1BBU1MgQ2FjaGUuYWRkQWxsIHdpdGggb3BhcXVlLWZpbHRlcmVkIDIwNiByZXNwb25zZQog
UEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0IHRoYXQgcmVzdWx0cyBpbiBhIHN0YXR1cyBvZiA0
MDQKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMgaW4gYSBzdGF0dXMg
b2YgNTAwCiBQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG5vIGFyZ3VtZW50cwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1l
eHBlY3RlZC50eHQKaW5kZXggYjlhMWE1YTZmODIwODFkZDM5YzY4ZTk3Y2IwN2I3NjFlNmZlNWYz
Yi4uODVhZDQ4NmQ5ZmQ5YTVlYzk3MTE0ZjkyMjgwMzYyYWE5OTg0YjY5YyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0yMyw1ICsyMyw1IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBh
IG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9u
c2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuCiBQQVNTIGNvcnMtZXhw
b3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuCiBQQVNTIE1JTUUgdHlwZSBz
aG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LgotRkFJTCBNSU1FIHR5
cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVh
bHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBz
aG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKK0ZB
SUwgTUlNRSB0eXBlIHNob3VsZCByZWZsZWN0IENvbnRlbnQtVHlwZSBoZWFkZXJzIG9mIHJlc3Bv
bnNlLiBhc3NlcnRfZXF1YWxzOiBtaW1lIHR5cGUgY2FuIGJlIG92ZXJyaWRkZW4gZXhwZWN0ZWQg
InRleHQvcGxhaW4iIGJ1dCBnb3QgInRleHQvaHRtbCIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUt
c3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9j
YWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dApp
bmRleCBlYzE2ZDU3ZjM1ZjRiNmQwY2Q0NzU1N2UzZTFiMzliNjQ0Mzg1NzhlLi4xYjYzNDQ4ZTY2
ODcwYmEyZDk5N2U4YmNkMGJiMGQ1Yjc1MTUwM2VjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9y
YWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9j
YWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dApA
QCAtOCw2ICs4LDcgQEAgUEFTUyBDYWNoZS5wdXQgd2l0aCBhIFJlc3BvbnNlIGNvbnRhaW5pbmcg
YW4gZW1wdHkgVVJMCiBQQVNTIENhY2hlLnB1dCB3aXRoIGFuIGVtcHR5IHJlc3BvbnNlIGJvZHkK
IFBBU1MgQ2FjaGUucHV0IHdpdGggc3ludGhldGljIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5w
dXQgd2l0aCBIVFRQIDIwNiByZXNwb25zZQorRkFJTCBDYWNoZS5wdXQgd2l0aCBvcGFxdWUtZmls
dGVyZWQgSFRUUCAyMDYgcmVzcG9uc2UgYXNzZXJ0X3VucmVhY2hlZDogU2hvdWxkIGhhdmUgcmVq
ZWN0ZWQ6IHVuZGVmaW5lZCBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKIFBBU1MgQ2FjaGUucHV0
IHdpdGggSFRUUCA1MDAgcmVzcG9uc2UKIFBBU1MgQ2FjaGUucHV0IGNhbGxlZCB0d2ljZSB3aXRo
IG1hdGNoaW5nIFJlcXVlc3RzIGFuZCBkaWZmZXJlbnQgUmVzcG9uc2VzCiBQQVNTIENhY2hlLnB1
dCBjYWxsZWQgdHdpY2Ugd2l0aCByZXF1ZXN0IFVSTHMgdGhhdCBkaWZmZXIgb25seSBieSBhIGZy
YWdtZW50CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0
cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtYWRkLmh0dHBz
LWV4cGVjdGVkLnR4dAppbmRleCA0YzQ3OGUzMTIzMWNhNzgzYTQyMWJiMTVkZWY5ODAyMDBiMGJk
YjZiLi41Zjg1YjQwYzY5MjUzZmE1NzgxMmJiZDY0MGYxZjgzMWNlNTRhYmYyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQK
QEAgLTgsNiArOCw3IEBAIFBBU1MgQ2FjaGUuYWRkIGNhbGxlZCB0d2ljZSB3aXRoIHRoZSBzYW1l
IFJlcXVlc3Qgb2JqZWN0CiBQQVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3Qgd2l0aCBudWxsIGJv
ZHkgKG5vdCBjb25zdW1lZCkKIFBBU1MgQ2FjaGUuYWRkIHdpdGggMjA2IHJlc3BvbnNlCiBQQVNT
IENhY2hlLmFkZEFsbCB3aXRoIDIwNiByZXNwb25zZQorUEFTUyBDYWNoZS5hZGRBbGwgd2l0aCBv
cGFxdWUtZmlsdGVyZWQgMjA2IHJlc3BvbnNlCiBQQVNTIENhY2hlLmFkZCB3aXRoIHJlcXVlc3Qg
dGhhdCByZXN1bHRzIGluIGEgc3RhdHVzIG9mIDQwNAogUEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1
ZXN0IHRoYXQgcmVzdWx0cyBpbiBhIHN0YXR1cyBvZiA1MDAKIFBBU1MgQ2FjaGUuYWRkQWxsIHdp
dGggbm8gYXJndW1lbnRzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNo
ZS1hZGQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRw
cy5odG1sCmluZGV4IDhkZmI3ODZjZjM1Njc3N2NkOWRlMjg2Y2NkMzUzNGM5NWVhMDExNmMuLmI1
YTY0YzZjMzY5YjUwMjhiNGFiYTEzOTY3MzhkYzg5MmJjNjJkM2IgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2Nh
Y2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLWFkZC5odHRwcy5odG1sCkBAIC00LDUgKzQsNiBAQAogPG1ldGEg
bmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1p
bmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3QtaGVs
cGVycy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vc2NyaXB0LXRlc3RzL2NhY2hlLWFk
ZC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggMGNmMmFjOGE5YjViMTMwNWEwZjQxZWU5
OTk5MzEwMjYzOTc5NzY3Mi4uNDU2YTk2MzNkMDlkY2U3ZGFjYjNhYjIxNDgyMWE5ODNhZDY3YzYw
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0
dHBzLWV4cGVjdGVkLnR4dApAQCAtMjIsNSArMjIsNSBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGgg
YSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3Bv
bnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LgogUEFTUyBjb3JzLWV4
cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LgogUEFTUyBNSU1FIHR5cGUg
c2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4KLUZBSUwgTUlNRSB0
eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1
YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMg
c2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCitG
QUlMIE1JTUUgdHlwZSBzaG91bGQgcmVmbGVjdCBDb250ZW50LVR5cGUgaGVhZGVycyBvZiByZXNw
b25zZS4gYXNzZXJ0X2VxdWFsczogbWltZSB0eXBlIGNhbiBiZSBvdmVycmlkZGVuIGV4cGVjdGVk
ICJ0ZXh0L3BsYWluIiBidXQgZ290ICJ0ZXh0L2h0bWwiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hl
LXN0b3JhZ2Uvd2luZG93L2NhY2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDc0Y2I3NzY2
ZjQ1NGIzYzk4ZTk0NGI0MjliYzRiZDkyYjM3ZDdlMzEuLjVjMGNkOWY1ZmY4ODk5ZWVkMzIxZjE4
ZDkyYjA0ZTU2N2Q5ZjFmMTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2Nh
Y2hlLXB1dC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cv
Y2FjaGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtNyw2ICs3LDcgQEAgUEFTUyBDYWNoZS5w
dXQgd2l0aCBhIFJlc3BvbnNlIGNvbnRhaW5pbmcgYW4gZW1wdHkgVVJMCiBQQVNTIENhY2hlLnB1
dCB3aXRoIGFuIGVtcHR5IHJlc3BvbnNlIGJvZHkKIFBBU1MgQ2FjaGUucHV0IHdpdGggc3ludGhl
dGljIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5wdXQgd2l0aCBIVFRQIDIwNiByZXNwb25zZQor
RkFJTCBDYWNoZS5wdXQgd2l0aCBvcGFxdWUtZmlsdGVyZWQgSFRUUCAyMDYgcmVzcG9uc2UgYXNz
ZXJ0X3VucmVhY2hlZDogU2hvdWxkIGhhdmUgcmVqZWN0ZWQ6IHVuZGVmaW5lZCBSZWFjaGVkIHVu
cmVhY2hhYmxlIGNvZGUKIFBBU1MgQ2FjaGUucHV0IHdpdGggSFRUUCA1MDAgcmVzcG9uc2UKIFBB
U1MgQ2FjaGUucHV0IGNhbGxlZCB0d2ljZSB3aXRoIG1hdGNoaW5nIFJlcXVlc3RzIGFuZCBkaWZm
ZXJlbnQgUmVzcG9uc2VzCiBQQVNTIENhY2hlLnB1dCBjYWxsZWQgdHdpY2Ugd2l0aCByZXF1ZXN0
IFVSTHMgdGhhdCBkaWZmZXIgb25seSBieSBhIGZyYWdtZW50CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNo
ZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1wdXQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uv
d2luZG93L2NhY2hlLXB1dC5odHRwcy5odG1sCmluZGV4IDFlZTE0YmRkMTI0ZWVmYjE0ZjA3YjE0
OGM1MzkwYzgwMGFkMjA4OTAuLjk2NDFjMzQ3MDUxODYzNmYxZDJhZmJiYzY5MmY3MjFmMjA3OTA3
MzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLXB1dC5odHRwcy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLXB1dC5odHRwcy5odG1sCkBA
IC00LDYgKzQsNyBAQAogPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+CiA8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
Li4vcmVzb3VyY2VzL3Rlc3QtaGVscGVycy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4v
c2NyaXB0LXRlc3RzL2NhY2hlLXB1dC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLWFkZC5odHRwcy1leHBlY3RlZC50eHQKaW5k
ZXggNGM0NzhlMzEyMzFjYTc4M2E0MjFiYjE1ZGVmOTgwMjAwYjBiZGI2Yi4uNWY4NWI0MGM2OTI1
M2ZhNTc4MTJiYmQ2NDBmMWY4MzFjZTU0YWJmMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93b3JrZXIvY2FjaGUtYWRkLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9y
YWdlL3dvcmtlci9jYWNoZS1hZGQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC04LDYgKzgsNyBAQCBQ
QVNTIENhY2hlLmFkZCBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBSZXF1ZXN0IG9iamVjdAog
UEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0IHdpdGggbnVsbCBib2R5IChub3QgY29uc3VtZWQp
CiBQQVNTIENhY2hlLmFkZCB3aXRoIDIwNiByZXNwb25zZQogUEFTUyBDYWNoZS5hZGRBbGwgd2l0
aCAyMDYgcmVzcG9uc2UKK1BBU1MgQ2FjaGUuYWRkQWxsIHdpdGggb3BhcXVlLWZpbHRlcmVkIDIw
NiByZXNwb25zZQogUEFTUyBDYWNoZS5hZGQgd2l0aCByZXF1ZXN0IHRoYXQgcmVzdWx0cyBpbiBh
IHN0YXR1cyBvZiA0MDQKIFBBU1MgQ2FjaGUuYWRkIHdpdGggcmVxdWVzdCB0aGF0IHJlc3VsdHMg
aW4gYSBzdGF0dXMgb2YgNTAwCiBQQVNTIENhY2hlLmFkZEFsbCB3aXRoIG5vIGFyZ3VtZW50cwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhw
ZWN0ZWQudHh0CmluZGV4IDBjZjJhYzhhOWI1YjEzMDVhMGY0MWVlOTk5OTMxMDI2Mzk3OTc2NzIu
LjQ1NmE5NjMzZDA5ZGNlN2RhY2IzYWIyMTQ4MjFhOTgzYWQ2N2M2MDYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQK
QEAgLTIyLDUgKzIyLDUgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBS
ZXNwb25zZQogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUg
Y2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4KIFBBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91
bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4KIFBBU1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJv
bSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuCi1GQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUgZnJv
emVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5k
IGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBleHBl
Y3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgorRkFJTCBNSU1FIHR5cGUgc2hv
dWxkIHJlZmxlY3QgQ29udGVudC1UeXBlIGhlYWRlcnMgb2YgcmVzcG9uc2UuIGFzc2VydF9lcXVh
bHM6IG1pbWUgdHlwZSBjYW4gYmUgb3ZlcnJpZGRlbiBleHBlY3RlZCAidGV4dC9wbGFpbiIgYnV0
IGdvdCAidGV4dC9odG1sIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9j
YWNoZS1wdXQuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2Fj
aGUtcHV0Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCAwM2Y4NzA3ZTUwNjc0ZjViMzViZTEwNjk1
MjE2MDdkODE4YmM0NzcyLi4xNWQwODVlZTcxZmVjZmI5ODk3OGVlNzI5MTI4YWEzNjc5ZDk4NGI1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1wdXQuaHR0cHMtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLXB1dC5odHRwcy1l
eHBlY3RlZC50eHQKQEAgLTcsNiArNyw3IEBAIFBBU1MgQ2FjaGUucHV0IHdpdGggYSBSZXNwb25z
ZSBjb250YWluaW5nIGFuIGVtcHR5IFVSTAogUEFTUyBDYWNoZS5wdXQgd2l0aCBhbiBlbXB0eSBy
ZXNwb25zZSBib2R5CiBQQVNTIENhY2hlLnB1dCB3aXRoIHN5bnRoZXRpYyAyMDYgcmVzcG9uc2UK
IFBBU1MgQ2FjaGUucHV0IHdpdGggSFRUUCAyMDYgcmVzcG9uc2UKK0ZBSUwgQ2FjaGUucHV0IHdp
dGggb3BhcXVlLWZpbHRlcmVkIEhUVFAgMjA2IHJlc3BvbnNlIGFzc2VydF91bnJlYWNoZWQ6IFNo
b3VsZCBoYXZlIHJlamVjdGVkOiB1bmRlZmluZWQgUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCiBQ
QVNTIENhY2hlLnB1dCB3aXRoIEhUVFAgNTAwIHJlc3BvbnNlCiBQQVNTIENhY2hlLnB1dCBjYWxs
ZWQgdHdpY2Ugd2l0aCBtYXRjaGluZyBSZXF1ZXN0cyBhbmQgZGlmZmVyZW50IFJlc3BvbnNlcwog
UEFTUyBDYWNoZS5wdXQgY2FsbGVkIHR3aWNlIHdpdGggcmVxdWVzdCBVUkxzIHRoYXQgZGlmZmVy
IG9ubHkgYnkgYSBmcmFnbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlL2ZldGNoLW9uLXRoZS1yaWdodC1pbnRlcmZhY2UuaHR0cHMuYW55
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlL2ZldGNoLW9u
LXRoZS1yaWdodC1pbnRlcmZhY2UuaHR0cHMuYW55LmpzCmluZGV4IGU5OGEwNGI2YTA5MzU3NDNi
OTkxOTYwOGM2YjE0ODhjYTU3Zjg4MzcuLjVjYTVmNjU2ODBjOTc1NGM4ZjJlZDgzNjFmNmM5NGJj
MTNlNjVhMGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL1NlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZS9mZXRjaC1vbi10aGUtcmlnaHQtaW50ZXJmYWNlLmh0dHBzLmFueS5qcworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUvZmV0Y2gtb24tdGhlLXJp
Z2h0LWludGVyZmFjZS5odHRwcy5hbnkuanMKQEAgLTYsOSArNiw5IEBAIHRlc3QoZnVuY3Rpb24o
KSB7CiAgICAgICAgICdpbnN0YW5jZSBzaG91bGQgbm90IGhhdmUgImZldGNoIiBtZXRob2QgYXMg
aXRzIHByb3BlcnR5LicpOwogICAgIGFzc2VydF9pbmhlcml0cyhzZWxmLCAnZmV0Y2gnLCAnU2Vy
dmljZVdvcmtlckdsb2JhbFNjb3BlIHNob3VsZCAnICsKICAgICAgICAgJ2luaGVyaXQgImZldGNo
IiBtZXRob2QuJyk7Ci0gICAgYXNzZXJ0X293bl9wcm9wZXJ0eShzZWxmLl9fcHJvdG9fXy5fX3By
b3RvX18sICdmZXRjaCcsCisgICAgYXNzZXJ0X293bl9wcm9wZXJ0eShPYmplY3QuZ2V0UHJvdG90
eXBlT2YoT2JqZWN0LmdldFByb3RvdHlwZU9mKHNlbGYpKSwgJ2ZldGNoJywKICAgICAgICAgJ1dv
cmtlckdsb2JhbFNjb3BlIHNob3VsZCBoYXZlICJmZXRjaCIgcHJvcGVyeSBpbiBpdHMgcHJvdG90
eXBlLicpOwotICAgIGFzc2VydF9lcXVhbHMoc2VsZi5mZXRjaCwgc2VsZi5fX3Byb3RvX18uX19w
cm90b19fLmZldGNoLAorICAgIGFzc2VydF9lcXVhbHMoc2VsZi5mZXRjaCwgT2JqZWN0LmdldFBy
b3RvdHlwZU9mKE9iamVjdC5nZXRQcm90b3R5cGVPZihzZWxmKSkuZmV0Y2gsCiAgICAgICAgICdT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuZmV0Y2ggc2hvdWxkIGJlIHRoZSBzYW1lIGFzICcgKwog
ICAgICAgICAnV29ya2VyR2xvYmFsU2NvcGUuZmV0Y2guJyk7CiB9LCAnRmV0Y2ggbWV0aG9kIG9u
IHRoZSByaWdodCBpbnRlcmZhY2UnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Fj
dGl2YXRpb24uaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2FjdGl2YXRpb24uaHR0cHMu
aHRtbAppbmRleCBlNmYxMzZlNmI4YmI2YWU1YzdhZTRkNDA1NTVjOTBhYmJjODBmZGVmLi4yNzg0
NTRkMzM4M2UzZDcxYTM5MjU2NjNkZmNmYzM0NDRlZGRmZjgzIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9hY3RpdmF0aW9uLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
YWN0aXZhdGlvbi5odHRwcy5odG1sCkBAIC01MCw3ICs1MCw3IEBAIGZ1bmN0aW9uIHNldHVwX2Fj
dGl2YXRpb25fdGVzdCh0LCBzY29wZSwgd29ya2VyX3VybCkgewogICAgICAgICByZXR1cm4gd2Fp
dF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdpbnN0YWxsZWQnKTsKICAg
ICAgIH0pCiAgICAgLnRoZW4oKCkgPT4gewotICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZh
dGlvbl9vbl9kdW1teV9zY29wZSh0LCBzZWxmKTsKKyAgICAgICAgcmV0dXJuIHdhaXRfZm9yX2Fj
dGl2YXRpb25fb25fc2FtcGxlX3Njb3BlKHQsIHNlbGYpOwogICAgICAgfSkKICAgICAudGhlbigo
KSA9PiB7CiAgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKHJlZ2lzdHJhdGlvbi53YWl0aW5nLCBu
dWxsKTsKQEAgLTcwLDcgKzcwLDcgQEAgcHJvbWlzZV90ZXN0KHQgPT4gewogICAgICAgICAgIGlm
cmFtZSA9IHJlc3VsdC5pZnJhbWU7CiAgICAgICAgICAgLy8gRmluaXNoIHRoZSBpbi1mbGlnaHQg
cmVxdWVzdC4KICAgICAgICAgICByZWdpc3RyYXRpb24uYWN0aXZlLnBvc3RNZXNzYWdlKCdnbycp
OwotICAgICAgICAgIHJldHVybiB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX2R1bW15X3Njb3BlKHQs
IHNlbGYpOworICAgICAgICAgIHJldHVybiB3YWl0X2Zvcl9hY3RpdmF0aW9uX29uX3NhbXBsZV9z
Y29wZSh0LCBzZWxmKTsKICAgICAgICAgfSkKICAgICAgIC50aGVuKCgpID0+IHsKICAgICAgICAg
ICAvLyBUaGUgbmV3IHdvcmtlciBpcyBzdGlsbCB3YWl0aW5nLiBSZW1vdmUgdGhlIGZyYW1lIGFu
ZCBpdCBzaG91bGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLWZldGNoLmh0
dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGFpbS1mZXRjaC5odHRwcy5odG1sCmluZGV4
IDQwMGI1OTNhYzk2MTk0MmY2ZTkyNzRhZWU5OGJhYzIyODU2ZWFmMjIuLmFlMDA4MmRmMDZiZjc5
NGQwMjk5MGE3YzBiNzIxM2UwZDgxMTE0Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsYWltLWZldGNoLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xhaW0tZmV0
Y2guaHR0cHMuaHRtbApAQCAtMSw1MiArMSw0NiBAQAogPCFkb2N0eXBlIGh0bWw+CiA8bWV0YSBj
aGFyc2V0PXV0Zi04PgogPHRpdGxlPjwvdGl0bGU+Cis8bWV0YSBuYW1lPSJ0aW1lb3V0IiBjb250
ZW50PSJsb25nIj4KIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3Jp
cHQ+CiA8Ym9keT4KIDxzY3JpcHQ+CiAKLWFzeW5jIGZ1bmN0aW9uIHRyeV9mZXRjaChmZXRjaF9m
dW5jLCBwYXRoKSB7Cithc3luYyBmdW5jdGlvbiB0cnlGZXRjaChmZXRjaEZ1bmMsIHBhdGgpIHsK
ICAgbGV0IHJlc3BvbnNlOwogICB0cnkgewotICAgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaF9mdW5j
KHBhdGgpOworICAgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaEZ1bmMocGF0aCk7CiAgIH0gY2F0Y2gg
KGVycikgewogICAgIHRocm93IChgZmV0Y2goKSB0aHJldzogJHtlcnJ9YCk7CiAgIH0KIAotICBs
ZXQgcmVzcG9uc2VfdGV4dDsKKyAgbGV0IHJlc3BvbnNlVGV4dDsKICAgdHJ5IHsKLSAgIHJlc3Bv
bnNlX3RleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7CisgICByZXNwb25zZVRleHQgPSBhd2Fp
dCByZXNwb25zZS50ZXh0KCk7CiAgIH0gY2F0Y2ggKGVycikgewogICAgdGhyb3cgKGB0ZXh0KCkg
dGhyZXc6ICR7ZXJyfWApOwogICB9CiAKLSAgcmV0dXJuIHJlc3BvbnNlX3RleHQ7CisgIHJldHVy
biByZXNwb25zZVRleHQ7CiB9CiAKIHByb21pc2VfdGVzdChhc3luYyBmdW5jdGlvbih0KSB7Ci0g
IGxldCBmcmFtZTsKICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzLyc7CiAgIGNvbnN0IHNjcmlw
dCA9ICdyZXNvdXJjZXMvY2xhaW0td29ya2VyLmpzJzsKLSAgdC5hZGRfY2xlYW51cChhc3luYyAo
KSA9PiB7Ci0gICAgaWYgKGZyYW1lKQotICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgcmV0dXJu
IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICB9KTsKLQogICBjb25zdCBy
ZXNvdXJjZSA9ICdzaW1wbGUudHh0JzsKIAogICAvLyBDcmVhdGUgdGhlIHRlc3QgZnJhbWUuCi0g
IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOwotICBmcmFtZSA9IGF3
YWl0IHdpdGhfaWZyYW1lKCdyZXNvdXJjZXMvYmxhbmsuaHRtbCcpOworICBjb25zdCBmcmFtZSA9
IGF3YWl0IHdpdGhfaWZyYW1lKCdyZXNvdXJjZXMvYmxhbmsuaHRtbCcpOworICB0LmFkZF9jbGVh
bnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKIAogICAvLyBDaGVjayB0aGUgY29udHJvbGxlciBh
bmQgdGVzdCB3aXRoIGZldGNoLgogICBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cu
bmF2aWdhdG9yLmNvbnRyb2xsZXIsIHVuZGVmaW5lZCwKICAgICAgICAgICAgICAgICAnU2hvdWxk
IGhhdmUgbm8gY29udHJvbGxlci4nKTsKICAgbGV0IHJlc3BvbnNlOwogICB0cnkgewotICAgIHJl
c3BvbnNlID0gYXdhaXQgdHJ5X2ZldGNoKGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2gsIHJlc291
cmNlKTsKKyAgICByZXNwb25zZSA9IGF3YWl0IHRyeUZldGNoKGZyYW1lLmNvbnRlbnRXaW5kb3cu
ZmV0Y2gsIHJlc291cmNlKTsKICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgYXNzZXJ0X3VucmVhY2hl
ZChgdW5jb250cm9sbGVkIGZldGNoIGZhaWxlZDogJHtlcnJ9YCk7CiAgIH0KQEAgLTU0LDI3ICs0
OCwzNyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAg
ICdmZXRjaCgpIHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuJyk7CiAKICAgLy8gUmVnaXN0ZXIg
YSBzZXJ2aWNlIHdvcmtlci4KLSAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgbmF2aWdhdG9y
LnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7c2NvcGV9KTsKKyAgY29uc3QgcmVnaXN0
cmF0aW9uID0KKyAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rl
cih0LCBzY3JpcHQsIHNjb3BlKTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24u
dW5yZWdpc3RlcigpKTsKICAgY29uc3Qgd29ya2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7
CiAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHdvcmtlciwgJ2FjdGl2YXRlZCcpOwogCisgIC8v
IFJlZ2lzdGVyIGEgY29udHJvbGxlcmNoYW5nZSBldmVudCB0byB3YWl0IHVudGlsIHRoZSBjb250
cm9sbGVyIGlzIHVwZGF0ZWQKKyAgLy8gYW5kIGNoZWNrIGlmIHRoZSBmcmFtZSBpcyBjb250cm9s
bGVkIGJ5IGEgc2VydmljZSB3b3JrZXIuCisgIGNvbnN0IGNvbnRyb2xsZXJDaGFuZ2VkID0gbmV3
IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICBmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRv
ci5zZXJ2aWNlV29ya2VyLm9uY29udHJvbGxlcmNoYW5nZSA9ICgpID0+IHsKKyAgICAgIHJlc29s
dmUoZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVy
KTsKKyAgICB9OworICB9KTsKKwogICAvLyBUZWxsIHRoZSBzZXJ2aWNlIHdvcmtlciB0byBjbGFp
bSB0aGUgaWZyYW1lLgotICBjb25zdCBzYXdfbWVzc2FnZSA9IG5ldyBQcm9taXNlKChyZXNvbHZl
KSA9PiB7CisgIGNvbnN0IHNhd01lc3NhZ2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gewog
ICAgIGNvbnN0IGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTsKICAgICBjaGFubmVsLnBv
cnQxLm9ubWVzc2FnZSA9IHQuc3RlcF9mdW5jKChldmVudCkgPT4gewogICAgICAgcmVzb2x2ZShl
dmVudC5kYXRhKTsKICAgICB9KTsKICAgICB3b3JrZXIucG9zdE1lc3NhZ2Uoe3BvcnQ6IGNoYW5u
ZWwucG9ydDJ9LCBbY2hhbm5lbC5wb3J0Ml0pOwogICB9KTsKLSAgY29uc3QgZGF0YSA9IGF3YWl0
IHNhd19tZXNzYWdlOworICBjb25zdCBkYXRhID0gYXdhaXQgc2F3TWVzc2FnZTsKICAgYXNzZXJ0
X2VxdWFscyhkYXRhLCAnUEFTUycsICdXb3JrZXIgY2FsbCB0byBjbGFpbSgpIHNob3VsZCBmdWxm
aWxsLicpOwogCi0gIC8vIENoZWNrIHRoZSBjb250cm9sbGVyIGFuZCB0ZXN0IHdpdGggZmV0Y2gu
Ci0gIGNvbnN0IGNvbnRyb2xsZXIgPSBmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2
aWNlV29ya2VyLmNvbnRyb2xsZXI7CisgIC8vIENoZWNrIGlmIHRoZSBjb250cm9sbGVyIGlzIHVw
ZGF0ZWQgYWZ0ZXIgY2xhaW0oKSBhbmQgdGVzdCB3aXRoIGZldGNoLgorICBjb25zdCBjb250cm9s
bGVyID0gYXdhaXQgY29udHJvbGxlckNoYW5nZWQ7CiAgIGFzc2VydF90cnVlKGNvbnRyb2xsZXIg
aW5zdGFuY2VvZiBmcmFtZS5jb250ZW50V2luZG93LlNlcnZpY2VXb3JrZXIsCiAgICAgICAgICAg
ICAgICdpZnJhbWUgc2hvdWxkIGJlIGNvbnRyb2xsZWQuJyk7CiAgIHRyeSB7Ci0gICAgcmVzcG9u
c2UgPSBhd2FpdCB0cnlfZmV0Y2goZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCwgcmVzb3VyY2Up
OworICAgIHJlc3BvbnNlID0gYXdhaXQgdHJ5RmV0Y2goZnJhbWUuY29udGVudFdpbmRvdy5mZXRj
aCwgcmVzb3VyY2UpOwogICB9IGNhdGNoIChlcnIpIHsKICAgICBhc3NlcnRfdW5yZWFjaGVkKGBj
b250cm9sbGVkIGZldGNoIGZhaWxlZDogJHtlcnJ9YCk7CiAgIH0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4
IDQxMGIxOGEyYzU2OTVmNzUwY2QzYTM0YTY0YjI5MDYwMzBhNWQ3YjYuLjY4MTk5ZWY3N2NjNWNh
YThhMmNiNWYwNjI2MWZjOTQyNmYyYzI5MGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvY2xhaW0td29ya2VyLWZldGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDEx
IEBACiAKKworSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKIFBBU1Mg
ZmV0Y2goKSBpbiBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQg
aXMgY2xhaW1lZC4KIEZBSUwgZmV0Y2goKSBpbiBuZXN0ZWQgV29ya2VyIHNob3VsZCBiZSBpbnRl
cmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNsYWltZWQuIGFzc2VydF9lcXVhbHM6IGZldGNo
KCkgc2hvdWxkIG5vdCBiZSBpbnRlcmNlcHRlZC4gZXhwZWN0ZWQgImEgc2ltcGxlIHRleHQgZmls
ZVxuIiBidXQgZ290ICJGYWlsOiB1bmRlZmluZWQiCitQQVNTIGZldGNoKCkgaW4gYmxvYiBVUkwg
V29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNsYWltZWQu
CitUSU1FT1VUIGZldGNoKCkgaW4gbmVzdGVkIGJsb2IgVVJMIFdvcmtlciBjcmVhdGVkIGZyb20g
YSBibG9iIFVSTCBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQg
aXMgY2xhaW1lZC4gVGVzdCB0aW1lZCBvdXQKK05PVFJVTiBmZXRjaCgpIGluIG5lc3RlZCBXb3Jr
ZXIgY3JlYXRlZCBmcm9tIGEgYmxvYiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBh
ZnRlciB0aGUgY2xpZW50IGlzIGNsYWltZWQuCitOT1RSVU4gZmV0Y2goKSBpbiBuZXN0ZWQgYmxv
YiBVUkwgV29ya2VyIGNyZWF0ZWQgZnJvbSBhIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQg
YWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9jbGFpbS13b3JrZXItZmV0Y2guaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Ns
YWltLXdvcmtlci1mZXRjaC5odHRwcy5odG1sCmluZGV4IDRiNDlhODE1MmE0MmM5ZTQ1MTA0MTM5
YjQ2YjlmYTU2NzYyZGU2YmIuLjdjYjI2Yzc0MmI5N2QzZDc2OGUwMWVjMDlhZGIxY2VlY2E5OWRj
ODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLXdvcmtlci1mZXRjaC5odHRw
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy5o
dG1sCkBAIC03LDczICs3LDc2IEBACiA8Ym9keT4KIDxzY3JpcHQ+CiAKLXByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7Citwcm9taXNlX3Rlc3QoKHQpID0+IHsKICAgcmV0dXJuIHJ1blRlc3QodCwg
J3Jlc291cmNlcy9jbGFpbS13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwnKTsKIH0sICdmZXRjaCgp
IGluIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFp
bWVkLicpOwogCi1wcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgeworcHJvbWlzZV90ZXN0KCh0KSA9
PiB7CiAgIHJldHVybiBydW5UZXN0KHQsICdyZXNvdXJjZXMvY2xhaW0tbmVzdGVkLXdvcmtlci1m
ZXRjaC1pZnJhbWUuaHRtbCcpOwogfSwgJ2ZldGNoKCkgaW4gbmVzdGVkIFdvcmtlciBzaG91bGQg
YmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLicpOwogCi1mdW5jdGlv
biBydW5UZXN0KHQsIGlmcmFtZV91cmwpIHsKLSAgdmFyIHJlc291cmNlID0gJ3NpbXBsZS50eHQn
OworcHJvbWlzZV90ZXN0KCh0KSA9PiB7CisgIHJldHVybiBydW5UZXN0KHQsICdyZXNvdXJjZXMv
Y2xhaW0tYmxvYi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sJyk7Cit9LCAnZmV0Y2goKSBp
biBibG9iIFVSTCBXb3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGFmdGVyIHRoZSBjbGllbnQg
aXMgY2xhaW1lZC4nKTsKIAotICB2YXIgZnJhbWU7Ci0gIHZhciByZWdpc3RyYXRpb247Ci0gIHZh
ciB3b3JrZXI7Ci0gIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvJzsKLSAgdmFyIHNjcmlwdCA9ICdy
ZXNvdXJjZXMvY2xhaW0td29ya2VyLmpzJzsKK3Byb21pc2VfdGVzdCgodCkgPT4geworICByZXR1
cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0bWwnKTsK
K30sICdmZXRjaCgpIGluIG5lc3RlZCBibG9iIFVSTCBXb3JrZXIgY3JlYXRlZCBmcm9tIGEgYmxv
YiBVUkwgV29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBhZnRlciB0aGUgY2xpZW50IGlzIGNs
YWltZWQuJyk7CiAKLSAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpCi0gICAgLy8gQ3JlYXRlIHRo
ZSB0ZXN0IGlmcmFtZSB3aXRoIGEgZGVkaWNhdGVkIHdvcmtlci4KLSAgICAudGhlbigoKSA9PiB3
aXRoX2lmcmFtZShpZnJhbWVfdXJsKSkKLSAgICAudGhlbihmID0+IHsKLSAgICAgIHQuYWRkX2Ns
ZWFudXAoKCkgPT4gZi5yZW1vdmUoKSk7Ci0gICAgICBmcmFtZSA9IGY7Ci0gICAgfSkKK3Byb21p
c2VfdGVzdCgodCkgPT4geworICByZXR1cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL25lc3RlZC13
b3JrZXItY3JlYXRlZC1mcm9tLWJsb2ItdXJsLXdvcmtlci5odG1sJyk7Cit9LCAnZmV0Y2goKSBp
biBuZXN0ZWQgV29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJMIFdvcmtlciBzaG91bGQgYmUg
aW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVudCBpcyBjbGFpbWVkLicpOwogCi0gICAgLy8gQ2hl
Y2sgdGhlIGNvbnRyb2xsZXIgYW5kIHRlc3Qgd2l0aCBmZXRjaCBpbiB0aGUgd29ya2VyLgotICAg
IC50aGVuKCgpID0+IGFzc2VydF9lcXVhbHMoZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iu
Y29udHJvbGxlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVmaW5lZCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdTaG91bGQgaGF2ZSBubyBjb250cm9sbGVyLicp
KQotICAgIC50aGVuKCgpID0+IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2hfaW5fd29ya2VyKHJl
c291cmNlKSkKLSAgICAudGhlbihyZXNwb25zZV90ZXh0ID0+IGFzc2VydF9lcXVhbHMocmVzcG9u
c2VfdGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Egc2lt
cGxlIHRleHQgZmlsZVxuJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJ2ZldGNoKCkgc2hvdWxkIG5vdCBiZSBpbnRlcmNlcHRlZC4nKSkKLSAgICAvLyBSZWdpc3Rl
ciBhIHNlcnZpY2Ugd29ya2VyLgotICAgIC50aGVuKCgpID0+IHNlcnZpY2Vfd29ya2VyX3VucmVn
aXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHNjcmlwdCwgc2NvcGUpKQotICAgIC50aGVuKHIgPT4gewot
ICAgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByLnVucmVnaXN0ZXIoKSk7Ci0gICAgICB3b3JrZXIg
PSByLmluc3RhbGxpbmc7Ci0gICAgfSkKLSAgICAudGhlbigoKSA9PiB3YWl0X2Zvcl9zdGF0ZSh0
LCB3b3JrZXIsICdhY3RpdmF0ZWQnKSkKK3Byb21pc2VfdGVzdCgodCkgPT4geworICByZXR1cm4g
cnVuVGVzdCh0LCAncmVzb3VyY2VzL25lc3RlZC1ibG9iLXVybC13b3JrZXItY3JlYXRlZC1mcm9t
LXdvcmtlci5odG1sJyk7Cit9LCAnZmV0Y2goKSBpbiBuZXN0ZWQgYmxvYiBVUkwgV29ya2VyIGNy
ZWF0ZWQgZnJvbSBhIFdvcmtlciBzaG91bGQgYmUgaW50ZXJjZXB0ZWQgYWZ0ZXIgdGhlIGNsaWVu
dCBpcyBjbGFpbWVkLicpOwogCi0gICAgLy8gTGV0IHRoZSBzZXJ2aWNlIHdvcmtlciBjbGFpbSB0
aGUgaWZyYW1lIGFuZCB0aGUgd29ya2VyLgotICAgIC50aGVuKCgpID0+IHsKLSAgICAgIHZhciBj
aGFubmVsID0gbmV3IE1lc3NhZ2VDaGFubmVsKCk7Ci0gICAgICB2YXIgc2F3X21lc3NhZ2UgPSBu
ZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKSB7Ci0gICAgICAgIGNoYW5uZWwucG9ydDEub25t
ZXNzYWdlID0gdC5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgewotICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZS5kYXRhLCAnUEFTUycsCi0gICAgICAgICAgICAgICAgICAgICAgICAnV29ya2VyIGNhbGwg
dG8gY2xhaW0oKSBzaG91bGQgZnVsZmlsbC4nKTsKLSAgICAgICAgICByZXNvbHZlKCk7Ci0gICAg
ICAgIH0pOwotICAgICAgfSk7Ci0gICAgICB3b3JrZXIucG9zdE1lc3NhZ2Uoe3BvcnQ6IGNoYW5u
ZWwucG9ydDJ9LCBbY2hhbm5lbC5wb3J0Ml0pOwotICAgICAgcmV0dXJuIHNhd19tZXNzYWdlOwot
ICAgIH0pCithc3luYyBmdW5jdGlvbiBydW5UZXN0KHQsIGlmcmFtZV91cmwpIHsKKyAgY29uc3Qg
cmVzb3VyY2UgPSAnc2ltcGxlLnR4dCc7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy8nOwor
ICBjb25zdCBzY3JpcHQgPSAncmVzb3VyY2VzL2NsYWltLXdvcmtlci5qcyc7CiAKLSAgICAvLyBD
aGVjayB0aGUgY29udHJvbGxlciBhbmQgdGVzdCB3aXRoIGZldGNoIGluIHRoZSB3b3JrZXIuCi0g
ICAgLnRoZW4oKCkgPT4gZnJhbWUuY29udGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtl
ci5nZXRSZWdpc3RyYXRpb24oc2NvcGUpKQotICAgIC50aGVuKHIgPT4gcmVnaXN0cmF0aW9uID0g
cikKLSAgICAudGhlbigoKSA9PiBhc3NlcnRfZXF1YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2
aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxlciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcmVnaXN0cmF0aW9uLmFjdGl2ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
J1Rlc3QgaWZyYW1lIHNob3VsZCBiZSBjbGFpbWVkLicpKQorICAvLyBDcmVhdGUgdGhlIHRlc3Qg
aWZyYW1lIHdpdGggYSBkZWRpY2F0ZWQgd29ya2VyLgorICBjb25zdCBmcmFtZSA9IGF3YWl0IHdp
dGhfaWZyYW1lKGlmcmFtZV91cmwpOworICB0LmFkZF9jbGVhbnVwKF8gPT4gZnJhbWUucmVtb3Zl
KCkpOworCisgIC8vIENoZWNrIHRoZSBjb250cm9sbGVyIGFuZCB0ZXN0IHdpdGggZmV0Y2ggaW4g
dGhlIHdvcmtlci4KKyAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRv
ci5jb250cm9sbGVyLAorICAgICAgICAgICAgICAgIHVuZGVmaW5lZCwgJ1Nob3VsZCBoYXZlIG5v
IGNvbnRyb2xsZXIuJyk7CisgIHsKKyAgICBjb25zdCByZXNwb25zZV90ZXh0ID0gYXdhaXQgZnJh
bWUuY29udGVudFdpbmRvdy5mZXRjaF9pbl93b3JrZXIocmVzb3VyY2UpOworICAgIGFzc2VydF9l
cXVhbHMocmVzcG9uc2VfdGV4dCwgJ2Egc2ltcGxlIHRleHQgZmlsZVxuJywKKyAgICAgICAgICAg
ICAgICAgICdmZXRjaCgpIHNob3VsZCBub3QgYmUgaW50ZXJjZXB0ZWQuJyk7CisgIH0KKworICAv
LyBSZWdpc3RlciBhIHNlcnZpY2Ugd29ya2VyLgorICBjb25zdCByZWcgPSBhd2FpdCBzZXJ2aWNl
X3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3BlKTsKKyAgdC5h
ZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lzdGVyKCkpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0
ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworCisgIC8vIExldCB0aGUgc2Vydmlj
ZSB3b3JrZXIgY2xhaW0gdGhlIGlmcmFtZSBhbmQgdGhlIHdvcmtlci4KKyAgY29uc3QgY2hhbm5l
bCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOworICBjb25zdCBzYXdfbWVzc2FnZSA9IG5ldyBQcm9t
aXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKKyAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IHQu
c3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoZS5kYXRhLCAnUEFT
UycsICdXb3JrZXIgY2FsbCB0byBjbGFpbSgpIHNob3VsZCBmdWxmaWxsLicpOworICAgICAgcmVz
b2x2ZSgpOworICAgIH0pOworICB9KTsKKyAgcmVnLmFjdGl2ZS5wb3N0TWVzc2FnZSh7cG9ydDog
Y2hhbm5lbC5wb3J0Mn0sIFtjaGFubmVsLnBvcnQyXSk7CisgIGF3YWl0IHNhd19tZXNzYWdlOwor
CisgIC8vIENoZWNrIHRoZSBjb250cm9sbGVyIGFuZCB0ZXN0IHdpdGggZmV0Y2ggaW4gdGhlIHdv
cmtlci4KKyAgY29uc3QgcmVnMiA9CisgICAgYXdhaXQgZnJhbWUuY29udGVudFdpbmRvdy5uYXZp
Z2F0b3Iuc2VydmljZVdvcmtlci5nZXRSZWdpc3RyYXRpb24oc2NvcGUpOworICBhc3NlcnRfZXF1
YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxl
ciwKKyAgICAgICAgICAgICAgICByZWcyLmFjdGl2ZSwgJ1Rlc3QgaWZyYW1lIHNob3VsZCBiZSBj
bGFpbWVkLicpOworCisgIHsKICAgICAvLyBUT0RPKGhvcm8pOiBDaGVjayB0aGUgd29ya2VyJ3Mg
bmF2aWdhdG9yLnNldmljZVdvcmtlci5jb250cm9sbGVyLgotICAgIC50aGVuKCgpID0+IGZyYW1l
LmNvbnRlbnRXaW5kb3cuZmV0Y2hfaW5fd29ya2VyKHJlc291cmNlKSkKLSAgICAudGhlbihyZXNw
b25zZV90ZXh0ID0+Ci0gICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZV90ZXh0LAotICAg
ICAgICAgICAgICAgICAgICAgICAgJ0ludGVyY2VwdGVkIScsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAnZmV0Y2goKSBpbiB0aGUgd29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZC4nKSk7Cisg
ICAgY29uc3QgcmVzcG9uc2VfdGV4dCA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2hf
aW5fd29ya2VyKHJlc291cmNlKTsKKyAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlX3RleHQsICdJ
bnRlcmNlcHRlZCEnLAorICAgICAgICAgICAgICAgICAgJ2ZldGNoKCkgaW4gdGhlIHdvcmtlciBz
aG91bGQgYmUgaW50ZXJjZXB0ZWQuJyk7CisgIH0KIH0KIAogPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2NsaWVudC1uYXZpZ2F0ZS5odHRwcy5odG1sCmluZGV4IDYxMTJlMzdjMzRlZTk5
MTA5NGVlOGZjYmU2MjNlOWMxZTI2ZjZlN2MuLmY0MGEwODYzNWNmZDFlMDM0NWE2NDIyOGNjYWI4
MjMwMjQzOWY3ZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC1uYXZpZ2F0
ZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC1uYXZpZ2F0ZS5odHRw
cy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPCFkb2N0eXBlIGh0bWw+CiA8bWV0YSBjaGFyc2V0PXV0
Zi04PgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+CiA8dGl0bGU+U2Vydmlj
ZSBXb3JrZXI6IFdpbmRvd0NsaWVudC5uYXZpZ2F0ZTwvdGl0bGU+CiA8c2NyaXB0IHNyYz0vcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9L3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcz48L3NjcmlwdD4KQEAgLTMyLDE1NCArMzMsNzUgQEAKICAgICB9
KTsKICAgfQogCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHdvcmtlciA9
ICJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcyI7Ci0gICAgdmFyIHNjb3BlID0g
InJlc291cmNlcy9jbGllbnQtbmF2aWdhdGUtZnJhbWUuaHRtbCI7Ci0gICAgdmFyIGNvbnRyb2xs
ZXIsIGZyYW1lLCBjbGllbnRJZDsKKyAgYXN5bmMgZnVuY3Rpb24gd2l0aF9jb250cm9sbGVkX2lm
cmFtZV9hbmRfdXJsKHQsIG5hbWUsIGYpIHsKKyAgICBjb25zdCBTQ1JJUFQgPSAicmVzb3VyY2Vz
L2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOworICAgIGNvbnN0IFNDT1BFID0gInJlc291cmNl
cy9jbGllbnQtbmF2aWdhdGUtZnJhbWUuaHRtbCI7CiAKLSAgICByZXR1cm4gc2VydmljZV93b3Jr
ZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyLCBzY29wZSkKLSAgICAgIC50aGVu
KHJlZyA9PiB7Ci0gICAgICAgIGNvbnRyb2xsZXIgPSByZWcuaW5zdGFsbGluZzsKLSAgICAgICAg
cmV0dXJuIHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7Ci0g
ICAgICB9KQotICAgICAgLnRoZW4oX19fID0+IHdpdGhfaWZyYW1lKHNjb3BlKSkKLSAgICAgIC50
aGVuKGYgPT4gewotICAgICAgICBmcmFtZSA9IGY7Ci0gICAgICAgIGZldGNoX3Rlc3RzX2Zyb21f
d29ya2VyKGNvbnRyb2xsZXIpOwotICAgICAgICByZXR1cm4gd2FpdF9mb3JfbWVzc2FnZSgpCi0g
ICAgICB9KQotICAgICAgLnRoZW4oKHtpZH0pID0+IGNsaWVudElkID0gaWQpCi0gICAgICAudGhl
bihfX18gPT4gcnVuX3Rlc3QoY29udHJvbGxlciwgY2xpZW50SWQsICJ0ZXN0X2NsaWVudF9uYXZp
Z2F0ZV9zdWNjZXNzIikpCi0gICAgICAudGhlbigoe3Jlc3VsdCwgdXJsfSkgPT4gewotICAgICAg
ICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgInRlc3RfY2xpZW50X25hdmlnYXRlX3N1Y2Nlc3MiKTsK
LSAgICAgICAgYXNzZXJ0X2VxdWFscygKLSAgICAgICAgICB1cmwsIG5ldyBVUkwoInJlc291cmNl
cy9jbGllbnQtbmF2aWdhdGVkLWZyYW1lLmh0bWwiLAotICAgICAgICAgICAgICAgICAgICAgICBs
b2NhdGlvbikudG9TdHJpbmcoKSk7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoCi0gICAgICAgICAg
ZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmLAotICAgICAgICAgIG5ldyBVUkwoInJl
c291cmNlcy9jbGllbnQtbmF2aWdhdGVkLWZyYW1lLmh0bWwiLAotICAgICAgICAgICAgICAgICAg
bG9jYXRpb24pLnRvU3RyaW5nKCkpOwotICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgIH0p
Ci0gICAgICAuY2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSkKLSAgICAgIC50aGVuKF9fXyA9
PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyKHQsIHNjb3BlKSk7Ci0gIH0sICJGcmFtZSBsb2Nh
dGlvbiBzaG91bGQgdXBkYXRlIG9uIHN1Y2Nlc3NmdWwgbmF2aWdhdGlvbiIpOworICAgIC8vIFJl
Z2lzdGVyIHNlcnZpY2Ugd29ya2VyIGFuZCB3YWl0IGZvciBpdCB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rl
cl9hbmRfcmVnaXN0ZXIodCwgU0NSSVBULCBTQ09QRSk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9
PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgICBjb25zdCB3b3JrZXIgPSByZWdpc3Ry
YXRpb24uaW5zdGFsbGluZzsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCB3b3JrZXIsICdh
Y3RpdmF0ZWQnKTsKKworICAgIC8vIENyZWF0ZSBjaGlsZCBpZnJhbWUgYW5kIG1ha2Ugc3VyZSB3
ZSByZWdpc3RlciBhIGxpc3RlbmVyIGZvciB0aGUgbWVzc2FnZQorICAgIC8vIGl0IHNlbmRzIGJl
Zm9yZSBpdCdzIGNyZWF0ZWQKKyAgICBjb25zdCBjbGllbnRfaWRfcHJvbWlzZSA9IHdhaXRfZm9y
X21lc3NhZ2UoKTsKKyAgICBjb25zdCBpZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShTQ09QRSk7
CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBpZnJhbWUucmVtb3ZlKCkpOworICAgIGNvbnN0IHsg
aWQgfSA9IGF3YWl0IGNsaWVudF9pZF9wcm9taXNlOworCisgICAgLy8gUnVuIHRoZSB0ZXN0IGlu
IHRoZSBzZXJ2aWNlIHdvcmtlciBhbmQgZmV0Y2ggaXQKKyAgICBjb25zdCB7IHJlc3VsdCwgdXJs
IH0gPSBhd2FpdCBydW5fdGVzdCh3b3JrZXIsIGlkLCBuYW1lKTsKKyAgICBmZXRjaF90ZXN0c19m
cm9tX3dvcmtlcih3b3JrZXIpOworICAgIGFzc2VydF9lcXVhbHMocmVzdWx0LCBuYW1lKTsKKwor
ICAgIC8vIEhhbmQgb3ZlciB0aGUgaWZyYW1lIGFuZCBVUkwgZnJvbSB0aGUgc2VydmljZSB3b3Jr
ZXIgdG8gdGhlIGNhbGxiYWNrCisgICAgYXdhaXQgZihpZnJhbWUsIHVybCk7CisgIH0KIAogICBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB3b3JrZXIgPSAicmVzb3VyY2VzL2Ns
aWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOwotICAgIHZhciBzY29wZSA9ICJyZXNvdXJjZXMvY2xp
ZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwotICAgIHZhciBjb250cm9sbGVyLCBmcmFtZSwgY2xp
ZW50SWQ7CisgICAgcmV0dXJuIHdpdGhfY29udHJvbGxlZF9pZnJhbWVfYW5kX3VybCh0LCAndGVz
dF9jbGllbnRfbmF2aWdhdGVfc3VjY2VzcycsIGFzeW5jIChpZnJhbWUsIHVybCkgPT4geworICAg
ICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgdXJsLCBuZXcgVVJMKCJyZXNvdXJjZXMvY2xpZW50
LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKKyAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiku
dG9TdHJpbmcoKSk7CisgICAgICBhc3NlcnRfZXF1YWxzKAorICAgICAgICBpZnJhbWUuY29udGVu
dFdpbmRvdy5sb2NhdGlvbi5ocmVmLAorICAgICAgICBuZXcgVVJMKCJyZXNvdXJjZXMvY2xpZW50
LW5hdmlnYXRlZC1mcmFtZS5odG1sIiwKKyAgICAgICAgICAgICAgICBsb2NhdGlvbikudG9TdHJp
bmcoKSk7CisgICAgfSk7CisgIH0sICJGcmFtZSBsb2NhdGlvbiBzaG91bGQgdXBkYXRlIG9uIHN1
Y2Nlc3NmdWwgbmF2aWdhdGlvbiIpOwogCi0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVn
aXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2NvcGUpCi0gICAgICAudGhlbihyZWcgPT4g
ewotICAgICAgICBjb250cm9sbGVyID0gcmVnLmluc3RhbGxpbmc7Ci0gICAgICAgIHJldHVybiB3
YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgImFjdGl2YXRlZCIpOwotICAgICAgfSkK
LSAgICAgIC50aGVuKF9fXyA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihmID0+
IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihj
b250cm9sbGVyKTsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX21lc3NhZ2UoKQotICAgICAgfSkK
LSAgICAgIC50aGVuKCh7aWR9KSA9PiBjbGllbnRJZCA9IGlkKQotICAgICAgLnRoZW4oX19fID0+
IHJ1bl90ZXN0KGNvbnRyb2xsZXIsIGNsaWVudElkLCAidGVzdF9jbGllbnRfbmF2aWdhdGVfcmVk
aXJlY3QiKSkKLSAgICAgIC50aGVuKCh7cmVzdWx0LCB1cmx9KSA9PiB7Ci0gICAgICAgIGFzc2Vy
dF9lcXVhbHMocmVzdWx0LCAidGVzdF9jbGllbnRfbmF2aWdhdGVfcmVkaXJlY3QiKTsKLSAgICAg
ICAgYXNzZXJ0X2VxdWFscyh1cmwsICIiKTsKLSAgICAgICAgYXNzZXJ0X3Rocm93c19kb20oIlNl
Y3VyaXR5RXJyb3IiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9j
YXRpb24uaHJlZiB9KTsKLSAgICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgICB9KQotICAgICAg
LmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbihfX18gPT4gc2Vydmlj
ZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSkpOworICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dCkgeworICAgIHJldHVybiB3aXRoX2NvbnRyb2xsZWRfaWZyYW1lX2FuZF91cmwodCwgJ3Rlc3Rf
Y2xpZW50X25hdmlnYXRlX3JlZGlyZWN0JywgYXN5bmMgKGlmcmFtZSwgdXJsKSA9PiB7CisgICAg
ICBhc3NlcnRfZXF1YWxzKHVybCwgIiIpOworICAgICAgYXNzZXJ0X3Rocm93c19kb20oIlNlY3Vy
aXR5RXJyb3IiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGlmcmFtZS5jb250ZW50V2luZG93LmxvY2F0
aW9uLmhyZWYgfSk7CisgICAgfSk7CiAgIH0sICJGcmFtZSBsb2NhdGlvbiBzaG91bGQgbm90IGJl
IGFjY2Vzc2libGUgYWZ0ZXIgcmVkaXJlY3QiKTsKIAogICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dCkgewotICAgIHZhciB3b3JrZXIgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIu
anMiOwotICAgIHZhciBzY29wZSA9ICJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0
bWwiOwotICAgIHZhciBjb250cm9sbGVyLCBmcmFtZSwgY2xpZW50SWQ7Ci0KLSAgICByZXR1cm4g
c2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyLCBzY29wZSkK
LSAgICAgIC50aGVuKHJlZyA9PiB7Ci0gICAgICAgIGNvbnRyb2xsZXIgPSByZWcuaW5zdGFsbGlu
ZzsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAiYWN0
aXZhdGVkIik7Ci0gICAgICB9KQotICAgICAgLnRoZW4oX19fID0+IHdpdGhfaWZyYW1lKHNjb3Bl
KSkKLSAgICAgIC50aGVuKGYgPT4gewotICAgICAgICBmcmFtZSA9IGY7Ci0gICAgICAgIGZldGNo
X3Rlc3RzX2Zyb21fd29ya2VyKGNvbnRyb2xsZXIpOwotICAgICAgICByZXR1cm4gd2FpdF9mb3Jf
bWVzc2FnZSgpCi0gICAgICB9KQotICAgICAgLnRoZW4oKHtpZH0pID0+IGNsaWVudElkID0gaWQp
Ci0gICAgICAudGhlbihfX18gPT4gcnVuX3Rlc3QoY29udHJvbGxlciwgY2xpZW50SWQsICJ0ZXN0
X2NsaWVudF9uYXZpZ2F0ZV9jcm9zc19vcmlnaW4iKSkKLSAgICAgIC50aGVuKCh7cmVzdWx0LCB1
cmx9KSA9PiB7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMocmVzdWx0LCAidGVzdF9jbGllbnRfbmF2
aWdhdGVfY3Jvc3Nfb3JpZ2luIik7Ci0gICAgICAgIGFzc2VydF9lcXVhbHModXJsLCAiIik7Ci0g
ICAgICAgIGFzc2VydF90aHJvd3NfZG9tKCJTZWN1cml0eUVycm9yIiwgZnVuY3Rpb24oKSB7IHJl
dHVybiBmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWYgfSk7Ci0gICAgICAgIGZyYW1l
LnJlbW92ZSgpOwotICAgICAgfSkKLSAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQp
KQotICAgICAgLnRoZW4oX19fID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUp
KTsKKyAgICByZXR1cm4gd2l0aF9jb250cm9sbGVkX2lmcmFtZV9hbmRfdXJsKHQsICd0ZXN0X2Ns
aWVudF9uYXZpZ2F0ZV9jcm9zc19vcmlnaW4nLCBhc3luYyAoaWZyYW1lLCB1cmwpID0+IHsKKyAg
ICAgIGFzc2VydF9lcXVhbHModXJsLCAiIik7CisgICAgICBhc3NlcnRfdGhyb3dzX2RvbSgiU2Vj
dXJpdHlFcnJvciIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gaWZyYW1lLmNvbnRlbnRXaW5kb3cubG9j
YXRpb24uaHJlZiB9KTsKKyAgICB9KTsKICAgfSwgIkZyYW1lIGxvY2F0aW9uIHNob3VsZCBub3Qg
YmUgYWNjZXNzaWJsZSBhZnRlciBjcm9zcy1vcmlnaW4gbmF2aWdhdGlvbiIpOwogCiAgIHByb21p
c2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHdvcmtlciA9ICJyZXNvdXJjZXMvY2xpZW50
LW5hdmlnYXRlLXdvcmtlci5qcyI7Ci0gICAgdmFyIHNjb3BlID0gInJlc291cmNlcy9jbGllbnQt
bmF2aWdhdGUtZnJhbWUuaHRtbCI7Ci0gICAgdmFyIGNvbnRyb2xsZXIsIGZyYW1lLCBjbGllbnRJ
ZDsKLQotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0
LCB3b3JrZXIsIHNjb3BlKQotICAgICAgLnRoZW4ocmVnID0+IHsKLSAgICAgICAgY29udHJvbGxl
ciA9IHJlZy5pbnN0YWxsaW5nOwotICAgICAgICByZXR1cm4gd2FpdF9mb3Jfc3RhdGUodCwgcmVn
Lmluc3RhbGxpbmcsICJhY3RpdmF0ZWQiKTsKLSAgICAgIH0pCi0gICAgICAudGhlbihfX18gPT4g
d2l0aF9pZnJhbWUoc2NvcGUpKQotICAgICAgLnRoZW4oZiA9PiB7Ci0gICAgICAgIGZyYW1lID0g
ZjsKLSAgICAgICAgZmV0Y2hfdGVzdHNfZnJvbV93b3JrZXIoY29udHJvbGxlcik7Ci0gICAgICAg
IHJldHVybiB3YWl0X2Zvcl9tZXNzYWdlKCkKLSAgICAgIH0pCi0gICAgICAudGhlbigoe2lkfSkg
PT4gY2xpZW50SWQgPSBpZCkKLSAgICAgIC50aGVuKF9fXyA9PiBydW5fdGVzdChjb250cm9sbGVy
LCBjbGllbnRJZCwgInRlc3RfY2xpZW50X25hdmlnYXRlX2Fib3V0X2JsYW5rIikpCi0gICAgICAu
dGhlbigoe3Jlc3VsdCwgdXJsfSkgPT4gewotICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwg
InRlc3RfY2xpZW50X25hdmlnYXRlX2Fib3V0X2JsYW5rIik7Ci0gICAgICAgIGFzc2VydF9lcXVh
bHMoCi0gICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmLAorICAgIHJl
dHVybiB3aXRoX2NvbnRyb2xsZWRfaWZyYW1lX2FuZF91cmwodCwgJ3Rlc3RfY2xpZW50X25hdmln
YXRlX2Fib3V0X2JsYW5rJywgYXN5bmMgKGlmcmFtZSwgdXJsKSA9PiB7CisgICAgICBhc3NlcnRf
ZXF1YWxzKAorICAgICAgICAgIGlmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWYsCiAg
ICAgICAgICAgbmV3IFVSTCgicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS1mcmFtZS5odG1sIiwK
ICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uKS50b1N0cmluZygpKTsKLSAgICAgICAgZnJhbWUu
Y29udGVudFdpbmRvdy5kb2N1bWVudC5ib2R5LnN0eWxlID0gImJhY2tncm91bmQtY29sb3I6IGdy
ZWVuIgotICAgICAgICBmcmFtZS5yZW1vdmUoKTsKLSAgICAgIH0pCi0gICAgICAuY2F0Y2godW5y
ZWFjaGVkX3JlamVjdGlvbih0KSkKLSAgICAgIC50aGVuKF9fXyA9PiBzZXJ2aWNlX3dvcmtlcl91
bnJlZ2lzdGVyKHQsIHNjb3BlKSk7CisgICAgICBpZnJhbWUuY29udGVudFdpbmRvdy5kb2N1bWVu
dC5ib2R5LnN0eWxlID0gImJhY2tncm91bmQtY29sb3I6IGdyZWVuIgorICAgIH0pOwogICB9LCAi
RnJhbWUgbG9jYXRpb24gc2hvdWxkIG5vdCB1cGRhdGUgb24gZmFpbGVkIGFib3V0OmJsYW5rIG5h
dmlnYXRpb24iKTsKIAogICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB3b3Jr
ZXIgPSAicmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMiOwotICAgIHZhciBzY29w
ZSA9ICJyZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0bWwiOwotICAgIHZhciBjb250
cm9sbGVyLCBmcmFtZSwgY2xpZW50SWQ7Ci0KLSAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5y
ZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyLCBzY29wZSkKLSAgICAgIC50aGVuKHJlZyA9
PiB7Ci0gICAgICAgIGNvbnRyb2xsZXIgPSByZWcuaW5zdGFsbGluZzsKLSAgICAgICAgcmV0dXJu
IHdhaXRfZm9yX3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7Ci0gICAgICB9
KQotICAgICAgLnRoZW4oX19fID0+IHdpdGhfaWZyYW1lKHNjb3BlKSkKLSAgICAgIC50aGVuKGYg
PT4gewotICAgICAgICBmcmFtZSA9IGY7Ci0gICAgICAgIGZldGNoX3Rlc3RzX2Zyb21fd29ya2Vy
KGNvbnRyb2xsZXIpOwotICAgICAgICByZXR1cm4gd2FpdF9mb3JfbWVzc2FnZSgpCi0gICAgICB9
KQotICAgICAgLnRoZW4oKHtpZH0pID0+IGNsaWVudElkID0gaWQpCi0gICAgICAudGhlbihfX18g
PT4gcnVuX3Rlc3QoY29udHJvbGxlciwgY2xpZW50SWQsICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9t
aXhlZF9jb250ZW50IikpCi0gICAgICAudGhlbigoe3Jlc3VsdCwgdXJsfSkgPT4gewotICAgICAg
ICBhc3NlcnRfZXF1YWxzKHJlc3VsdCwgInRlc3RfY2xpZW50X25hdmlnYXRlX21peGVkX2NvbnRl
bnQiKTsKLSAgICAgICAgYXNzZXJ0X2VxdWFscygKLSAgICAgICAgICBmcmFtZS5jb250ZW50V2lu
ZG93LmxvY2F0aW9uLmhyZWYsCisgICAgcmV0dXJuIHdpdGhfY29udHJvbGxlZF9pZnJhbWVfYW5k
X3VybCh0LCAndGVzdF9jbGllbnRfbmF2aWdhdGVfbWl4ZWRfY29udGVudCcsIGFzeW5jIChpZnJh
bWUsIHVybCkgPT4geworICAgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgICBpZnJhbWUuY29u
dGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmLAogICAgICAgICAgIG5ldyBVUkwoInJlc291cmNlcy9j
bGllbnQtbmF2aWdhdGUtZnJhbWUuaHRtbCIsCiAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiku
dG9TdHJpbmcoKSk7Ci0gICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5z
dHlsZSA9ICJiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbiIKLSAgICAgICAgZnJhbWUucmVtb3ZlKCk7
Ci0gICAgICB9KQotICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAu
dGhlbihfX18gPT4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSkpOworICAgICAg
aWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5zdHlsZSA9ICJiYWNrZ3JvdW5kLWNv
bG9yOiBncmVlbiIKKyAgICB9KTsKICAgfSwgIkZyYW1lIGxvY2F0aW9uIHNob3VsZCBub3QgdXBk
YXRlIG9uIGZhaWxlZCBtaXhlZC1jb250ZW50IG5hdmlnYXRpb24iKTsKIDwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIu
aHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50LXVybC1vZi1ibG9i
LXVybC13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmN2E3YzE4OTI1Njhm
OGU3NTRlYTljYzkyYjNkYmRhZmE3NzdkZGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odHRwcy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwzIEBACisKK0ZBSUwgQ2xpZW50LnVybCBvZiBhIGJsb2IgVVJMIHdvcmtlciBz
aG91bGQgYmUgYSBibG9iIFVSTC4gYXNzZXJ0X25vdF9lcXVhbHM6IHdvcmtlciBjbGllbnQgc2hv
dWxkIGV4aXN0IGdvdCBkaXNhbGxvd2VkIHZhbHVlICJvbmUgd29ya2VyIGNsaWVudCBzaG91bGQg
ZXhpc3QiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC11cmwtb2YtYmxv
Yi11cmwtd29ya2VyLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtdXJsLW9m
LWJsb2ItdXJsLXdvcmtlci5odHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk3YTJmY2Y5OGYyOTBjMjkw
YjM0ODliODFjOTE4NzkyMmUzZTcxMWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odHRwcy5odG1sCkBAIC0wLDAgKzEs
MjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPlNlcnZpY2UgV29ya2VyOiBjbGllbnQudXJs
IG9mIGEgd29ya2VyIGNyZWF0ZWQgZnJvbSBhIGJsb2IgVVJMPC90aXRsZT4KKzxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVz
b3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorCitjb25zdCBT
Q1JJUFQgPSAncmVzb3VyY2VzL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmpzJzsKK2Nv
bnN0IFNDT1BFID0gJ3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odG1s
JzsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgIGNvbnN0IHJlZyA9IGF3YWl0IHNl
cnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIFNDUklQVCwgU0NPUEUpOwor
ICB0LmFkZF9jbGVhbnVwKF8gPT4gcmVnLnVucmVnaXN0ZXIoKSk7CisgIGF3YWl0IHdhaXRfZm9y
X3N0YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgY29uc3QgZnJhbWUg
PSBhd2FpdCB3aXRoX2lmcmFtZShTQ09QRSk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiBmcmFtZS5y
ZW1vdmUoKSk7CisgIGFzc2VydF9ub3RfZXF1YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdh
dG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxlciwKKyAgICAgICAgICAgICAgICAgICAgbnVsbCwg
J2ZyYW1lIHNob3VsZCBiZSBjb250cm9sbGVkJyk7CisKKyAgY29uc3QgcmVzcG9uc2UgPSBhd2Fp
dCBmcmFtZS5jb250ZW50V2luZG93LmNyZWF0ZUFuZEZldGNoRnJvbUJsb2JXb3JrZXIoKTsKKwor
ICBhc3NlcnRfbm90X2VxdWFscyhyZXNwb25zZS5yZXN1bHQsICdvbmUgd29ya2VyIGNsaWVudCBz
aG91bGQgZXhpc3QnLAorICAgICAgICAgICAgICAgICAgICAnd29ya2VyIGNsaWVudCBzaG91bGQg
ZXhpc3QnKTsKKyAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5yZXN1bHQsIHJlc3BvbnNlLmV4cGVj
dGVkLAorICAgICAgICAgICAgICAgICdjbGllbnQudXJsIGFuZCB3b3JrZXIgbG9jYXRpb24gaHJl
ZiBzaG91bGQgYmUgdGhlIHNhbWUnKTsKKworfSwgJ0NsaWVudC51cmwgb2YgYSBibG9iIFVSTCB3
b3JrZXIgc2hvdWxkIGJlIGEgYmxvYiBVUkwuJyk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwt
d29ya2VyLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MzZiYWZhZjY4NDI5ZTExZjkz
YjQ4YTM1M2QzYWZkYjJkOWYxODVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvY2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNCBAQAorCitGQUlMIFRlc3QgQ2xpZW50cy5tYXRjaEFsbCgpIHdpdGggYSBibG9i
IFVSTCB3b3JrZXIgY2xpZW50LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMAor
RkFJTCBUZXN0IENsaWVudHMubWF0Y2hBbGwoKSB3aXRoIGFuIHVuY29udHJvbGxlZCBibG9iIFVS
TCB3b3JrZXIgY2xpZW50LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAxIGJ1dCBnb3QgMAorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdv
cmtlci5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1ibG9i
LXVybC13b3JrZXIuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMjliYWM4Yjg5NGEyYzUwODI4YWUz
NDY5ZDNlMTgxZDIyN2ZlN2FjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
Y2xpZW50cy1tYXRjaGFsbC1ibG9iLXVybC13b3JrZXIuaHR0cHMuaHRtbApAQCAtMCwwICsxLDg1
IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5TZXJ2aWNlIFdvcmtlcjogQ2xpZW50cy5tYXRj
aEFsbCB3aXRoIGEgYmxvYiBVUkwgd29ya2VyIGNsaWVudDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2NvbnN0IFNDUklQ
VCA9ICdyZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFsbC13b3JrZXIuanMnOworCitwcm9taXNlX3Rl
c3QoYXN5bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL2NsaWVudHMtbWF0
Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0bWwnOworCisgIGNvbnN0IHJlZyA9IGF3YWl0IHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIFNDUklQVCwgc2NvcGUpOworICB0
LmFkZF9jbGVhbnVwKF8gPT4gcmVnLnVucmVnaXN0ZXIoKSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0
YXRlKHQsIHJlZy5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgY29uc3QgZnJhbWUgPSBh
d2FpdCB3aXRoX2lmcmFtZShzY29wZSk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiBmcmFtZS5yZW1v
dmUoKSk7CisKKyAgeworICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2lu
ZG93LndhaXRGb3JXb3JrZXIoKTsKKyAgICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UuZGF0YSwgJ1dv
cmtlciBpcyByZWFkeS4nLAorICAgICAgICAgICAgICAgICAgJ1dvcmtlciBzaG91bGQgcmVwbHkg
dG8gdGhlIG1lc3NhZ2UuJyk7CisgIH0KKworICBjb25zdCBjaGFubmVsID0gbmV3IE1lc3NhZ2VD
aGFubmVsKCk7CisgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+
IHsKKyAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IHJlc29sdmU7CisgICAgZnJhbWUuY29u
dGVudFdpbmRvdy5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyLnBvc3RNZXNzYWdl
KAorICAgICAge3BvcnQ6IGNoYW5uZWwucG9ydDIsIG9wdGlvbnM6IHt0eXBlOiAnd29ya2VyJ319
LCBbY2hhbm5lbC5wb3J0Ml0pOworICB9KTsKKworICBjaGVja01lc3NhZ2VFdmVudChtZXNzYWdl
KTsKKworfSwgJ1Rlc3QgQ2xpZW50cy5tYXRjaEFsbCgpIHdpdGggYSBibG9iIFVSTCB3b3JrZXIg
Y2xpZW50LicpOworCitwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NvcGUg
PSAncmVzb3VyY2VzL2JsYW5rLmh0bWwnOworCisgIGNvbnN0IHJlZyA9IGF3YWl0IHNlcnZpY2Vf
d29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIFNDUklQVCwgc2NvcGUpOworICB0LmFk
ZF9jbGVhbnVwKF8gPT4gcmVnLnVucmVnaXN0ZXIoKSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0YXRl
KHQsIHJlZy5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgY29uc3Qgd29ya2VyU2NyaXB0
ID0gYAorICAgIHNlbGYub25tZXNzYWdlID0gKGUpID0+IHsKKyAgICAgIHNlbGYucG9zdE1lc3Nh
Z2UoIldvcmtlciBpcyByZWFkeS4iKTsKKyAgICB9OworICBgOworICBjb25zdCBibG9iID0gbmV3
IEJsb2IoW3dvcmtlclNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSk7CisgIGNv
bnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworICBjb25zdCB3b3JrZXIg
PSBuZXcgV29ya2VyKGJsb2JVcmwpOworCisgIHsKKyAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQg
bmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgICB3b3JrZXIub25tZXNzYWdlID0gcmVzb2x2
ZTsKKyAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSgiUGluZyB0byB3b3JrZXIuIik7CisgICAgfSk7
CisgICAgYXNzZXJ0X2VxdWFscyhtZXNzYWdlLmRhdGEsICdXb3JrZXIgaXMgcmVhZHkuJywKKyAg
ICAgICAgICAgICAgICAgICdXb3JrZXIgc2hvdWxkIHJlcGx5IHRvIHRoZSBtZXNzYWdlLicpOwor
ICB9CisKKyAgY29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOworICBjb25zdCBt
ZXNzYWdlID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgY2hhbm5lbC5wb3J0
MS5vbm1lc3NhZ2UgPSByZXNvbHZlOworICAgIHJlZy5hY3RpdmUucG9zdE1lc3NhZ2UoCisgICAg
ICB7cG9ydDogY2hhbm5lbC5wb3J0MiwKKyAgICAgICBvcHRpb25zOiB7aW5jbHVkZVVuY29udHJv
bGxlZDogdHJ1ZSwgdHlwZTogJ3dvcmtlcid9fSwKKyAgICAgIFtjaGFubmVsLnBvcnQyXQorICAg
ICk7CisgIH0pOworCisgIGNoZWNrTWVzc2FnZUV2ZW50KG1lc3NhZ2UpOworCit9LCAnVGVzdCBD
bGllbnRzLm1hdGNoQWxsKCkgd2l0aCBhbiB1bmNvbnRyb2xsZWQgYmxvYiBVUkwgd29ya2VyIGNs
aWVudC4nKTsKKworZnVuY3Rpb24gY2hlY2tNZXNzYWdlRXZlbnQoZSkgeworICBhc3NlcnRfZXF1
YWxzKGUuZGF0YS5sZW5ndGgsIDEpOworCisgIGNvbnN0IHdvcmtlckNsaWVudCA9IGUuZGF0YVsw
XTsKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbMF0sIHVuZGVmaW5lZCk7IC8vIHZpc2li
aWxpdHlTdGF0ZQorICBhc3NlcnRfZXF1YWxzKHdvcmtlckNsaWVudFsxXSwgdW5kZWZpbmVkKTsg
Ly8gZm9jdXNlZAorICBhc3NlcnRfdHJ1ZSh3b3JrZXJDbGllbnRbMl0uaW5jbHVkZXMoJ2Jsb2I6
JykpOyAvLyB1cmwKKyAgYXNzZXJ0X2VxdWFscyh3b3JrZXJDbGllbnRbM10sICd3b3JrZXInKTsg
Ly8gdHlwZQorICBhc3NlcnRfZXF1YWxzKHdvcmtlckNsaWVudFs0XSwgJ25vbmUnKTsgLy8gZnJh
bWVUeXBlCit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRl
bnRpYWxzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxz
Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBiNjQ3MGI0YTIxZTE4ZDQ3NDE4MzA0N2QyNjgxY2Rl
NmQzZjYwY2E0Li45ZDNlNGNjM2RhZmQ4ZjNiYmU0YzUzYTBkM2M3MmU3YTc1NzJkMjBlIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVkZW50aWFscy5odHRwcy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvY3JlZGVudGlhbHMuaHR0cHMtZXhwZWN0ZWQudHh0CkBA
IC0yLDQgKzIsNiBAQAogUEFTUyBTZXQgY29va2llcyBhcyBpbml0aWFsaXphdGlvbgogUEFTUyBN
YWluIHNjcmlwdCBzaG91bGQgaGF2ZSBjcmVkZW50aWFscwogRkFJTCBJbXBvcnRlZCBzY3JpcHQg
c2hvdWxkIGhhdmUgY3JlZGVudGlhbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBudWxsIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3dvcmtlci5wb3N0TWVzc2FnZScpIgorRkFJTCBNb2R1bGUgd2l0aCBhbiBpbXBv
cnRlZCBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBoYXZlIGNyZWRlbnRpYWxzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogbnVsbCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICd3b3JrZXIucG9zdE1lc3NhZ2UnKSIKK0ZBSUwg
U2NyaXB0IHdpdGggc2VydmljZSB3b3JrZXIgc2VydmVkIGFzIG1vZHVsZXMgc2hvdWxkIG5vdCBo
YXZlIGNyZWRlbnRpYWxzIGFzc2VydF9lcXVhbHM6IG5ldyBtb2R1bGUgd29ya2VyIHNob3VsZCBu
b3QgaGF2ZSBjcmVkZW50aWFscyBleHBlY3RlZCAodW5kZWZpbmVkKSB1bmRlZmluZWQgYnV0IGdv
dCAoc3RyaW5nKSAiMSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY3JlZGVudGlh
bHMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NyZWRlbnRpYWxzLmh0dHBzLmh0bWwK
aW5kZXggOWQ2MTVlZGExZGQ4YzdiOTk0YWQ4YWEyMGNmZTJiY2FjYWRlNGRhOC4uMGE5MGRjMjg5
N2MyNzMyMzY4MmE2ZTE2YmZkNmFhYTUzNzA4NTVlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvY3JlZGVudGlhbHMuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jcmVk
ZW50aWFscy5odHRwcy5odG1sCkBAIC02MSw1ICs2MSw0MCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMg
dCA9PiB7CiAgIGFzc2VydF9lcXVhbHModXBkYXRlZF9jb29raWVzW0NPT0tJRV9OQU1FXSwgJzEn
LAogICAgICAgICAgICAgICAgICd1cGRhdGVkIHdvcmtlciBoYXMgY3JlZGVudGlhbHMnKTsKIH0s
ICdJbXBvcnRlZCBzY3JpcHQgc2hvdWxkIGhhdmUgY3JlZGVudGlhbHMnKTsKKworcHJvbWlzZV90
ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCBrZXkgPSB0b2tlbigpOworICBjb25zdCByZWdpc3Ry
YXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAg
ICAgIHQsIGByZXNvdXJjZXMvaW1wb3J0LWVjaG8tY29va2llLXdvcmtlci1tb2R1bGUucHk/a2V5
PSR7a2V5fWAsIFNDT1BFLCB7dHlwZTogJ21vZHVsZSd9KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9
PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgY29uc3Qgd29ya2VyID0gcmVnaXN0cmF0
aW9uLmluc3RhbGxpbmc7CisKKyAgY29uc3QgY29va2llcyA9IGF3YWl0IGdldF9jb29raWVzKHdv
cmtlcik7CisgIGFzc2VydF9lcXVhbHMoY29va2llc1tDT09LSUVfTkFNRV0sIHVuZGVmaW5lZCwg
J25ldyBtb2R1bGUgd29ya2VyIHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworCisgIGF3
YWl0IHJlZ2lzdHJhdGlvbi51cGRhdGUoKTsKKyAgY29uc3QgdXBkYXRlZF93b3JrZXIgPSByZWdp
c3RyYXRpb24uaW5zdGFsbGluZzsKKyAgY29uc3QgdXBkYXRlZF9jb29raWVzID0gYXdhaXQgZ2V0
X2Nvb2tpZXModXBkYXRlZF93b3JrZXIpOworICBhc3NlcnRfZXF1YWxzKHVwZGF0ZWRfY29va2ll
c1tDT09LSUVfTkFNRV0sIHVuZGVmaW5lZCwKKyAgICAgICAgICAgICAgICAndXBkYXRlZCB3b3Jr
ZXIgc2hvdWxkIG5vdCBoYXZlIGNyZWRlbnRpYWxzJyk7Cit9LCAnTW9kdWxlIHdpdGggYW4gaW1w
b3J0ZWQgc3RhdGVtZW50IHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworCitwcm9taXNl
X3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IGtleSA9IHRva2VuKCk7CisgIGNvbnN0IHJlZ2lz
dHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKAor
dCwgYHJlc291cmNlcy9lY2hvLWNvb2tpZS13b3JrZXIucHk/a2V5PSR7a2V5fWAsIFNDT1BFLCB7
dHlwZTogJ21vZHVsZSd9KTsKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5y
ZWdpc3RlcigpKTsKKyAgY29uc3Qgd29ya2VyID0gcmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7CisK
KyAgY29uc3QgY29va2llcyA9IGF3YWl0IGdldF9jb29raWVzKHdvcmtlcik7CisgIGFzc2VydF9l
cXVhbHMoY29va2llc1tDT09LSUVfTkFNRV0sIHVuZGVmaW5lZCwgJ25ldyBtb2R1bGUgd29ya2Vy
IHNob3VsZCBub3QgaGF2ZSBjcmVkZW50aWFscycpOworCisgIGF3YWl0IHJlZ2lzdHJhdGlvbi51
cGRhdGUoKTsKKyAgY29uc3QgdXBkYXRlZF93b3JrZXIgPSByZWdpc3RyYXRpb24uaW5zdGFsbGlu
ZzsKKyAgY29uc3QgdXBkYXRlZF9jb29raWVzID0gYXdhaXQgZ2V0X2Nvb2tpZXModXBkYXRlZF93
b3JrZXIpOworICBhc3NlcnRfZXF1YWxzKHVwZGF0ZWRfY29va2llc1tDT09LSUVfTkFNRV0sIHVu
ZGVmaW5lZCwKKyAgICAgICAgICAgICAgICAndXBkYXRlZCB3b3JrZXIgc2hvdWxkIG5vdCBoYXZl
IGNyZWRlbnRpYWxzJyk7Cit9LCAnU2NyaXB0IHdpdGggc2VydmljZSB3b3JrZXIgc2VydmVkIGFz
IG1vZHVsZXMgc2hvdWxkIG5vdCBoYXZlIGNyZWRlbnRpYWxzJyk7CisKIDwvc2NyaXB0PgogPC9i
b2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVz
Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA4ZWJiZmMzYzE4NjEzMjViZDVmOGQ3NDNkMmU3YjJj
NzRmNmE2N2VjLi5jODVjNjdhODI3NDk3MDBjNmJjYzYyYjYxMjRiYTU1YWFkYWM3Y2E5IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVzLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVzLmh0dHBz
LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAogCiAKLVBBU1MgUG9zdGluZyBhIEZpbGUg
aW4gYSBuYXZpZ2F0aW9uIGhhbmRsZWQgYnkgYSBzZXJ2aWNlIHdvcmtlcgorRkFJTCBQb3N0aW5n
IGEgRmlsZSBpbiBhIG5hdmlnYXRpb24gaGFuZGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICJmb29iYXIiIGJ1dCBnb3QgIkZpZWxkU3RvcmFnZSgndGVzdGlu
cHV0JywgJ25hbWUnLCAnZm9vYmFyJykiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2RhdGEtdHJhbnNmZXItZmlsZXMuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RhdGEt
dHJhbnNmZXItZmlsZXMuaHR0cHMuaHRtbAppbmRleCBjYzhhYjZlNjcyNzI2ZTE2OGI0NGRmZWU1
YjQ3MjAwMTJmZmZlZTBhLi5jNTAzYTI4Zjk2NWIyOTZiMzQ2ZGUyMzdhZWU3N2I0NjQxNGJiN2Nk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kYXRhLXRyYW5zZmVyLWZpbGVzLmh0dHBz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGF0YS10cmFuc2Zlci1maWxlcy5odHRwcy5o
dG1sCkBAIC0zNSw3ICszNSw3IEBAIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICAgICAg
cmVzb2x2ZShlLmRhdGEpOwogICAgIH07CiAgIH0pOwotICBhc3NlcnRfZXF1YWxzKGRhdGEsICJG
aWVsZFN0b3JhZ2UoJ3Rlc3RpbnB1dCcsICduYW1lJywgJ2Zvb2JhcicpIik7CisgIGFzc2VydF9l
cXVhbHMoZGF0YSwgImZvb2JhciIpOwogfSwgJ1Bvc3RpbmcgYSBGaWxlIGluIGEgbmF2aWdhdGlv
biBoYW5kbGVkIGJ5IGEgc2VydmljZSB3b3JrZXInKTsKIDwvc2NyaXB0PgogPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZGV0YWNoZWQtY29udGV4dC5odHRwcy5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZGV0YWNoZWQtY29udGV4dC5odHRwcy5odG1sCmluZGV4IGNiYjgx
OGY3YWMwZWJjYjg3ZWE1M2Q5NGU4NWI1MDQ1ZDllYWQzNWUuLjc0N2E5NTNmNjIwMzc1OGYwZmY3
ZDE4ZmM2ZWI4Y2M5YzE5ZjE3ZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2RldGFj
aGVkLWNvbnRleHQuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9kZXRhY2hlZC1j
b250ZXh0Lmh0dHBzLmh0bWwKQEAgLTQ3LDE0ICs0NywxNCBAQCBwcm9taXNlX3Rlc3QodCA9PiB7
CiAgICAgICAgICAgLy8gcmVzb2x2ZSBvbiBhIGRldGFjaGVkIHJlZ2lzdHJhdGlvbi4gIFdlIGNh
bid0IGNoZWNrIGZvcgogICAgICAgICAgIC8vIGFuIGV4cGxpY2l0IHJlamVjdGlvbiwgdGhvdWdo
LCBiZWNhdXNlIG5vdCBhbGwgYnJvd3NlcnMKICAgICAgICAgICAvLyBmaXJlIHJlamVjdGlvbiBj
YWxsYmFja3Mgb24gZGV0YWNoZWQgcHJvbWlzZXMuICBJbnN0ZWFkCi0gICAgICAgICAgLy8gd2Ug
d2FpdCBmb3IgYSBkdW1teSBzY29wZSB0byBpbnN0YWxsLCBhY3RpdmF0ZSwgYW5kCisgICAgICAg
ICAgLy8gd2Ugd2FpdCBmb3IgYSBzYW1wbGUgc2NvcGUgdG8gaW5zdGFsbCwgYWN0aXZhdGUsIGFu
ZAogICAgICAgICAgIC8vIHVucmVnaXN0ZXIgYmVmb3JlIGRlY2xhcmluZyB0aGF0IHRoZSBwcm9t
aXNlcyBkaWQgbm90CiAgICAgICAgICAgLy8gcmVzb2x2ZS4KICAgICAgICAgICByLnVucmVnaXN0
ZXIoKS50aGVuKCgpID0+IHJlc29sdmVkQ291bnQgKz0gMSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICgpID0+IHt9KTsKICAgICAgICAgICByLnVwZGF0ZSgpLnRoZW4oKCkgPT4gcmVz
b2x2ZWRDb3VudCArPSAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB7fSk7Ci0g
ICAgICAgICAgcmV0dXJuIHdhaXRfZm9yX2FjdGl2YXRpb25fb25fZHVtbXlfc2NvcGUodCwgd2lu
ZG93KTsKKyAgICAgICAgICByZXR1cm4gd2FpdF9mb3JfYWN0aXZhdGlvbl9vbl9zYW1wbGVfc2Nv
cGUodCwgd2luZG93KTsKICAgICAgICAgfSkKICAgICAgIC50aGVuKCgpID0+IHsKICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKHJlc29sdmVkQ291bnQsIDAsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1jc3AuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNz
cC5odHRwcy5odG1sCmluZGV4IDRmMTc2MjIwZDYxMDBjNGVmYjFiZmRhODE3Yjg0Y2Y1ZjUzYTRm
M2QuLjI1MjJmNDgyOGJkMDI5MDdlNzQwMTIwNjJkYTY4ZDY4ZjU3YWFlODMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNzcC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2ZldGNoLWNzcC5odHRwcy5odG1sCkBAIC01OSw3ICs1OSw3IEBAIHByb21pc2VfdGVz
dChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgcmV0dXJuIGFzc2VydF9yZXNvbHZlcygKICAgICAg
ICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5sb2FkX2ltYWdlKAogICAgICAgICAgICAgICAg
ICAgLy8gVGhlIHJlcXVlc3QgZm9yIElNQUdFX1VSTCB3aWxsIGJlIGZldGNoZWQgaW4gU1cuCi0g
ICAgICAgICAgICAgICAgICAnLi9kdW1teT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChJTUFH
RV9VUkwpKSwKKyAgICAgICAgICAgICAgICAgICcuL3NhbXBsZT91cmw9JyArIGVuY29kZVVSSUNv
bXBvbmVudChJTUFHRV9VUkwpKSwKICAgICAgICAgICAgICAgJ0FsbG93ZWQgc2NvcGUgaW1hZ2Ug
cmVzb3VyY2Ugd2hpY2ggd2FzIGZldGNoZWQgdmlhIFNXIHNob3VsZCAnICsKICAgICAgICAgICAg
ICAgJ2JlIGxvYWRlZC4nKTsKICAgICAgICAgfSkKQEAgLTY3LDcgKzY3LDcgQEAgcHJvbWlzZV90
ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICByZXR1cm4gYXNzZXJ0X3JlamVjdHMoCiAgICAg
ICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9hZF9pbWFnZSgKICAgICAgICAgICAgICAg
ICAgIC8vIFRoZSByZXF1ZXN0IGZvciBSRU1PVEVfSU1BR0VfVVJMIHdpbGwgYmUgZmV0Y2hlZCBp
biBTVy4KLSAgICAgICAgICAgICAgICAgICcuL2R1bW15P21vZGU9bm8tY29ycyZ1cmw9JyArCisg
ICAgICAgICAgICAgICAgICAnLi9zYW1wbGU/bW9kZT1uby1jb3JzJnVybD0nICsKICAgICAgICAg
ICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChSRU1PVEVfSU1BR0VfVVJMKSksCiAgICAgICAg
ICAgICAgICdEaXNhbGxvd2VkIHNjb3BlIGltYWdlIHJlc291cmNlIHdoaWNoIHdhcyBmZXRjaGVk
IHZpYSBTVyAnICsKICAgICAgICAgICAgICAgJ3Nob3VsZCBub3QgYmUgbG9hZGVkLicpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaGFuZGxlZC5odHRwcy5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaGFuZGxlZC5odHRwcy5odG1sCmluZGV4
IDg5ZjNkNzlhNjgxYTIyY2ZkNjg4OWIzYzA2MDNmNzM4OGQ0NjA0NzIuLjhkMzliNjViYjYyOGI4
ZGNkYTA3YzgwNDE2MjU4M2M4MDk4NmE2YzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWV2ZW50LWhhbmRsZWQuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1ldmVudC1oYW5kbGVkLmh0dHBzLmh0bWwKQEAgLTQwLDcgKzQwLDcgQEAgcHJvbWlzZV90
ZXN0KGFzeW5jICh0KSA9PiB7CiAgICAgJyBuYXZpZ2F0aW9uIHJlcXVlc3QnKTsKIAogcHJvbWlz
ZV90ZXN0KGFzeW5jICh0KSA9PiB7Ci0gIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goJ2R1bW15
LnR4dD9yZXNwb25kV2l0aC1ub3QtY2FsbGVkJyk7CisgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0
Y2goJ3NhbXBsZS50eHQ/cmVzcG9uZFdpdGgtbm90LWNhbGxlZCcpOwogICBjb25zdCBtZXNzYWdl
ID0gYXdhaXQgd2FpdF9mb3JfbWVzc2FnZV9mcm9tX3dvcmtlcigpOwogICBhc3NlcnRfZXF1YWxz
KG1lc3NhZ2UsICdSRVNPTFZFRCcpOwogfSwgJ0ZldGNoRXZlbnQuaGFuZGxlZCBzaG91bGQgcmVz
b2x2ZSB3aGVuIHJlc3BvbmRXaXRoKCkgaXMgbm90IGNhbGxlZCBmb3IgYScgKwpAQCAtNDgsNyAr
NDgsNyBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKIAogcHJvbWlzZV90ZXN0KGFzeW5j
ICh0KSA9PiB7CiAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goCi0gICAgICAnZHVtbXkudHh0
P3Jlc3BvbmRXaXRoLW5vdC1jYWxsZWQtYW5kLWV2ZW50LWNhbmNlbGVkJykuY2F0Y2goKGUpID0+
IHt9KTsKKyAgICAgICdzYW1wbGUudHh0P3Jlc3BvbmRXaXRoLW5vdC1jYWxsZWQtYW5kLWV2ZW50
LWNhbmNlbGVkJykuY2F0Y2goKGUpID0+IHt9KTsKICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHdh
aXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAgYXNzZXJ0X2VxdWFscyhtZXNzYWdlLCAn
UkVKRUNURUQnKTsKIH0sICdGZXRjaEV2ZW50LmhhbmRsZWQgc2hvdWxkIHJlamVjdCB3aGVuIHJl
c3BvbmRXaXRoKCkgaXMgbm90IGNhbGxlZCBhbmQgdGhlJyArCkBAIC01Niw3ICs1Niw3IEBAIHBy
b21pc2VfdGVzdChhc3luYyAodCkgPT4gewogCiBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsK
ICAgZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCgKLSAgICAgICdkdW1teS50eHQ/cmVzcG9uZFdp
dGgtY2FsbGVkLWFuZC1wcm9taXNlLXJlc29sdmVkJyk7CisgICAgICAnc2FtcGxlLnR4dD9yZXNw
b25kV2l0aC1jYWxsZWQtYW5kLXByb21pc2UtcmVzb2x2ZWQnKTsKICAgY29uc3QgbWVzc2FnZSA9
IGF3YWl0IHdhaXRfZm9yX21lc3NhZ2VfZnJvbV93b3JrZXIoKTsKICAgYXNzZXJ0X2VxdWFscyht
ZXNzYWdlLCAnUkVTT0xWRUQnKTsKIH0sICdGZXRjaEV2ZW50LmhhbmRsZWQgc2hvdWxkIHJlc29s
dmUgd2hlbiB0aGUgcHJvbWlzZSBwcm92aWRlZCcgKwpAQCAtNjQsNyArNjQsNyBAQCBwcm9taXNl
X3Rlc3QoYXN5bmMgKHQpID0+IHsKIAogcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIGZy
YW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goCi0gICAgICAnZHVtbXkudHh0P3Jlc3BvbmRXaXRoLWNh
bGxlZC1hbmQtcHJvbWlzZS1yZXNvbHZlZC10by1pbnZhbGlkLXJlc3BvbnNlJykKKyAgICAgICdz
YW1wbGUudHh0P3Jlc3BvbmRXaXRoLWNhbGxlZC1hbmQtcHJvbWlzZS1yZXNvbHZlZC10by1pbnZh
bGlkLXJlc3BvbnNlJykKICAgICAgIC5jYXRjaCgoZSkgPT4ge30pOwogICBjb25zdCBtZXNzYWdl
ID0gYXdhaXQgd2FpdF9mb3JfbWVzc2FnZV9mcm9tX3dvcmtlcigpOwogICBhc3NlcnRfZXF1YWxz
KG1lc3NhZ2UsICdSRUpFQ1RFRCcpOwpAQCAtNzMsNyArNzMsNyBAQCBwcm9taXNlX3Rlc3QoYXN5
bmMgKHQpID0+IHsKIAogcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIGZyYW1lLmNvbnRl
bnRXaW5kb3cuZmV0Y2goCi0gICAgICAnZHVtbXkudHh0P3Jlc3BvbmRXaXRoLWNhbGxlZC1hbmQt
cHJvbWlzZS1yZWplY3RlZCcpLmNhdGNoKChlKSA9PiB7fSk7CisgICAgICAnc2FtcGxlLnR4dD9y
ZXNwb25kV2l0aC1jYWxsZWQtYW5kLXByb21pc2UtcmVqZWN0ZWQnKS5jYXRjaCgoZSkgPT4ge30p
OwogICBjb25zdCBtZXNzYWdlID0gYXdhaXQgd2FpdF9mb3JfbWVzc2FnZV9mcm9tX3dvcmtlcigp
OwogICBhc3NlcnRfZXF1YWxzKG1lc3NhZ2UsICdSRUpFQ1RFRCcpOwogfSwgJ0ZldGNoRXZlbnQu
aGFuZGxlZCBzaG91bGQgcmVqZWN0IHdoZW4gdGhlIHByb21pc2UgcHJvdmlkZWQgdG8nICsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLWhpc3RvcnktYmFja3dh
cmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LWV2ZW50LWlzLWhpc3RvcnktYmFja3dhcmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2NmNTkyMmYzOTZhZmU0ZmE0YTQ3ODc5MTdm
ZTBhYjNmYWEzNmYwZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWJhY2t3YXJkLW5h
dmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4ICswLDAgQEAK
LTwhRE9DVFlQRSBodG1sPgotPGJvZHk+Ci08cD5DbGljayA8YSBocmVmPSJyZXNvdXJjZXMvaW5z
dGFsbC13b3JrZXIuaHRtbD9pc0hpc3RvcnlOYXZpZ2F0aW9uJmFtcDtzY3JpcHQ9ZmV0Y2gtZXZl
bnQtdGVzdC13b3JrZXIuanMiPnRoaXMgbGluazwvYT4uCi0gICBPbmNlIHlvdSBzZWUgJnF1b3Q7
bWV0aG9kID0gR0VULC4uLiZxdW90OyBpbiB0aGUgcGFnZSwgZ28gdG8gYW5vdGhlciBwYWdlLCBh
bmQgdGhlbiBnbyBiYWNrIHRvIHRoZSBwYWdlIHVzaW5nIHRoZSBCYWNrd2FyZCBidXR0b24uCi0g
ICBZb3Ugc2hvdWxkIHNlZSAmcXVvdDttZXRob2QgPSBHRVQsIGlzSGlzdG9yeU5hdmlnYXRpb24g
PSB0cnVlJnF1b3Q7LgotPC9wPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtaGlzdG9yeS1mb3J3YXJkLW5hdmlnYXRpb24tbWFu
dWFsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5
LWZvcndhcmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNDAxOTM5YjNjYjJkOTE5YTE1ZmZkMTZkMzhjYzNlMGM4NjZiNDNlOS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC1pcy1oaXN0b3J5LWZvcndhcmQtbmF2aWdhdGlvbi1tYW51YWwuaHR0
cHMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
Ym9keT4KLTxwPkNsaWNrIDxhIGhyZWY9InJlc291cmNlcy9pbnN0YWxsLXdvcmtlci5odG1sP2lz
SGlzdG9yeU5hdmlnYXRpb24mYW1wO3NjcmlwdD1mZXRjaC1ldmVudC10ZXN0LXdvcmtlci5qcyI+
dGhpcyBsaW5rPC9hPi4KLSAgIE9uY2UgeW91IHNlZSAmcXVvdDttZXRob2QgPSBHRVQsLi4uJnF1
b3Q7IGluIHRoZSBwYWdlLCBnbyBiYWNrIHRvIHRoaXMgcGFnZSB1c2luZyB0aGUgQmFja3dhcmQg
YnV0dG9uLCBhbmQgdGhlbiBnbyB0byB0aGUgc2Vjb25kIHBhZ2UgdXNpbmcgdGhlIEZvcndhcmQg
YnV0dG9uLgotICAgWW91IHNob3VsZCBzZWUgJnF1b3Q7bWV0aG9kID0gR0VULCBpc0hpc3RvcnlO
YXZpZ2F0aW9uID0gdHJ1ZSZxdW90Oy4KLTwvcD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLXJlbG9hZC1pZnJhbWUtbmF2aWdh
dGlvbi1tYW51YWwuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gt
ZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY1NmRmYjcyYTIxOTUwMGIwMjVjZjZm
NWJhYzU5YThkZTQwNDk1NjAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1u
YXZpZ2F0aW9uLW1hbnVhbC5odHRwcy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0
ICswLDAgQEAKLQotCi1GQUlMIEZldGNoRXZlbnQjcmVxdWVzdC5pc1JlbG9hZE5hdmlnYXRpb24g
aXMgdHJ1ZSBmb3IgbWFudWFsIHJlbG9hZC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIm1ldGhv
ZCA9IEdFVCwgaXNSZWxvYWROYXZpZ2F0aW9uID0gZmFsc2UiIGJ1dCBnb3QgIm1ldGhvZCA9IEdF
VCwgaXNSZWxvYWROYXZpZ2F0aW9uID0gdW5kZWZpbmVkIgotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1yZWxvYWQtaWZyYW1lLW5hdmlnYXRpb24tbWFudWFs
Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1pcy1yZWxvYWQtaWZy
YW1lLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGNmMWZlY2NmNmU0NDEyZTEyZjIyYTdjZTFlYmU1NWE1NGJhNzQ4ZjEuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
L2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVz
b3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgotPGJvZHk+Ci08c2NyaXB0Pgot
Y29uc3Qgd29ya2VyID0gJ3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0LXdvcmtlci5qcyc7Ci0K
LXByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewotICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMv
c2ltcGxlLmh0bWw/aXNSZWxvYWROYXZpZ2F0aW9uJzsKLQotICBjb25zdCByZWcgPSBhd2FpdCBz
ZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXIsIHNjb3BlKTsK
LSAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsK
LSAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShzY29wZSk7Ci0gIGFzc2VydF9lcXVh
bHMoZnJhbWUuY29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRlbnQsCi0gICAgICAgICAgICAg
ICAgJ21ldGhvZCA9IEdFVCwgaXNSZWxvYWROYXZpZ2F0aW9uID0gZmFsc2UnKTsKLSAgYXdhaXQg
bmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKLSAgICBmcmFtZS5hZGRFdmVudExpc3RlbmVyKCds
b2FkJywgcmVzb2x2ZSk7Ci0gICAgZnJhbWUuY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJUZXh0
ID0KLSAgICAgICdSZWxvYWQgdGhpcyBmcmFtZSBtYW51YWxseSEnOwotICB9KTsKLSAgYXNzZXJ0
X2VxdWFscyhmcmFtZS5jb250ZW50RG9jdW1lbnQuYm9keS50ZXh0Q29udGVudCwKLSAgICAgICdt
ZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IHRydWUnKTsKLSAgZnJhbWUucmVtb3Zl
KCk7Ci0gIGF3YWl0IHJlZy51bnJlZ2lzdGVyKCk7Ci19LCAnRmV0Y2hFdmVudCNyZXF1ZXN0Lmlz
UmVsb2FkTmF2aWdhdGlvbiBpcyB0cnVlIGZvciBtYW51YWwgcmVsb2FkLicpOwotCi08L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LWV2ZW50LWlzLXJlbG9hZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEzNDlmMDdjMzZjMjI2ZTc3MzIzYWJk
YTA1ZWVmZWMyNWZjM2IyMWQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLW5hdmlnYXRp
b24tbWFudWFsLmh0dHBzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGJvZHk+Ci08cD5DbGljayA8YSBocmVmPSJyZXNvdXJjZXMvaW5zdGFsbC13
b3JrZXIuaHRtbD9pc1JlbG9hZE5hdmlnYXRpb24mc2NyaXB0PWZldGNoLWV2ZW50LXRlc3Qtd29y
a2VyLmpzIj50aGlzIGxpbms8L2E+LgotICAgT25jZSB5b3Ugc2VlICZxdW90O21ldGhvZCA9IEdF
VCwuLi4mcXVvdDsgaW4gdGhlIHBhZ2UsIHJlbG9hZCB0aGUgcGFnZS4KLSAgIFlvdSB3aWxsIHNl
ZSAmcXVvdDttZXRob2QgPSBHRVQsIGlzUmVsb2FkTmF2aWdhdGlvbiA9IHRydWUmcXVvdDsuCi08
L3A+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRj
aC1ldmVudC1yZWZlcnJlci1wb2xpY3kuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRl
eCAxODE4ZTBkMzEwNmFhNDljZmJkMzBkNWFjMDcxMmZlZDMwZTYzMmM0Li5mNmE0ZjFiYmVjNjQw
M2IzZmNiMTQyZTgyMjM2ZTZjYzY3MjQyN2MxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC1ldmVudC1yZWZlcnJlci1wb2xpY3kuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy1leHBlY3Rl
ZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogRkFJTCBTZXJ2aWNlIFdvcmtlciByZXNwb25kcyB0
byBmZXRjaCBldmVudCB3aXRoIHRoZSByZWZlcnJlciBwb2xpY3kgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBOb3QgYWxsb3dl
ZCB0byByZXF1ZXN0IHJlc291cmNlIgotUEFTUyBTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9u
ZCB0byBmZXRjaCB3aXRoIHRoZSBkZWZhdWx0IHJlZmVycmVyIHBvbGljeQotUEFTUyBTZXJ2aWNl
IFdvcmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRjaCB3aXRoIHRoZSByZWZlcnJlciBVUkwgd2hl
biBhIG1lbWJlciBvZiBSZXF1ZXN0SW5pdCBpcyBwcmVzZW50IC0gRGVmYXVsdCBSZWZlcnJlcgor
RkFJTCBTZXJ2aWNlIFdvcmtlciBzaG91bGQgcmVzcG9uZCB0byBmZXRjaCB3aXRoIHRoZSBkZWZh
dWx0IHJlZmVycmVyIHBvbGljeSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiUmVmZXJyZXJQb2xp
Y3k6IHN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4iIGJ1dCBnb3QgIlJlZmVycmVyUG9s
aWN5OiBuby1yZWZlcnJlci13aGVuLWRvd25ncmFkZSIKK0ZBSUwgU2VydmljZSBXb3JrZXIgc2hv
dWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgcmVmZXJyZXIgVVJMIHdoZW4gYSBtZW1iZXIg
b2YgUmVxdWVzdEluaXQgaXMgcHJlc2VudCAtIERlZmF1bHQgUmVmZXJyZXIgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIlJlZmVycmVyOiBodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJQb2xpY3lc
blJlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luIiBidXQgZ290
ICJSZWZlcnJlcjogaHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NpbXBsZS5odG1sP3JlZmVycmVyUG9saWN5XG5SZWZlcnJlclBv
bGljeTogbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWV2ZW50LXJlZmVycmVyLXBvbGljeS5odHRwcy5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLmh0bWwKaW5kZXgg
ODA0ZmQ5YjQyMDRjNDIyNGNiMTUyNjdlMjc5ZDc0ZTg3NzBlZjdjOS4uYWY0YjIwYTlhNGE3Yjc2
NjUwOTk0NGI1OWRiMzMyZmU3MGU4Y2Y3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtZXZlbnQtcmVmZXJyZXItcG9saWN5Lmh0dHBzLmh0bWwKQEAgLTIyLDcgKzIy
LDcgQEAgZnVuY3Rpb24gcnVuX3JlZmVycmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgcmVmZXJyZXIs
IGhyZWYsIG9yaWdpbikgewogICAgICAgICAgIGRvX3Rlc3QocmVmZXJyZXIsCiAgICAgICAgICAg
ICByZXNwb25zZV90ZXh0LAogICAgICAgICAgICAgJ1JlZmVycmVyOiAnICsgaHJlZiArICdcbicg
KwotICAgICAgICAgICAgJ1JlZmVycmVyUG9saWN5OiBuby1yZWZlcnJlci13aGVuLWRvd25ncmFk
ZScsCisgICAgICAgICAgICAnUmVmZXJyZXJQb2xpY3k6IHN0cmljdC1vcmlnaW4td2hlbi1jcm9z
cy1vcmlnaW4nLAogICAgICAgICAgICAgJ1NlcnZpY2UgV29ya2VyIHNob3VsZCByZXNwb25kIHRv
IGZldGNoIHdpdGggdGhlIHJlZmVycmVyIFVSTCB3aGVuIGEgbWVtYmVyIG9mIFJlcXVlc3RJbml0
IGlzIHByZXNlbnQnKTsKICAgICAgICAgICB2YXIgaHR0cF91cmwgPSBnZXRfaG9zdF9pbmZvKClb
J0hUVFBfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCiAgICAgICAgICAgICAgICAgICAgICAgICAg
Jy9yZXNvdXJjZXMvc2ltcGxlLmh0bWw/cmVmZXJyZXJGdWxsJzsKQEAgLTM0LDcgKzM0LDcgQEAg
ZnVuY3Rpb24gcnVuX3JlZmVycmVyX3BvbGljeV90ZXN0cyhmcmFtZSwgcmVmZXJyZXIsIGhyZWYs
IG9yaWdpbikgewogICAgICAgICAgIGRvX3Rlc3QocmVmZXJyZXIsCiAgICAgICAgICAgICByZXNw
b25zZV90ZXh0LAogICAgICAgICAgICAgJ1JlZmVycmVyOiBcbicgKwotICAgICAgICAgICAgJ1Jl
ZmVycmVyUG9saWN5OiBuby1yZWZlcnJlci13aGVuLWRvd25ncmFkZScsCisgICAgICAgICAgICAn
UmVmZXJyZXJQb2xpY3k6IHN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nLAogICAgICAg
ICAgICAgJ1NlcnZpY2UgV29ya2VyIHNob3VsZCByZXNwb25kIHRvIGZldGNoIHdpdGggbm8gcmVm
ZXJyZXIgd2hlbiBhIG1lbWJlciBvZiBSZXF1ZXN0SW5pdCBpcyBwcmVzZW50IHdpdGggYW4gSFRU
UCByZXF1ZXN0Jyk7CiAgICAgICAgICAgcmV0dXJuIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2go
J3Jlc291cmNlcy9zaW1wbGUuaHRtbD9yZWZlcnJlckZ1bGwnLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHtyZWZlcnJlclBvbGljeTogIiIsIHJlZmVycmVyOiBy
ZWZlcnJlcn0pOwpAQCAtNDQsNyArNDQsNyBAQCBmdW5jdGlvbiBydW5fcmVmZXJyZXJfcG9saWN5
X3Rlc3RzKGZyYW1lLCByZWZlcnJlciwgaHJlZiwgb3JpZ2luKSB7CiAgICAgICAgICAgZG9fdGVz
dChyZWZlcnJlciwKICAgICAgICAgICAgIHJlc3BvbnNlX3RleHQsCiAgICAgICAgICAgICAnUmVm
ZXJyZXI6ICcgKyBocmVmICsgJ1xuJyArCi0gICAgICAgICAgICAnUmVmZXJyZXJQb2xpY3k6IG5v
LXJlZmVycmVyLXdoZW4tZG93bmdyYWRlJywKKyAgICAgICAgICAgICdSZWZlcnJlclBvbGljeTog
c3RyaWN0LW9yaWdpbi13aGVuLWNyb3NzLW9yaWdpbicsCiAgICAgICAgICAgICAnU2VydmljZSBX
b3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCB0aGUgcmVmZXJyZXIgd2l0aCAiIicp
OwogICAgICAgICAgIHZhciBodHRwX3VybCA9IGdldF9ob3N0X2luZm8oKVsnSFRUUF9PUklHSU4n
XSArIGJhc2VfcGF0aCgpICsKICAgICAgICAgICAgICAgICAgICAgICAgICAnL3Jlc291cmNlcy9z
aW1wbGUuaHRtbD9yZWZlcnJlckZ1bGwnOwpAQCAtNTYsNyArNTYsNyBAQCBmdW5jdGlvbiBydW5f
cmVmZXJyZXJfcG9saWN5X3Rlc3RzKGZyYW1lLCByZWZlcnJlciwgaHJlZiwgb3JpZ2luKSB7CiAg
ICAgICAgICAgZG9fdGVzdChyZWZlcnJlciwKICAgICAgICAgICAgIHJlc3BvbnNlX3RleHQsCiAg
ICAgICAgICAgICAnUmVmZXJyZXI6IFxuJyArCi0gICAgICAgICAgICAnUmVmZXJyZXJQb2xpY3k6
IG5vLXJlZmVycmVyLXdoZW4tZG93bmdyYWRlJywKKyAgICAgICAgICAgICdSZWZlcnJlclBvbGlj
eTogc3RyaWN0LW9yaWdpbi13aGVuLWNyb3NzLW9yaWdpbicsCiAgICAgICAgICAgICAnU2Vydmlj
ZSBXb3JrZXIgc2hvdWxkIHJlc3BvbmQgdG8gZmV0Y2ggd2l0aCBubyByZWZlcnJlciB3aXRoICIi
Jyk7CiAgICAgICAgICAgcmV0dXJuIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goJ3Jlc291cmNl
cy9zaW1wbGUuaHRtbD9yZWZlcnJlckZ1bGwnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHtyZWZlcnJlclBvbGljeTogIm9yaWdpbiIsIHJlZmVycmVyOiByZWZl
cnJlcn0pOwpAQCAtMjUzLDcgKzI1Myw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAg
ICAgICAudGhlbihmdW5jdGlvbihmKSB7CiAgICAgICAgICAgZnJhbWUgPSBmOwogICAgICAgICAg
IHRlc3QoKCkgPT4gewotICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50RG9j
dW1lbnQuYm9keS50ZXh0Q29udGVudCwgJ1JlZmVycmVyUG9saWN5OiBuby1yZWZlcnJlci13aGVu
LWRvd25ncmFkZScpOworICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50RG9j
dW1lbnQuYm9keS50ZXh0Q29udGVudCwgJ1JlZmVycmVyUG9saWN5OiBzdHJpY3Qtb3JpZ2luLXdo
ZW4tY3Jvc3Mtb3JpZ2luJyk7CiAgICAgICAgICAgfSwgJ1NlcnZpY2UgV29ya2VyIHNob3VsZCBy
ZXNwb25kIHRvIGZldGNoIHdpdGggdGhlIGRlZmF1bHQgcmVmZXJyZXIgcG9saWN5Jyk7CiAgICAg
ICAgICAgLy8gRmlyc3QsIHJ1biB0aGUgcmVmZXJyZXIgcG9saWN5IHRlc3RzIHdpdGhvdXQgcGFz
c2luZyBhIHJlZmVycmVyIGluIFJlcXVlc3RJbml0LgogICAgICAgICAgIHJldHVybiBydW5fcmVm
ZXJyZXJfcG9saWN5X3Rlc3RzKGZyYW1lLCB1bmRlZmluZWQsIGZyYW1lLmNvbnRlbnREb2N1bWVu
dC5sb2NhdGlvbi5ocmVmLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZl
bnQtd2l0aGluLXN3Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC13
aXRoaW4tc3cuaHR0cHMuaHRtbAppbmRleCBmNWE2MGMzMDYwOTYxYTJiMTY3NGM4OTU5YzVkNGEw
YWY3YjU0NTJhLi4wYjUyYjE4MzA1ZmFhMWUzNmVhNjg3M2VkNTM0OTEzYWRiNmU1Yzc1IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC13aXRoaW4tc3cuaHR0cHMuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC13aXRoaW4tc3cuaHR0cHMuaHRt
bApAQCAtMjgsMTIgKzI4LDEyIEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKIAogICBjb25z
dCBpZnJhbWUgPSBhd2FpdCByZWdpc3RlclN3QW5kT3BlbkZyYW1lKHQpOwogICBjb25zdCBmZXRj
aFRleHQgPQotICAgICAgYXdhaXQgaWZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goJ2R1bW15LnR4
dCcpLnRoZW4ociA9PiByLnRleHQoKSk7CisgICAgICBhd2FpdCBpZnJhbWUuY29udGVudFdpbmRv
dy5mZXRjaCgnc2FtcGxlLnR4dCcpLnRoZW4ociA9PiByLnRleHQoKSk7CiAKICAgY29uc3QgY2Fj
aGUgPSBhd2FpdCBpZnJhbWUuY29udGVudFdpbmRvdy5jYWNoZXMub3BlbigndGVzdCcpOwotICBh
d2FpdCBjYWNoZS5hZGQoJ2R1bW15LnR4dCcpOworICBhd2FpdCBjYWNoZS5hZGQoJ3NhbXBsZS50
eHQnKTsKIAotICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNhY2hlLm1hdGNoKCdkdW1teS50eHQn
KTsKKyAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjYWNoZS5tYXRjaCgnc2FtcGxlLnR4dCcpOwog
ICBjb25zdCBjYWNoZVRleHQgPSBhd2FpdCAocmVzcG9uc2UgPyByZXNwb25zZS50ZXh0KCkgOiAn
Y2FjaGUgbWF0Y2ggZmFpbGVkJyk7CiAgIGFzc2VydF9lcXVhbHMoZmV0Y2hUZXh0LCAnaW50ZXJj
ZXB0ZWQnLCAnZmV0Y2ggaW50ZXJjZXB0ZWQnKTsKICAgYXNzZXJ0X2VxdWFscyhjYWNoZVRleHQs
ICdpbnRlcmNlcHRlZCcsICdjYWNoZS5hZGQgaW50ZXJjZXB0ZWQnKTsKQEAgLTQyLDggKzQyLDgg
QEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewog
ICBjb25zdCBpZnJhbWUgPSBhd2FpdCByZWdpc3RlclN3QW5kT3BlbkZyYW1lKHQpOwogICBjb25z
dCBbZmV0Y2hUZXh0LCBjYWNoZVRleHRdID0gYXdhaXQgUHJvbWlzZS5hbGwoWwotICAgIGlmcmFt
ZS5jb250ZW50V2luZG93LmZldGNoKCdkdW1teS50eHQtaW5uZXItZmV0Y2gnKS50aGVuKHIgPT4g
ci50ZXh0KCkpLAotICAgIGlmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdkdW1teS50eHQtaW5u
ZXItY2FjaGUnKS50aGVuKHIgPT4gci50ZXh0KCkpCisgICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cu
ZmV0Y2goJ3NhbXBsZS50eHQtaW5uZXItZmV0Y2gnKS50aGVuKHIgPT4gci50ZXh0KCkpLAorICAg
IGlmcmFtZS5jb250ZW50V2luZG93LmZldGNoKCdzYW1wbGUudHh0LWlubmVyLWNhY2hlJykudGhl
bihyID0+IHIudGV4dCgpKQogICBdKTsKICAgYXNzZXJ0X2VxdWFscyhmZXRjaFRleHQsICdIZWxs
byB3b3JsZFxuJywgJ2ZldGNoIHdpdGhpbiBTVyBub3QgaW50ZXJjZXB0ZWQnKTsKICAgYXNzZXJ0
X2VxdWFscyhjYWNoZVRleHQsICdIZWxsbyB3b3JsZFxuJywKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWV2ZW50Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLWV2ZW50Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA2ZmZhNWU1ZDEwMWFhYWEw
NDY0MWY1M2VkM2Q4NDdmOWE5MjFjMjIwLi41ZDJiOWE0MzJkYTAzNDVmOTAzMDc3ZjAwYjZlZjBh
NjBmZWUyZGI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRw
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0yMSw2ICsyMSwxNiBAQCBQQVNTIFNlcnZpY2UgV29ya2VyIHJlc3Bv
bmRzIHRvIGZldGNoIGV2ZW50IHdpdGggdGhlIGNvcnJlY3QgaW50ZWdyaXR5X21ldGFkYXRhCiBQ
QVNTIEZldGNoRXZlbnQjYm9keSBpcyBhIHN0cmluZwogRkFJTCBGZXRjaEV2ZW50I2JvZHkgaXMg
YSBSZWFkYWJsZVN0cmVhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogUmVhZGFibGVTdHJlYW0gdXBsb2FkaW5n
IGlzIG5vdCBzdXBwb3J0ZWQiCiBQQVNTIEZldGNoRXZlbnQjYm9keSBpcyBhIHN0cmluZyBhbmQg
aXMgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sKK0ZBSUwgRmV0Y2hFdmVudCNib2R5IGlzIGEg
UmVhZGFibGVTdHJlYW0gYW5kIGlzIHBhc3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBSZWFkYWJsZVN0cmVhbSB1cGxvYWRpbmcgaXMgbm90IHN1cHBvcnRlZCIKK0ZBSUwg
RmV0Y2hFdmVudCNib2R5IGlzIGEgbm9uZSBVaW50OEFycmF5IFJlYWRhYmxlU3RyZWFtIGFuZCBp
cyBwYXNzZWQgdG8gYSBzZXJ2aWNlIHdvcmtlciBwcm9taXNlX3JlamVjdHNfanM6IGZ1bmN0aW9u
ICJmdW5jdGlvbiAoKSB7IHRocm93IGUgfSIgdGhyZXcgb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogUmVhZGFibGVTdHJlYW0gdXBsb2FkaW5nIGlzIG5vdCBzdXBwb3J0ZWQiICgiTm90U3VwcG9y
dGVkRXJyb3IiKSBleHBlY3RlZCBpbnN0YW5jZSBvZiBmdW5jdGlvbiAiZnVuY3Rpb24gVHlwZUVy
cm9yKCkgeworICAgIFtuYXRpdmUgY29kZV0KK30iICgiVHlwZUVycm9yIikKK1BBU1MgRmV0Y2hF
dmVudCNib2R5IGlzIGEgc3RyaW5nLCB1c2VkIGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFj
aworRkFJTCBGZXRjaEV2ZW50I2JvZHkgaXMgYSBSZWFkYWJsZVN0cmVhbSwgdXNlZCBhbmQgcGFz
c2VkIHRvIG5ldHdvcmsgZmFsbGJhY2sgcHJvbWlzZV9yZWplY3RzX2pzOiBmdW5jdGlvbiAiZnVu
Y3Rpb24gKCkgeyB0aHJvdyBlIH0iIHRocmV3IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IFJl
YWRhYmxlU3RyZWFtIHVwbG9hZGluZyBpcyBub3Qgc3VwcG9ydGVkIiAoIk5vdFN1cHBvcnRlZEVy
cm9yIikgZXhwZWN0ZWQgaW5zdGFuY2Ugb2YgZnVuY3Rpb24gImZ1bmN0aW9uIFR5cGVFcnJvcigp
IHsKKyAgICBbbmF0aXZlIGNvZGVdCit9IiAoIlR5cGVFcnJvciIpCitQQVNTIEZldGNoRXZlbnQj
Ym9keSBpcyBhIHN0cmluZywgY2xvbmVkIGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFjawor
UEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBSZWFkYWJsZVN0cmVhbSwgY2xvbmVkIGFuZCBwYXNz
ZWQgdG8gbmV0d29yayBmYWxsYmFjawogUEFTUyBGZXRjaEV2ZW50I2JvZHkgaXMgYSBibG9iCiBQ
QVNTIEZldGNoRXZlbnQjYm9keSBpcyBhIGJsb2IgYW5kIGlzIHBhc3NlZCB0byBuZXR3b3JrIGZh
bGxiYWNrCiBQQVNTIFNlcnZpY2UgV29ya2VyIHJlc3BvbmRzIHRvIGZldGNoIGV2ZW50IHdpdGgg
dGhlIGNvcnJlY3Qga2VlcGFsaXZlIHZhbHVlCkBAIC0zNSw1ICs0NSw4IEBAIEZBSUwgRmV0Y2hF
dmVudCNyZXF1ZXN0LmlzSGlzdG9yeU5hdmlnYXRpb24gaXMgZmFsc2UgKHdpdGggbG9jYXRpb24u
cmVsb2FkKSBhc3NlCiBGQUlMIEZldGNoRXZlbnQjcmVxdWVzdC5pc0hpc3RvcnlOYXZpZ2F0aW9u
IGlzIHRydWUgKHdpdGggaGlzdG9yeS5nbygtMikpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJt
ZXRob2QgPSBHRVQsIGlzSGlzdG9yeU5hdmlnYXRpb24gPSBmYWxzZSIgYnV0IGdvdCAibWV0aG9k
ID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gdW5kZWZpbmVkIgogRkFJTCBGZXRjaEV2ZW50
I3JlcXVlc3QuaXNIaXN0b3J5TmF2aWdhdGlvbiBpcyB0cnVlICh3aXRoIGhpc3RvcnkuZ28oMikp
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJtZXRob2QgPSBHRVQsIGlzSGlzdG9yeU5hdmlnYXRp
b24gPSBmYWxzZSIgYnV0IGdvdCAibWV0aG9kID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0g
dW5kZWZpbmVkIgogRkFJTCBGZXRjaEV2ZW50I3JlcXVlc3QuaXNIaXN0b3J5TmF2aWdhdGlvbiBp
cyB0cnVlIChQT1NUICsgaGlzdG9yeS5nbygtMSkpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJt
ZXRob2QgPSBHRVQsIGlzSGlzdG9yeU5hdmlnYXRpb24gPSBmYWxzZSIgYnV0IGdvdCAibWV0aG9k
ID0gR0VULCBpc0hpc3RvcnlOYXZpZ2F0aW9uID0gdW5kZWZpbmVkIgorUEFTUyBYSFIgdXBsb2Fk
IHByb2dyZXNzIGV2ZW50cyBmb3IgcmVzcG9uc2UgY29taW5nIGZyb20gU1cKK1BBU1MgWEhSIHVw
bG9hZCBwcm9ncmVzcyBldmVudHMgZm9yIG5ldHdvcmsgZmFsbGJhY2sKK1BBU1MgRmV0Y2ggd2l0
aCBQT1NUIHdpdGggdGV4dCBvbiBzdyA0MjEgcmVzcG9uc2Ugc2hvdWxkIG5vdCBiZSByZXRyaWVk
LgogUEFTUyByZXN0b3JlIGdsb2JhbCBzdGF0ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1ldmVudC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZl
bnQuaHR0cHMuaHRtbAppbmRleCA0OGY3MWU0NmNiMjIxMzY5NThmNjNhZWRkM2ZmMTY3NThhNWRl
NTgxLi43NzFmMWUzMTljYTQ3ZTZjZmU2MGRiODNmYzdkNDJjMmM1NWNiNjQ5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC5odHRwcy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWV2ZW50Lmh0dHBzLmh0bWwKQEAgLTE3LDYgKzE3LDggQEAgcHJvbWlz
ZV90ZXN0KGFzeW5jIHQgPT4gewogICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9CiAgICAgICAgIGF3
YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlciwgc2Nv
cGUpOwogICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5n
LCAnYWN0aXZhdGVkJyk7CisKKyAgICAvLyBUaGlzIHdpbGwgaGFwcGVuIGFmdGVyIGFsbCBvdGhl
ciB0ZXN0cwogICAgIHByb21pc2VfdGVzdCh0ID0+IHsKICAgICAgICAgcmV0dXJuIHJlZ2lzdHJh
dGlvbi51bnJlZ2lzdGVyKCk7CiAgICAgICB9LCAncmVzdG9yZSBnbG9iYWwgc3RhdGUnKTsKQEAg
LTQ4MCw2ICs0ODIsMTY0IEBAIHByb21pc2VfdGVzdCh0ID0+IHsKICAgICAgICAgfSk7CiAgIH0s
ICdGZXRjaEV2ZW50I2JvZHkgaXMgYSBzdHJpbmcgYW5kIGlzIHBhc3NlZCB0byBuZXR3b3JrIGZh
bGxiYWNrJyk7CiAKKy8vIFRlc3QgdGhhdCB0aGUgcmVxdWVzdCBib2R5IGlzIHNlbnQgdG8gbmV0
d29yayB1cG9uIG5ldHdvcmsgZmFsbGJhY2ssCisvLyBmb3IgYSBSZWFkYWJsZVN0cmVhbSBib2R5
LgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHJzID0gbmV3IFJlYWRhYmxl
U3RyZWFtKHtzdGFydChjKSB7CisgICAgICBjLmVucXVldWUoJ2kgYScpOworICAgICAgYy5lbnF1
ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7CisgICAgICB0LnN0ZXBfdGltZW91dCh0LnN0ZXBfZnVuYygo
KSA9PiB7CisgICAgICAgIGMuZW5xdWV1ZSgnIGJvZHknKTsKKyAgICAgICAgYy5jbG9zZSgpOwor
ICAgICAgfSwgMTApKTsKKyAgICB9fSk7CisgICAgLy8gU2V0IHBhZ2VfdXJsIHRvICI/aWdub3Jl
IiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBuZXR3b3JrCisgICAgLy8gZm9y
IHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBhZGQgYSBzdWZmaXggdG8gYXZvaWQgY29s
bGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4KKyAgICBjb25zdCBwYWdlX3VybCA9ICdy
ZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5LWZhbGxiYWNrLXN0cmluZyc7CisgICAg
Y29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRfY2xl
YW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICAvLyBBZGQgIj9pZ25vcmUiIHNv
IHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIGVjaG8tY29udGVudC5weS4KKyAgICBj
b25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHk/aWdu
b3JlJzsKKyAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0
Y2goZWNob191cmwsIHsKKyAgICAgICAgbWV0aG9kOiAnUE9TVCcsCisgICAgICAgIGJvZHk6IHJz
LnBpcGVUaHJvdWdoKG5ldyBUZXh0RW5jb2RlclN0cmVhbSgpKQorICAgIH0pOworICAgIGNvbnN0
IHRleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7CisgICAgYXNzZXJ0X2VxdWFscyh0ZXh0LAor
ICAgICAgICAnaSBhbSB0aGUgcmVxdWVzdCBib2R5JywKKyAgICAgICAgJ3RoZSBuZXR3b3JrIGZh
bGxiYWNrIHJlcXVlc3Qgc2hvdWxkIGluY2x1ZGUgdGhlIHJlcXVlc3QgYm9keScpOworICB9LCAn
RmV0Y2hFdmVudCNib2R5IGlzIGEgUmVhZGFibGVTdHJlYW0gYW5kIGlzIHBhc3NlZCB0byBuZXR3
b3JrIGZhbGxiYWNrJyk7CisKKyAgLy8gVGVzdCB0aGF0IHRoZSByZXF1ZXN0IGJvZHkgaXMgc2Vu
dCB0byBuZXR3b3JrIHVwb24gbmV0d29yayBmYWxsYmFjaywKKy8vIGZvciBhIFJlYWRhYmxlU3Ry
ZWFtIGJvZHkuCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgY29uc3QgcnMgPSBuZXcg
UmVhZGFibGVTdHJlYW0oe3N0YXJ0KGMpIHsKKyAgICAgIGMuZW5xdWV1ZSgnaSBhJyk7CisgICAg
ICBjLmVucXVldWUoJ20gdGhlIHJlcXVlc3QnKTsKKyAgICAgIHQuc3RlcF90aW1lb3V0KHQuc3Rl
cF9mdW5jKCgpID0+IHsKKyAgICAgICAgYy5lbnF1ZXVlKCcgYm9keScpOworICAgICAgICBjLmNs
b3NlKCk7CisgICAgICB9LCAxMCkpOworICAgIH19KTsKKyAgICAvLyBTZXQgcGFnZV91cmwgdG8g
Ij9pZ25vcmUiIHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvIG5ldHdvcmsKKyAg
ICAvLyBmb3IgdGhlIG1haW4gcmVzb3VyY2UgcmVxdWVzdCwgYW5kIGFkZCBhIHN1ZmZpeCB0byBh
dm9pZCBjb2xsaWRpbmcKKyAgICAvLyB3aXRoIG90aGVyIHRlc3RzLgorICAgIGNvbnN0IHBhZ2Vf
dXJsID0gJ3Jlc291cmNlcy8/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktZmFsbGJhY2stc3RyaW5n
JzsKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHBhZ2VfdXJsKTsKKyAgICB0
LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0pOworICAgIC8vIEFkZCAiP2ln
bm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gZWNoby1jb250ZW50LnB5
LgorICAgIGNvbnN0IGVjaG9fdXJsID0gJy9mZXRjaC9hcGkvcmVzb3VyY2VzL2VjaG8tY29udGVu
dC5weT9pZ25vcmUnOworICAgIGNvbnN0IHcgPSBmcmFtZS5jb250ZW50V2luZG93OworICAgIGF3
YWl0IHByb21pc2VfcmVqZWN0c19qcyh0LCB3LlR5cGVFcnJvciwgIHcuZmV0Y2goZWNob191cmws
IHsKKyAgICAgICAgbWV0aG9kOiAnUE9TVCcsCisgICAgICAgIGJvZHk6IHJzCisgICAgfSkpOwor
ICB9LCAnRmV0Y2hFdmVudCNib2R5IGlzIGEgbm9uZSBVaW50OEFycmF5IFJlYWRhYmxlU3RyZWFt
IGFuZCBpcyBwYXNzZWQgdG8gYSBzZXJ2aWNlIHdvcmtlcicpOworCisvLyBUZXN0IHRoYXQgdGhl
IHJlcXVlc3QgYm9keSBpcyBzZW50IHRvIG5ldHdvcmsgdXBvbiBuZXR3b3JrIGZhbGxiYWNrIGV2
ZW4gd2hlbgorLy8gdGhlIHJlcXVlc3QgYm9keSBpcyB1c2VkIGluIHRoZSBzZXJ2aWNlIHdvcmtl
ciwgZm9yIGEgc3RyaW5nIGJvZHkuCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgLy8g
U2V0IHBhZ2VfdXJsIHRvICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFj
ayB0byBuZXR3b3JrCisgICAgLy8gZm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBh
ZGQgYSBzdWZmaXggdG8gYXZvaWQgY29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4K
KyAgICBjb25zdCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5
LWZhbGxiYWNrLXN0cmluZyc7CisKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1l
KHBhZ2VfdXJsKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0p
OworICAgIC8vIEFkZCAiP3VzZS1hbmQtaWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFs
bHMgYmFjayB0byBlY2hvLWNvbnRlbnQucHkuCisgICAgY29uc3QgZWNob191cmwgPSAnL2ZldGNo
L2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P3VzZS1hbmQtaWdub3JlJzsKKyAgICBjb25z
dCByZXNwb25zZSA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goZWNob191cmwsIHsK
KyAgICAgICAgbWV0aG9kOiAnUE9TVCcsCisgICAgICAgIGJvZHk6ICdpIGFtIHRoZSByZXF1ZXN0
IGJvZHknCisgICAgfSk7CisgICAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTsK
KyAgICBhc3NlcnRfZXF1YWxzKAorICAgICAgICB0ZXh0LAorICAgICAgICAnaSBhbSB0aGUgcmVx
dWVzdCBib2R5JywKKyAgICAgICAgJ3RoZSBuZXR3b3JrIGZhbGxiYWNrIHJlcXVlc3Qgc2hvdWxk
IGluY2x1ZGUgdGhlIHJlcXVlc3QgYm9keScpOworICB9LCAnRmV0Y2hFdmVudCNib2R5IGlzIGEg
c3RyaW5nLCB1c2VkIGFuZCBwYXNzZWQgdG8gbmV0d29yayBmYWxsYmFjaycpOworCisvLyBXaGVu
IHRoZSBzdHJlYW1pbmcgYm9keSBpcyB1c2VkIGluIHRoZSBzZXJ2aWNlIHdvcmtlciwgbmV0d29y
ayBmYWxsYmFjaworLy8gZmFpbHMuCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgY29u
c3QgcnMgPSBuZXcgUmVhZGFibGVTdHJlYW0oe3N0YXJ0KGMpIHsKKyAgICAgIGMuZW5xdWV1ZSgn
aSBhJyk7CisgICAgICBjLmVucXVldWUoJ20gdGhlIHJlcXVlc3QnKTsKKyAgICAgIHQuc3RlcF90
aW1lb3V0KHQuc3RlcF9mdW5jKCgpID0+IHsKKyAgICAgICAgYy5lbnF1ZXVlKCcgYm9keScpOwor
ICAgICAgICBjLmNsb3NlKCk7CisgICAgICB9LCAxMCkpOworICAgIH19KTsKKyAgICAvLyBTZXQg
cGFnZV91cmwgdG8gIj9pZ25vcmUiIHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRv
IG5ldHdvcmsKKyAgICAvLyBmb3IgdGhlIG1haW4gcmVzb3VyY2UgcmVxdWVzdCwgYW5kIGFkZCBh
IHN1ZmZpeCB0byBhdm9pZCBjb2xsaWRpbmcKKyAgICAvLyB3aXRoIG90aGVyIHRlc3RzLgorICAg
IGNvbnN0IHBhZ2VfdXJsID0gJ3Jlc291cmNlcy8/aWdub3JlLWZvci1yZXF1ZXN0LWJvZHktZmFs
bGJhY2stc3RyaW5nJzsKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHBhZ2Vf
dXJsKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0pOworICAg
IGNvbnN0IGVjaG9fdXJsID0gJy9mZXRjaC9hcGkvcmVzb3VyY2VzL2VjaG8tY29udGVudC5weT91
c2UtYW5kLWlnbm9yZSc7CisgICAgY29uc3QgdyA9IGZyYW1lLmNvbnRlbnRXaW5kb3c7CisgICAg
YXdhaXQgcHJvbWlzZV9yZWplY3RzX2pzKHQsIHcuVHlwZUVycm9yLCB3LmZldGNoKGVjaG9fdXJs
LCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiBycy5waXBlVGhyb3Vn
aChuZXcgVGV4dEVuY29kZXJTdHJlYW0oKSkKKyAgICB9KSk7CisgIH0sICdGZXRjaEV2ZW50I2Jv
ZHkgaXMgYSBSZWFkYWJsZVN0cmVhbSwgdXNlZCBhbmQgcGFzc2VkIHRvIG5ldHdvcmsgZmFsbGJh
Y2snKTsKKworLy8gVGVzdCB0aGF0IHRoZSByZXF1ZXN0IGJvZHkgaXMgc2VudCB0byBuZXR3b3Jr
IHVwb24gbmV0d29yayBmYWxsYmFjayBldmVuIHdoZW4KKy8vIHRoZSByZXF1ZXN0IGJvZHkgaXMg
dXNlZCBieSBjbG9uZSgpIGluIHRoZSBzZXJ2aWNlIHdvcmtlciwgZm9yIGEgc3RyaW5nIGJvZHku
Citwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAgLy8gU2V0IHBhZ2VfdXJsIHRvICI/aWdu
b3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0byBuZXR3b3JrCisgICAgLy8g
Zm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBhZGQgYSBzdWZmaXggdG8gYXZvaWQg
Y29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4KKyAgICBjb25zdCBwYWdlX3VybCA9
ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5LWZhbGxiYWNrLXN0cmluZyc7CisK
KyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHBhZ2VfdXJsKTsKKyAgICB0LmFk
ZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0pOworICAgIC8vIEFkZCAiP2Nsb25l
LWFuZC1pZ25vcmUiIHNvIHRoZSBzZXJ2aWNlIHdvcmtlciBmYWxscyBiYWNrIHRvCisgICAgLy8g
ZWNoby1jb250ZW50LnB5LgorICAgIGNvbnN0IGVjaG9fdXJsID0gJy9mZXRjaC9hcGkvcmVzb3Vy
Y2VzL2VjaG8tY29udGVudC5weT9jbG9uZS1hbmQtaWdub3JlJzsKKyAgICBjb25zdCByZXNwb25z
ZSA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2goZWNob191cmwsIHsKKyAgICAgICAg
bWV0aG9kOiAnUE9TVCcsCisgICAgICAgIGJvZHk6ICdpIGFtIHRoZSByZXF1ZXN0IGJvZHknCisg
ICAgfSk7CisgICAgY29uc3QgdGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKAorICAgICAgICB0ZXh0LAorICAgICAgICAnaSBhbSB0aGUgcmVxdWVzdCBib2R5
JywKKyAgICAgICAgJ3RoZSBuZXR3b3JrIGZhbGxiYWNrIHJlcXVlc3Qgc2hvdWxkIGluY2x1ZGUg
dGhlIHJlcXVlc3QgYm9keScpOworICB9LCAnRmV0Y2hFdmVudCNib2R5IGlzIGEgc3RyaW5nLCBj
bG9uZWQgYW5kIHBhc3NlZCB0byBuZXR3b3JrIGZhbGxiYWNrJyk7CisKKy8vIFdoZW4gdGhlIHN0
cmVhbWluZyBib2R5IGlzIHVzZWQgYnkgY2xvbmUoKSBpbiB0aGUgc2VydmljZSB3b3JrZXIsIG5l
dHdvcmsKKy8vIGZhbGxiYWNrIGZhaWxzLgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAg
IGNvbnN0IHJzID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtzdGFydChjKSB7CisgICAgICBjLmVucXVl
dWUoJ2kgYScpOworICAgICAgYy5lbnF1ZXVlKCdtIHRoZSByZXF1ZXN0Jyk7CisgICAgICB0LnN0
ZXBfdGltZW91dCh0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgICAgIGMuZW5xdWV1ZSgnIGJvZHkn
KTsKKyAgICAgICAgYy5jbG9zZSgpOworICAgICAgfSwgMTApKTsKKyAgICB9fSk7CisgICAgLy8g
U2V0IHBhZ2VfdXJsIHRvICI/aWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFj
ayB0byBuZXR3b3JrCisgICAgLy8gZm9yIHRoZSBtYWluIHJlc291cmNlIHJlcXVlc3QsIGFuZCBh
ZGQgYSBzdWZmaXggdG8gYXZvaWQgY29sbGlkaW5nCisgICAgLy8gd2l0aCBvdGhlciB0ZXN0cy4K
KyAgICBjb25zdCBwYWdlX3VybCA9ICdyZXNvdXJjZXMvP2lnbm9yZS1mb3ItcmVxdWVzdC1ib2R5
LWZhbGxiYWNrLXN0cmluZyc7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShw
YWdlX3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsK
KyAgICAvLyBBZGQgIj9jbG9uZS1hbmQtaWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFs
bHMgYmFjayB0bworICAgIC8vIGVjaG8tY29udGVudC5weS4KKyAgICBjb25zdCBlY2hvX3VybCA9
ICcvZmV0Y2gvYXBpL3Jlc291cmNlcy9lY2hvLWNvbnRlbnQucHk/Y2xvbmUtYW5kLWlnbm9yZSc7
CisgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVj
aG9fdXJsLCB7CisgICAgICAgIG1ldGhvZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAnaSBhbSB0
aGUgcmVxdWVzdCBib2R5JworICAgIH0pOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNwb25z
ZS50ZXh0KCk7CisgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgdGV4dCwKKyAgICAgICAgJ2kg
YW0gdGhlIHJlcXVlc3QgYm9keScsCisgICAgICAgICd0aGUgbmV0d29yayBmYWxsYmFjayByZXF1
ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJvZHknKTsKKyAgfSwgJ0ZldGNoRXZlbnQj
Ym9keSBpcyBhIFJlYWRhYmxlU3RyZWFtLCBjbG9uZWQgYW5kIHBhc3NlZCB0byBuZXR3b3JrIGZh
bGxiYWNrJyk7CisKIC8vIFRlc3QgdGhhdCB0aGUgc2VydmljZSB3b3JrZXIgY2FuIHJlYWQgRmV0
Y2hFdmVudCNib2R5IHdoZW4gaXQgaXMgYSBibG9iLgogLy8gSXQgcmVzcG9uZHMgd2l0aCByZXF1
ZXN0IGJvZHkgaXQgcmVhZC4KIHByb21pc2VfdGVzdCh0ID0+IHsKQEAgLTg1MSw1ICsxMDExLDc0
IEBAIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4gewogICAgIGFzc2VydF9lcXVhbHMoZnJhbWUu
Y29udGVudERvY3VtZW50LmJvZHkudGV4dENvbnRlbnQsCiAgICAgICAgICAgICAgICAgICAnbWV0
aG9kID0gUE9TVCwgaXNIaXN0b3J5TmF2aWdhdGlvbiA9IHRydWUnKTsKICAgfSwgJ0ZldGNoRXZl
bnQjcmVxdWVzdC5pc0hpc3RvcnlOYXZpZ2F0aW9uIGlzIHRydWUgKFBPU1QgKyBoaXN0b3J5Lmdv
KC0xKSknKTsKKworLy8gV2hlbiBzZXJ2aWNlIHdvcmtlciByZXNwb25kcyB3aXRoIGEgUmVzcG9u
c2UsIG5vIFhIUiB1cGxvYWQgcHJvZ3Jlc3MKKy8vIGV2ZW50cyBhcmUgZGVsaXZlcmVkLgorcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHBhZ2VfdXJsID0gJ3Jlc291cmNlcy9z
aW1wbGUuaHRtbD9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1zdHJpbmcnOworICAgIGNvbnN0IGZy
YW1lID0gYXdhaXQgd2l0aF9pZnJhbWUocGFnZV91cmwpOworICAgIHQuYWRkX2NsZWFudXAoKCkg
PT4geyBmcmFtZS5yZW1vdmUoKTsgfSk7CisKKyAgICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29u
dGVudFdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICAgIHhoci5vcGVuKCdQT1NUJywgJ3NpbXBs
ZS5odG1sP3JlcXVlc3QtYm9keScpOworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcign
cHJvZ3Jlc3MnLCB0LnVucmVhY2hlZF9mdW5jKCdwcm9ncmVzcycpKTsKKyAgICB4aHIudXBsb2Fk
LmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgdC51bnJlYWNoZWRfZnVuYygnZXJyb3InKSk7Cisg
ICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIHQudW5yZWFjaGVkX2Z1bmMo
J2Fib3J0JykpOworICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcigndGltZW91dCcsIHQu
dW5yZWFjaGVkX2Z1bmMoJ3RpbWVvdXQnKSk7CisgICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3Rl
bmVyKCdsb2FkJywgdC51bnJlYWNoZWRfZnVuYygnbG9hZCcpKTsKKyAgICB4aHIudXBsb2FkLmFk
ZEV2ZW50TGlzdGVuZXIoJ2xvYWRlbmQnLCB0LnVucmVhY2hlZF9mdW5jKCdsb2FkZW5kJykpOwor
ICAgIHhoci5zZW5kKCdpIGFtIHRoZSByZXF1ZXN0IGJvZHknKTsKKworICAgIGF3YWl0IG5ldyBQ
cm9taXNlKChyZXNvbHZlKSA9PiB4aHIuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHJlc29sdmUp
KTsKKyAgfSwgJ1hIUiB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzIGZvciByZXNwb25zZSBjb21pbmcg
ZnJvbSBTVycpOworCisvLyBVcGxvYWQgcHJvZ3Jlc3MgZXZlbnRzIHNob3VsZCBiZSBkZWxpdmVy
ZWQgZm9yIHRoZSBuZXR3b3JrIGZhbGxiYWNrIGNhc2UuCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9
PiB7CisgICAgY29uc3QgcGFnZV91cmwgPSAncmVzb3VyY2VzL3NpbXBsZS5odG1sP2lnbm9yZS1m
b3ItcmVxdWVzdC1ib2R5LXN0cmluZyc7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lm
cmFtZShwYWdlX3VybCk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgp
OyB9KTsKKworICAgIGxldCBwcm9ncmVzcyA9IGZhbHNlOworICAgIGxldCBsb2FkID0gZmFsc2U7
CisgICAgbGV0IGxvYWRlbmQgPSBmYWxzZTsKKworICAgIGNvbnN0IHhociA9IG5ldyBmcmFtZS5j
b250ZW50V2luZG93LlhNTEh0dHBSZXF1ZXN0KCk7CisgICAgeGhyLm9wZW4oJ1BPU1QnLCAnL2Zl
dGNoL2FwaS9yZXNvdXJjZXMvZWNoby1jb250ZW50LnB5P2lnbm9yZScpOworICAgIHhoci51cGxv
YWQuYWRkRXZlbnRMaXN0ZW5lcigncHJvZ3Jlc3MnLCAoKSA9PiBwcm9ncmVzcyA9IHRydWUpOwor
ICAgIHhoci51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCB0LnVucmVhY2hlZF9mdW5j
KCdlcnJvcicpKTsKKyAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgdC51
bnJlYWNoZWRfZnVuYygnYWJvcnQnKSk7CisgICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVy
KCd0aW1lb3V0JywgdC51bnJlYWNoZWRfZnVuYygndGltZW91dCcpKTsKKyAgICB4aHIudXBsb2Fk
LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiBsb2FkID0gdHJ1ZSk7CisgICAgeGhyLnVw
bG9hZC5hZGRFdmVudExpc3RlbmVyKCdsb2FkZW5kJywgKCkgPT4gbG9hZGVuZCA9IHRydWUpOwor
ICAgIHhoci5zZW5kKCdpIGFtIHRoZSByZXF1ZXN0IGJvZHknKTsKKworICAgIGF3YWl0IG5ldyBQ
cm9taXNlKChyZXNvbHZlKSA9PiB4aHIuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHJlc29sdmUp
KTsKKyAgICBhc3NlcnRfdHJ1ZShwcm9ncmVzcywgJ3Byb2dyZXNzJyk7CisgICAgYXNzZXJ0X3Ry
dWUobG9hZCwgJ2xvYWQnKTsKKyAgICBhc3NlcnRfdHJ1ZShsb2FkZW5kLCAnbG9hZGVuZCcpOwor
ICB9LCAnWEhSIHVwbG9hZCBwcm9ncmVzcyBldmVudHMgZm9yIG5ldHdvcmsgZmFsbGJhY2snKTsK
KworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIC8vIFNldCBwYWdlX3VybCB0byAiP2ln
bm9yZSIgc28gdGhlIHNlcnZpY2Ugd29ya2VyIGZhbGxzIGJhY2sgdG8gbmV0d29yaworICAgIC8v
IGZvciB0aGUgbWFpbiByZXNvdXJjZSByZXF1ZXN0LCBhbmQgYWRkIGEgc3VmZml4IHRvIGF2b2lk
IGNvbGxpZGluZworICAgIC8vIHdpdGggb3RoZXIgdGVzdHMuCisgICAgY29uc3QgcGFnZV91cmwg
PSAncmVzb3VyY2VzLz9pZ25vcmUtZm9yLXJlcXVlc3QtYm9keS1mYWxsYmFjay1zdHJpbmcnOwor
CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZShwYWdlX3VybCk7CisgICAgdC5h
ZGRfY2xlYW51cCgoKSA9PiB7IGZyYW1lLnJlbW92ZSgpOyB9KTsKKyAgICAvLyBBZGQgIj9jbG9u
ZS1hbmQtaWdub3JlIiBzbyB0aGUgc2VydmljZSB3b3JrZXIgZmFsbHMgYmFjayB0bworICAgIC8v
IGVjaG8tY29udGVudC5weS4KKyAgICBjb25zdCBlY2hvX3VybCA9ICcvZmV0Y2gvYXBpL3Jlc291
cmNlcy9lY2hvLWNvbnRlbnQucHk/c3RhdHVzPTQyMSc7CisgICAgY29uc3QgcmVzcG9uc2UgPSBh
d2FpdCBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKGVjaG9fdXJsLCB7CisgICAgICAgIG1ldGhv
ZDogJ1BPU1QnLAorICAgICAgICBib2R5OiAndGV4dCBib2R5JworICAgIH0pOworICAgIGFzc2Vy
dF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCA0MjEpOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCBy
ZXNwb25zZS50ZXh0KCk7CisgICAgYXNzZXJ0X2VxdWFscygKKyAgICAgICAgdGV4dCwKKyAgICAg
ICAgJ3RleHQgYm9keS4gUmVxdWVzdCB3YXMgc2VudCAxIHRpbWVzLicsCisgICAgICAgICd0aGUg
bmV0d29yayBmYWxsYmFjayByZXF1ZXN0IHNob3VsZCBpbmNsdWRlIHRoZSByZXF1ZXN0IGJvZHkn
KTsKKyAgfSwgJ0ZldGNoIHdpdGggUE9TVCB3aXRoIHRleHQgb24gc3cgNDIxIHJlc3BvbnNlIHNo
b3VsZCBub3QgYmUgcmV0cmllZC4nKTsKIDwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwuaHR0cHMuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLmh0dHBzLmh0bWwK
aW5kZXggYTA4ZTBjNzQ4ODEzNjRmN2ZkMjlkM2U2YWMzMzJhN2UxZDk0YmY3YS4uNDY3YTY2Y2Vl
NDY0ZTY4NzIzOGMyNWRhMmZiMTdjYjAxNTAxZmIwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC5odHRwcy5odG1sCkBAIC03MCwx
MyArNzAsMTMgQEAgY29uc3QgY3NzRmlsZSA9ICdmZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC1z
dHlsZS5jc3MnOwogCiBiYXNlX3VybF90ZXN0KHsKICAgZnJhbWVQYXRoOiBTQ09QRSArICc/ZmV0
Y2gnLAotICBleHBlY3RJbWFnZVJlcXVlc3RQYXRoOiAncmVzb3VyY2VzL2R1bW15LnBuZycsCisg
IGV4cGVjdEltYWdlUmVxdWVzdFBhdGg6ICdyZXNvdXJjZXMvc2FtcGxlLnBuZycsCiAgIGV4cGVj
dEltYWdlUmVxdWVzdFJlZmVycmVyOiBgcmVzb3VyY2VzLyR7Y3NzRmlsZX0/ZmV0Y2hgLAogICBk
ZXNjcmlwdGlvbjogJ2Jhc2UgVVJMIHdoZW4gc2VydmljZSB3b3JrZXIgZG9lcyByZXNwb25kV2l0
aChmZXRjaChyZXNwb25zZVVybCkpLid9KTsKIAogYmFzZV91cmxfdGVzdCh7CiAgIGZyYW1lUGF0
aDogU0NPUEUgKyAnP25ld1Jlc3BvbnNlJywKLSAgZXhwZWN0SW1hZ2VSZXF1ZXN0UGF0aDogJ3Jl
c291cmNlcy9yZXF1ZXN0LXVybC1wYXRoL2R1bW15LnBuZycsCisgIGV4cGVjdEltYWdlUmVxdWVz
dFBhdGg6ICdyZXNvdXJjZXMvcmVxdWVzdC11cmwtcGF0aC9zYW1wbGUucG5nJywKICAgZXhwZWN0
SW1hZ2VSZXF1ZXN0UmVmZXJyZXI6IGByZXNvdXJjZXMvcmVxdWVzdC11cmwtcGF0aC8ke2Nzc0Zp
bGV9P25ld1Jlc3BvbnNlYCwKICAgZGVzY3JpcHRpb246ICdiYXNlIFVSTCB3aGVuIHNlcnZpY2Ug
d29ya2VyIGRvZXMgcmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKCkpLid9KTsKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1pbWFnZXMuaHR0cHMuaHRtbApp
bmRleCA5NThkZTFhZjg1ZjRlZTZiYTU4YjQ3ZGUzODk3MWY5ZmYyYWEyYmEwLi41ODZkZWEyNjEz
NWZjNTM1YmY4MTJkODZjOTg1NDU0MWRhYWJiYzM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1pbWFnZXMuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1yZXF1ZXN0LWNzcy1pbWFnZXMuaHR0cHMuaHRtbApAQCAtOSw5ICs5LDkg
QEAgdmFyIFNDT1BFID0gJ3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy1pZnJhbWUu
aHR0cHMuaHRtbCc7CiB2YXIgU0NSSVBUID0gJ3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291
cmNlcy13b3JrZXIuanMnOwogdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKIHZhciBM
T0NBTF9VUkwgPQotICBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKyAn
cmVzb3VyY2VzL2R1bW15P3Rlc3QnOworICBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFz
ZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0JzsKIHZhciBSRU1PVEVfVVJMID0KLSAg
aG9zdF9pbmZvWydIVFRQU19SRU1PVEVfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArICdyZXNvdXJj
ZXMvZHVtbXk/dGVzdCc7CisgIGhvc3RfaW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTiddICsgYmFz
ZV9wYXRoKCkgKyAncmVzb3VyY2VzL3NhbXBsZT90ZXN0JzsKIAogZnVuY3Rpb24gY3NzX2ltYWdl
X3Rlc3QoZXhwZWN0ZWRfcmVzdWx0cywgZnJhbWUsIHVybCwgdHlwZSwKICAgICAgICAgICAgICAg
ICAgICAgICAgIGV4cGVjdGVkX21vZGUsIGV4cGVjdGVkX2NyZWRlbnRpYWxzKSB7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlZGlyZWN0Lmh0dHBzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlZGlyZWN0Lmh0dHBzLmh0bWwKaW5k
ZXggNTdmYjhlYjRjOTVkNTRiMjBkNjc0NzI4MjcwZTE0MGRiMGY2YjQ3My4uNWNlMDE1YjQyMWZj
YWY3Mzc3NzkyNmI2Y2IxZjFhMmFhMGExZDMwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtcmVxdWVzdC1yZWRpcmVjdC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLXJlcXVlc3QtcmVkaXJlY3QuaHR0cHMuaHRtbApAQCAtNjMsNyArNjMsNyBAQCBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgIHZhciBJTUFHRV9VUkwgPSBiYXNlX3BhdGgo
KSArICdyZXNvdXJjZXMvc3F1YXJlLnBuZyc7CiAgICAgdmFyIEFVRElPX1VSTCA9IGdldEF1ZGlv
VVJJKCIvbWVkaWEvc291bmRfNSIpOwogICAgIHZhciBYSFJfVVJMID0gYmFzZV9wYXRoKCkgKyAn
cmVzb3VyY2VzL3NpbXBsZS50eHQnOwotICAgIHZhciBIVE1MX1VSTCA9IGJhc2VfcGF0aCgpICsg
J3Jlc291cmNlcy9kdW1teS5odG1sJzsKKyAgICB2YXIgSFRNTF9VUkwgPSBiYXNlX3BhdGgoKSAr
ICdyZXNvdXJjZXMvc2FtcGxlLmh0bWwnOwogCiAgICAgdmFyIFJFRElSRUNUX1RPX0lNQUdFX1VS
TCA9IFJFRElSRUNUX1VSTCArIGVuY29kZVVSSUNvbXBvbmVudChJTUFHRV9VUkwpOwogICAgIHZh
ciBSRURJUkVDVF9UT19BVURJT19VUkwgPSBSRURJUkVDVF9VUkwgKyBlbmNvZGVVUklDb21wb25l
bnQoQVVESU9fVVJMKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVl
c3QtcmVzb3VyY2VzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNo
LXJlcXVlc3QtcmVzb3VyY2VzLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA3MjQ0OWZhM2RkNmY1
ZDNiYTU4MWYyYWNlNjg1OWVjZThhODUyZWVlLi4yMWEyOTAxMGM0NTRmYTkyNzA3YTNkNzBjOTRi
YmEyNmQ1YjhkNjRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0
LXJlc291cmNlcy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtcmVxdWVzdC1yZXNvdXJjZXMuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDY1ICsxLDY1IEBA
CiAKIFBBU1MgVmVyaWZ5IEZldGNoRXZlbnQgZm9yIHJlc291cmNlcy4KLVBBU1MgSW1hZ2UgbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MSBjcm9zc19vcmlnaW46KQotUEFTUyBJbWFnZSBsb2Fk
ICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyIGNyb3NzX29yaWdpbjopCi1QQVNTIENTUyBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3QzIGNyb3NzX29yaWdpbjopCi1QQVNTIENTUyBsb2FkICh1cmw6
aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3Q0IGNyb3NzX29yaWdpbjopCi1QQVNTIEltYWdlIGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZHVtbXk/dGVzdDUgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKLVBBU1MgSW1hZ2UgbG9h
ZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQot
UEFTUyBJbWFnZSBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q3IGNyb3NzX29yaWdpbjopCi1Q
QVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDggY3Jvc3Nfb3JpZ2luOmFub255
bW91cykKLVBBU1MgSW1hZ2UgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0OSBjcm9zc19vcmln
aW46dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90
ZXN0MTAgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2Fs
aG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/
dGVzdDExIGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0
cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2R1bW15P3Rlc3QxMiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBTY3Jp
cHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTMgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgU2Ny
aXB0IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDE0IGNyb3NzX29yaWdpbjphbm9ueW1vdXMp
Ci1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QxNSBjcm9zc19vcmlnaW46
dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0
NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MTYg
Y3Jvc3Nfb3JpZ2luOikKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDE3IGNy
b3NzX29yaWdpbjphbm9ueW1vdXMpCi1QQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhv
c3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rl
c3QxOCBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MTkgY3Jvc3Nfb3JpZ2luOikKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRw
czovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDIwIGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCi1QQVNTIENTUyBsb2FkICh1
cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3QyMSBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQotRkFJ
TCBGb250RmFjZSBsb2FkICh1cmw6IGh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MjIpIGFzc2VydF9lcXVhbHM6
IG1vZGUgb2YgbXVzdCBiZSBjb3JzLiBleHBlY3RlZCAiY29ycyIgYnV0IGdvdCAibm8tY29ycyIK
LUZBSUwgRm9udEZhY2UgbG9hZCAodXJsOiBodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDIzKSBhc3NlcnRfZXF1
YWxzOiBtb2RlIG9mIG11c3QgYmUgY29ycy4gZXhwZWN0ZWQgImNvcnMiIGJ1dCBnb3QgIm5vLWNv
cnMiCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QyNCkKLVBBU1MgU2Ny
aXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDI1KQotUEFTUyBTY3JpcHQgbG9hZCAodXJs
Omh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0MjYpCi1QQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9sb2Nh
bGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3QyNykKLVBBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDI4KQotUEFT
UyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MjkpCi1QQVNTIENTUyBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2R1bW15P3Rlc3QzMCkKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xvY2Fs
aG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/
dGVzdDMxKQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzIpCi1QQVNTIENT
UyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QzMykKLVBBU1MgQ1NTIGxvYWQgKHVybDpodHRw
czovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZHVtbXk/dGVzdDM0KQotUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0
NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzUp
Ci1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3QzNiBtb2RlOnNhbWUtb3JpZ2luIGNy
ZWRlbnRpYWxzOm9taXQpIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6
aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2R1bW15P3Rlc3QzNiBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxzOm9taXQpIG11
c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJs
Omh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0MzcgbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50aWFsczpzYW1lLW9y
aWdpbikgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovL2xv
Y2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVt
bXk/dGVzdDM3IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4pIG11c3Qg
YmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0MzggbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50aWFsczppbmNsdWRlKSBh
c3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
MzggbW9kZTpzYW1lLW9yaWdpbiBjcmVkZW50aWFsczppbmNsdWRlKSBtdXN0IGJlIGVtcHR5LiBl
eHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczovL2xvY2Fs
aG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/
dGVzdDM5IG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczpvbWl0KSBhc3NlcnRfZXF1YWxzOiBkZXN0
aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0MzkgbW9kZTpuby1jb3JzIGNy
ZWRlbnRpYWxzOm9taXQpIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAi
IgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDAgbW9kZTpuby1jb3JzIGNyZWRl
bnRpYWxzOnNhbWUtb3JpZ2luKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9kdW1teT90ZXN0NDAgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3Jp
Z2luKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0
Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQxIG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczppbmNs
dWRlKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vbG9j
YWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1t
eT90ZXN0NDEgbW9kZTpuby1jb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpIG11c3QgYmUgZW1wdHku
IGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0dHBzOi8vbG9j
YWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1t
eT90ZXN0NDIgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOm9taXQpIGFzc2VydF9lcXVhbHM6IGRlc3Rp
bmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0MiBtb2RlOmNvcnMgY3JlZGVu
dGlhbHM6b21pdCkgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1G
QUlMIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0MyBtb2RlOmNvcnMgY3JlZGVudGlhbHM6
c2FtZS1vcmlnaW4pIGFzc2VydF9lcXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0
cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2R1bW15P3Rlc3Q0MyBtb2RlOmNvcnMgY3JlZGVudGlhbHM6c2FtZS1vcmlnaW4pIG11c3Qg
YmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9kdW1teT90ZXN0NDQgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpIGFzc2VydF9l
cXVhbHM6IGRlc3RpbmF0aW9uIG9mIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0NCBtb2Rl
OmNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgbXVzdCBiZSBlbXB0eS4gZXhwZWN0ZWQgImVtcHR5
IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q0NSBtb2RlOm5v
LWNvcnMgY3JlZGVudGlhbHM6b21pdCkgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0
Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ1IG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczpvbWl0
KSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2gg
KHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ2IG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczpzYW1lLW9y
aWdpbikgYXNzZXJ0X2VxdWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovLzEy
Ny4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVt
bXk/dGVzdDQ2IG1vZGU6bm8tY29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikgbXVzdCBiZSBl
bXB0eS4gZXhwZWN0ZWQgImVtcHR5IiBidXQgZ290ICIiCi1GQUlMIGZldGNoICh1cmw6aHR0cHM6
Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2R1bW15P3Rlc3Q0NyBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkgYXNzZXJ0X2Vx
dWFsczogZGVzdGluYXRpb24gb2YgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ3IG1vZGU6
bm8tY29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBtdXN0IGJlIGVtcHR5LiBleHBlY3RlZCAiZW1w
dHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVzdDQ4IG1vZGU6
Y29ycyBjcmVkZW50aWFsczpvbWl0KSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRj
aCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NDggbW9kZTpjb3JzIGNyZWRlbnRpYWxzOm9taXQpIG11
c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgotRkFJTCBmZXRjaCAodXJs
Omh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teT90ZXN0NDkgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKSBh
c3NlcnRfZXF1YWxzOiBkZXN0aW5hdGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4x
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0
NDkgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKSBtdXN0IGJlIGVtcHR5LiBleHBl
Y3RlZCAiZW1wdHkiIGJ1dCBnb3QgIiIKLUZBSUwgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAu
MTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXk/dGVz
dDUwIG1vZGU6Y29ycyBjcmVkZW50aWFsczppbmNsdWRlKSBhc3NlcnRfZXF1YWxzOiBkZXN0aW5h
dGlvbiBvZiBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teT90ZXN0NTAgbW9kZTpjb3JzIGNyZWRlbnRp
YWxzOmluY2x1ZGUpIG11c3QgYmUgZW1wdHkuIGV4cGVjdGVkICJlbXB0eSIgYnV0IGdvdCAiIgot
UEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1MSBjcm9zc19vcmlnaW46KQot
UEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1MiBjcm9zc19vcmlnaW46YW5v
bnltb3VzKQotUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1MyBjcm9zc19v
cmlnaW46dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3Q1NCBjcm9zc19vcmlnaW46KQotUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3Q1NSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0
cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2R1bW15P3Rlc3Q1NiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQotUEFTUyBWaWRl
byBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1NyBjcm9zc19vcmlnaW46KQotUEFTUyBWaWRl
byBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1OCBjcm9zc19vcmlnaW46YW5vbnltb3VzKQot
UEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q1OSBjcm9zc19vcmlnaW46dXNl
LWNyZWRlbnRpYWxzKQotUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q2MCBj
cm9zc19vcmlnaW46KQotUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0
My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15P3Rlc3Q2MSBj
cm9zc19vcmlnaW46YW5vbnltb3VzKQotUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcu
MC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15
P3Rlc3Q2MiBjcm9zc19vcmlnaW46dXNlLWNyZWRlbnRpYWxzKQorUEFTUyBJbWFnZSBsb2FkICh1
cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0MSBjcm9zc19vcmlnaW46KQorUEFTUyBJbWFnZSBsb2FkICh1
cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3NhbXBsZT90ZXN0MiBjcm9zc19vcmlnaW46KQorUEFTUyBDU1MgbG9hZCAodXJs
Omh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9zYW1wbGU/dGVzdDMgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQ1NTIGxvYWQgKHVybDpo
dHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2FtcGxlP3Rlc3Q0IGNyb3NzX29yaWdpbjopCitQQVNTIEltYWdlIGxvYWQgKHVybDpo
dHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2FtcGxlP3Rlc3Q1IGNyb3NzX29yaWdpbjphbm9ueW1vdXMpCitQQVNTIEltYWdlIGxv
YWQgKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q2IGNyb3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMp
CitQQVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q3IGNyb3NzX29yaWdpbjop
CitQQVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q4IGNyb3NzX29yaWdpbjph
bm9ueW1vdXMpCitQQVNTIEltYWdlIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q5IGNyb3Nz
X29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQQVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nh
bXBsZT90ZXN0MTAgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3QxMSBjcm9zc19vcmlnaW46YW5vbnltb3VzKQorUEFTUyBTY3JpcHQgbG9hZCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDEyIGNyb3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQ
QVNTIFNjcmlwdCBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MTMgY3Jvc3Nfb3JpZ2luOikK
K1BBU1MgU2NyaXB0IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QxNCBjcm9zc19vcmlnaW46
YW5vbnltb3VzKQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDE1IGNy
b3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQQVNTIENTUyBsb2FkICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nh
bXBsZT90ZXN0MTYgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQ1NTIGxvYWQgKHVybDpodHRwczovL2xv
Y2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2Ft
cGxlP3Rlc3QxNyBjcm9zc19vcmlnaW46YW5vbnltb3VzKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGU/dGVzdDE4IGNyb3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQQVNTIENT
UyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0MTkgY3Jvc3Nfb3JpZ2luOikKK1BBU1MgQ1NT
IGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QyMCBjcm9zc19vcmlnaW46YW5vbnltb3VzKQor
UEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDIxIGNyb3NzX29yaWdpbjp1c2Ut
Y3JlZGVudGlhbHMpCitGQUlMIEZvbnRGYWNlIGxvYWQgKHVybDogaHR0cHM6Ly9sb2NhbGhvc3Q6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0
MjIpIGFzc2VydF9lcXVhbHM6IG1vZGUgb2YgbXVzdCBiZSBjb3JzLiBleHBlY3RlZCAiY29ycyIg
YnV0IGdvdCAibm8tY29ycyIKK0ZBSUwgRm9udEZhY2UgbG9hZCAodXJsOiBodHRwczovLzEyNy4w
LjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxl
P3Rlc3QyMykgYXNzZXJ0X2VxdWFsczogbW9kZSBvZiBtdXN0IGJlIGNvcnMuIGV4cGVjdGVkICJj
b3JzIiBidXQgZ290ICJuby1jb3JzIgorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9j
YWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1w
bGU/dGVzdDI0KQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDI1KQor
UEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDI2KQorUEFTUyBTY3JpcHQg
bG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDI3KQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGU/dGVzdDI4KQorUEFTUyBTY3JpcHQgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxo
b3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/
dGVzdDI5KQorUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDMwKQorUEFTUyBD
U1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDMxKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0
dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zYW1wbGU/dGVzdDMyKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0
Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVz
dDMzKQorUEFTUyBDU1MgbG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDM0KQorUEFTUyBDU1Mg
bG9hZCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDM1KQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8v
bG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9z
YW1wbGU/dGVzdDM2IG1vZGU6c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6b21pdCkKK1BBU1MgZmV0
Y2ggKHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3QzNyBtb2RlOnNhbWUtb3JpZ2luIGNyZWRlbnRpYWxz
OnNhbWUtb3JpZ2luKQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDM4IG1vZGU6
c2FtZS1vcmlnaW4gY3JlZGVudGlhbHM6aW5jbHVkZSkKK1BBU1MgZmV0Y2ggKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3QzOSBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6b21pdCkKK1BBU1MgZmV0Y2gg
KHVybDpodHRwczovL2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0MCBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6c2FtZS1v
cmlnaW4pCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NDEgbW9kZTpuby1jb3Jz
IGNyZWRlbnRpYWxzOmluY2x1ZGUpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9sb2NhbGhvc3Q6
OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0
NDIgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOm9taXQpCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nh
bXBsZT90ZXN0NDMgbW9kZTpjb3JzIGNyZWRlbnRpYWxzOnNhbWUtb3JpZ2luKQorUEFTUyBmZXRj
aCAodXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQ0IG1vZGU6Y29ycyBjcmVkZW50aWFsczppbmNsdWRl
KQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQ1IG1vZGU6bm8tY29ycyBjcmVk
ZW50aWFsczpvbWl0KQorUEFTUyBmZXRjaCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDQ2IG1vZGU6
bm8tY29ycyBjcmVkZW50aWFsczpzYW1lLW9yaWdpbikKK1BBU1MgZmV0Y2ggKHVybDpodHRwczov
LzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3Q0NyBtb2RlOm5vLWNvcnMgY3JlZGVudGlhbHM6aW5jbHVkZSkKK1BBU1MgZmV0
Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0OCBtb2RlOmNvcnMgY3JlZGVudGlhbHM6b21pdCkK
K1BBU1MgZmV0Y2ggKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q0OSBtb2RlOmNvcnMgY3JlZGVudGlh
bHM6c2FtZS1vcmlnaW4pCitQQVNTIGZldGNoICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NTAgbW9k
ZTpjb3JzIGNyZWRlbnRpYWxzOmluY2x1ZGUpCitQQVNTIEF1ZGlvIGxvYWQgKHVybDpodHRwczov
L2xvY2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2FtcGxlP3Rlc3Q1MSBjcm9zc19vcmlnaW46KQorUEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6
Ly9sb2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3NhbXBsZT90ZXN0NTIgY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgQXVkaW8gbG9hZCAo
dXJsOmh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9zYW1wbGU/dGVzdDUzIGNyb3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQ
QVNTIEF1ZGlvIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q1NCBjcm9zc19vcmlnaW46KQor
UEFTUyBBdWRpbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NTUgY3Jvc3Nfb3JpZ2luOmFu
b255bW91cykKK1BBU1MgQXVkaW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDU2IGNyb3Nz
X29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQQVNTIFZpZGVvIGxvYWQgKHVybDpodHRwczovL2xv
Y2FsaG9zdDo5NDQzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2Ft
cGxlP3Rlc3Q1NyBjcm9zc19vcmlnaW46KQorUEFTUyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly9s
b2NhbGhvc3Q6OTQ0My9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Nh
bXBsZT90ZXN0NTggY3Jvc3Nfb3JpZ2luOmFub255bW91cykKK1BBU1MgVmlkZW8gbG9hZCAodXJs
Omh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9zYW1wbGU/dGVzdDU5IGNyb3NzX29yaWdpbjp1c2UtY3JlZGVudGlhbHMpCitQQVNT
IFZpZGVvIGxvYWQgKHVybDpodHRwczovLzEyNy4wLjAuMTo5NDQzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlP3Rlc3Q2MCBjcm9zc19vcmlnaW46KQorUEFT
UyBWaWRlbyBsb2FkICh1cmw6aHR0cHM6Ly8xMjcuMC4wLjE6OTQ0My9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZT90ZXN0NjEgY3Jvc3Nfb3JpZ2luOmFub255
bW91cykKK1BBU1MgVmlkZW8gbG9hZCAodXJsOmh0dHBzOi8vMTI3LjAuMC4xOjk0NDMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGU/dGVzdDYyIGNyb3NzX29y
aWdpbjp1c2UtY3JlZGVudGlhbHMpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLXJlcXVlc3QtcmVzb3VyY2VzLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRj
aC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy5odG1sCmluZGV4IGZlMjI3ZDljZTJmNDk0M2VjOGEy
YWE5MzY4ODJmN2I0NmRhY2EyOGYuLmI0NjgwYzNjY2Q1OGQ5ZDdkZWY5ZDY5ZmYxZDEwNDhhNmFl
MDI5MDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtcmVzb3Vy
Y2VzLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1yZXNv
dXJjZXMuaHR0cHMuaHRtbApAQCAtMTE3LDcgKzExNyw3IEBAIGZ1bmN0aW9uIGZldGNoX3Rlc3Qo
ZnJhbWUsIHVybCwgbW9kZSwgY3JlZGVudGlhbHMsCiAgICAgICBjcmVkZW50aWFsczogZXhwZWN0
ZWRfY3JlZGVudGlhbHMsCiAgICAgICByZWRpcmVjdDogJ2ZvbGxvdycsCiAgICAgICBpbnRlZ3Jp
dHk6ICcnLAotICAgICAgZGVzdGluYXRpb246ICdlbXB0eScsCisgICAgICBkZXN0aW5hdGlvbjog
JycsCiAgICAgICBtZXNzYWdlOiBgZmV0Y2ggKHVybDoke2FjdHVhbF91cmx9IG1vZGU6JHttb2Rl
fSBgICsKICAgICAgICAgICAgICAgIGBjcmVkZW50aWFsczoke2NyZWRlbnRpYWxzfSlgCiAgICAg
fTsKQEAgLTE2Miw5ICsxNjIsOSBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgIGNvbnN0
IFNDUklQVCA9ICdyZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtd29ya2VyLmpzJzsK
ICAgY29uc3QgaG9zdF9pbmZvID0gZ2V0X2hvc3RfaW5mbygpOwogICBjb25zdCBMT0NBTF9VUkwg
PQotICAgICAgaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291
cmNlcy9kdW1teT90ZXN0JzsKKyAgICAgIGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNl
X3BhdGgoKSArICdyZXNvdXJjZXMvc2FtcGxlP3Rlc3QnOwogICBjb25zdCBSRU1PVEVfVVJMID0K
LSAgICAgIGhvc3RfaW5mb1snSFRUUFNfUkVNT1RFX09SSUdJTiddICsgYmFzZV9wYXRoKCkgKyAn
cmVzb3VyY2VzL2R1bW15P3Rlc3QnOworICAgICAgaG9zdF9pbmZvWydIVFRQU19SRU1PVEVfT1JJ
R0lOJ10gKyBiYXNlX3BhdGgoKSArICdyZXNvdXJjZXMvc2FtcGxlP3Rlc3QnOwogCiAgIGNvbnN0
IHJlZ2lzdHJhdGlvbiA9CiAgICAgICBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2Fu
ZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BFKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YmRlMTA0MDFkOTc1ZGNkMzM1OTZjYzBl
NzMzOGQ2MzVmODRiN2Y2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0
Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAorCitGQUlMIFZlcmlmeSBzeW5jaHJvbm91cyBYTUxIdHRwUmVxdWVzdCBhbHdh
eXMgdGhyb3dzIGEgTmV0d29ya0Vycm9yIGZvciBSZWFkYWJsZVN0cmVhbSBlcnJvcnMgYXNzZXJ0
X3Rocm93c19kb206IGZ1bmN0aW9uICIoKSA9PiBmcmFtZS5jb250ZW50V2luZG93LnBlcmZvcm1T
eW5jWEhSKCJub24tZXhpc3RlbnQtc3RyZWFtLTEudHh0IikiIGRpZCBub3QgdGhyb3cKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci5o
dHRwcy53aW5kb3cuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5
bmMtZXJyb3IuaHR0cHMud2luZG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUyOGU2OTNiM2E1
ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3IuaHR0cHMud2luZG93Lmh0bWwKQEAgLTAs
MCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJh
c3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14
aHItc3luYy1lcnJvci5odHRwcy53aW5kb3cuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1y
ZXF1ZXN0LXhoci1zeW5jLWVycm9yLmh0dHBzLndpbmRvdy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNmMwMjEz
OTI4NjY5ZDIxMDg5OTgyNzMwYzAzMzRjZGU4YzIwZjZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci5odHRwcy53aW5kb3cu
anMKQEAgLTAsMCArMSwxOSBAQAorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy90ZXN0LWhlbHBl
cnMuc3ViLmpzCisKKyJ1c2Ugc3RyaWN0IjsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewor
ICBjb25zdCB1cmwgPSAicmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5bmMtZXJyb3Itd29y
a2VyLmpzIjsKKyAgY29uc3Qgc2NvcGUgPSAicmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLXN5
bmMtaWZyYW1lLmh0bWwiOworCisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IHNlcnZpY2Vf
d29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHVybCwgc2NvcGUpOworICB0LmFkZF9j
bGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCkpOworCisgIGF3YWl0IHdhaXRf
Zm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisgIGNv
bnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICB0LmFkZF9jbGVhbnVwKCgp
ID0+IGZyYW1lLnJlbW92ZSgpKTsKKworICBhc3NlcnRfdGhyb3dzX2RvbSgiTmV0d29ya0Vycm9y
IiwgZnJhbWUuY29udGVudFdpbmRvdy5ET01FeGNlcHRpb24sICgpID0+IGZyYW1lLmNvbnRlbnRX
aW5kb3cucGVyZm9ybVN5bmNYSFIoIm5vbi1leGlzdGVudC1zdHJlYW0tMS50eHQiKSk7CisgIGFz
c2VydF90aHJvd3NfZG9tKCJOZXR3b3JrRXJyb3IiLCBmcmFtZS5jb250ZW50V2luZG93LkRPTUV4
Y2VwdGlvbiwgKCkgPT4gZnJhbWUuY29udGVudFdpbmRvdy5wZXJmb3JtU3luY1hIUigibm9uLWV4
aXN0ZW50LXN0cmVhbS0yLnR4dCIpKTsKKyAgYXNzZXJ0X3Rocm93c19kb20oIk5ldHdvcmtFcnJv
ciIsIGZyYW1lLmNvbnRlbnRXaW5kb3cuRE9NRXhjZXB0aW9uLCAoKSA9PiBmcmFtZS5jb250ZW50
V2luZG93LnBlcmZvcm1TeW5jWEhSKCJub24tZXhpc3RlbnQtc3RyZWFtLTMudHh0IikpOworfSwg
IlZlcmlmeSBzeW5jaHJvbm91cyBYTUxIdHRwUmVxdWVzdCBhbHdheXMgdGhyb3dzIGEgTmV0d29y
a0Vycm9yIGZvciBSZWFkYWJsZVN0cmVhbSBlcnJvcnMiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaGlz
dG9yaWNhbC5odHRwcy5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjBiM2RkZmJmN2I4ODMwMjZiNzA2OTJj
ZjBmOTA3ZGM5M2Y1YWQyYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hp
c3RvcmljYWwuaHR0cHMuYW55LmpzCkBAIC0wLDAgKzEsNSBAQAorLy8gTUVUQTogZ2xvYmFsPXNl
cnZpY2V3b3JrZXIKKwordGVzdCgodCkgPT4geworICBhc3NlcnRfZmFsc2UoJ3RhcmdldENsaWVu
dElkJyBpbiBGZXRjaEV2ZW50LnByb3RvdHlwZSkKK30sICd0YXJnZXRDbGllbnRJZCBzaG91bGQg
bm90IGJlIG9uIEZldGNoRXZlbnQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hp
c3RvcmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvaGlzdG9yaWNhbC5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZDg5OTM5ODdiZWNlODBkZmYyZDEzMmExZDgyZTYxYTFmZWI5ODc5MQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3RvcmljYWwuaHR0cHMuYW55LnNl
cnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitGQUlMIHRhcmdldENs
aWVudElkIHNob3VsZCBub3QgYmUgb24gRmV0Y2hFdmVudCBhc3NlcnRfZmFsc2U6IGV4cGVjdGVk
IGZhbHNlIGdvdCB0cnVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3Rvcmlj
YWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2hpc3Rv
cmljYWwuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4
ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvaGlzdG9yaWNhbC5odHRwcy5hbnkuc2VydmljZXdvcmtlci5odG1sCkBAIC0w
LDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVkIGZvciBXZWJLaXQgdGVzdCBpbmZy
YXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0IC0tPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tb2R1bGUt
c2NyaXB0cy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtbW9k
dWxlLXNjcmlwdHMuaHR0cHMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAyNGY5N2Q4NGMwMjBjM2ZmMzRmY2I4MDBiNmZjZGZhNmQ3NGY1N2IxLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2lt
cG9ydC1tb2R1bGUtc2NyaXB0cy5odHRwcy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSw5ICswLDAgQEAKLQotUEFTUyBTdGF0aWMgaW1wb3J0LgotUEFTUyBOZXN0ZWQgc3RhdGljIGlt
cG9ydC4KLUZBSUwgU3RhdGljIGltcG9ydCBhbmQgdGhlbiBkeW5hbWljIGltcG9ydC4gYXNzZXJ0
X2FycmF5X2VxdWFsczogdmFsdWUgaXMgIkZhaWxlZCB0byBkbyBkeW5hbWljIGltcG9ydDogVHlw
ZUVycm9yOiBEeW5hbWljLWltcG9ydCBpcyBub3QgYXZhaWxhYmxlIGluIFdvcmtsZXRzIG9yIFNl
cnZpY2VXb3JrZXJzIiwgZXhwZWN0ZWQgYXJyYXkKLUZBSUwgRHluYW1pYyBpbXBvcnQuIGFzc2Vy
dF9hcnJheV9lcXVhbHM6IHZhbHVlIGlzICJGYWlsZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6IFR5
cGVFcnJvcjogRHluYW1pYy1pbXBvcnQgaXMgbm90IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBvciBT
ZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVkIGFycmF5Ci1GQUlMIE5lc3RlZCBkeW5hbWljIGltcG9y
dC4gYXNzZXJ0X2FycmF5X2VxdWFsczogdmFsdWUgaXMgIkZhaWxlZCB0byBkbyBkeW5hbWljIGlt
cG9ydDogVHlwZUVycm9yOiBEeW5hbWljLWltcG9ydCBpcyBub3QgYXZhaWxhYmxlIGluIFdvcmts
ZXRzIG9yIFNlcnZpY2VXb3JrZXJzIiwgZXhwZWN0ZWQgYXJyYXkKLUZBSUwgRHluYW1pYyBpbXBv
cnQgYW5kIHRoZW4gc3RhdGljIGltcG9ydC4gYXNzZXJ0X2FycmF5X2VxdWFsczogdmFsdWUgaXMg
IkZhaWxlZCB0byBkbyBkeW5hbWljIGltcG9ydDogVHlwZUVycm9yOiBEeW5hbWljLWltcG9ydCBp
cyBub3QgYXZhaWxhYmxlIGluIFdvcmtsZXRzIG9yIFNlcnZpY2VXb3JrZXJzIiwgZXhwZWN0ZWQg
YXJyYXkKLUZBSUwgZXZhbChpbXBvcnQoKSkuIGFzc2VydF9hcnJheV9lcXVhbHM6IHZhbHVlIGlz
ICJGYWlsZWQgdG8gZG8gZHluYW1pYyBpbXBvcnQ6IFR5cGVFcnJvcjogRHluYW1pYy1pbXBvcnQg
aXMgbm90IGF2YWlsYWJsZSBpbiBXb3JrbGV0cyBvciBTZXJ2aWNlV29ya2VycyIsIGV4cGVjdGVk
IGFycmF5Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1tb2R1bGUtc2Ny
aXB0cy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1vZHVsZS1zY3JpcHRz
Lmh0dHBzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdiY2E4ZGU2NGY1YmM5
NjY0OTExYmQxYzVkYzg4MzU2NzY4MWFmYjguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LW1vZHVsZS1zY3JpcHRz
Lmh0dHBzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyOSArMCwwIEBACi08IURPQ1RZUEUgaHRt
bD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTx0aXRsZT5UZXN0cyBmb3IgbW9kdWxlIGltcG9y
dDogU2VydmljZVdvcmtlcjwvdGl0bGU+Ci08c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3Jl
cG9ydC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5z
dWIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii93b3JrZXJzL21vZHVsZXMvcmVzb3VyY2Vz
L2ltcG9ydC10ZXN0LWNhc2VzLmpzIj48L3NjcmlwdD4KLTxib2R5PgotPHNjcmlwdD4KLWZ1bmN0
aW9uIGltcG9ydF90ZXN0KHRlc3RDYXNlKSB7Ci0gIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsK
LSAgICBjb25zdCBtc2dQcm9taXNlID0gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7Ci0gICAgICBu
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5vbm1lc3NhZ2UgPSByZXNvbHZlOwotICAgIH0pOwotICAg
IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgdGVzdENhc2Uuc2NyaXB0VVJMKTsK
LSAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgdGVz
dENhc2Uuc2NyaXB0VVJMKSk7Ci0gICAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQgbmF2aWdh
dG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoCi0gICAgICB0ZXN0Q2FzZS5zY3JpcHRVUkwsCi0g
ICAgICB7IHNjb3BlOiB0ZXN0Q2FzZS5zY3JpcHRVUkwsIHR5cGU6ICdtb2R1bGUnIH0pOwotICAg
IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLnBvc3RNZXNzYWdlKAotICAgICAgJ1NlbmQgbWVzc2Fn
ZSBmb3IgdGVzdHMgZnJvbSBtYWluIHNjcmlwdC4nKTsKLSAgICBjb25zdCBtc2dFdmVudCA9IGF3
YWl0IG1zZ1Byb21pc2U7Ci0gICAgYXNzZXJ0X2FycmF5X2VxdWFscyhtc2dFdmVudC5kYXRhLCB0
ZXN0Q2FzZS5leHBlY3RhdGlvbik7Ci0gIH0sIHRlc3RDYXNlLmRlc2NyaXB0aW9uKTsKLX0KLQot
dGVzdENhc2VzLmZvckVhY2goaW1wb3J0X3Rlc3QpOwotPC9zY3JpcHQ+Ci08L2JvZHk+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4uaHR0
cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mt
b3JpZ2luLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYTJjZTQwNDlhYmVmNThlN2I0
MzAwZjRjNGZiNjI2MzdlOTc1ZmQyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDMgQEAKKworRkFJTCBpbXBvcnRTY3JpcHRzKCkgc3VwcG9ydHMgY3Jvc3Mtb3JpZ2luIHJl
cXVlc3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogTmV0d29ya0Vycm9yOiBBIHNlcnZlciB3aXRoIHRoZSBzcGVjaWZpZWQg
aG9zdG5hbWUgY291bGQgbm90IGJlIGZvdW5kLiIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4uaHR0cHMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li43NzM3MDhhOWZiY2UzMmE2YjE3ZjIyZDg4YjlmYjZlYmMzNTUzNzEwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLmh0dHBz
Lmh0bWwKQEAgLTAsMCArMSwxOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8bWV0YSBjaGFyc2V0PSJ1
dGYtOCI+Cis8dGl0bGU+VGVzdHMgZm9yIGltcG9ydFNjcmlwdHM6IGNyb3NzLW9yaWdpbjwvdGl0
bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPGJv
ZHk+Cis8c2NyaXB0PgorcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHNjb3Bl
ID0gJ3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4nOworICAgIGF3YWl0IHNl
cnZpY2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOworICAgIGxldCByZWcgPSBhd2FpdCBu
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcigKKyAgICAgICdyZXNvdXJjZXMvaW1wb3J0
LXNjcmlwdHMtY3Jvc3Mtb3JpZ2luLXdvcmtlci5zdWIuanMnLCB7IHNjb3BlOiBzY29wZSB9KTsK
KyAgICB0LmFkZF9jbGVhbnVwKF8gPT4gcmVnLnVucmVnaXN0ZXIoKSk7CisgICAgYXNzZXJ0X25v
dF9lcXVhbHMocmVnLmluc3RhbGxpbmcsIG51bGwsICd3b3JrZXIgaXMgaW5zdGFsbGluZycpOwor
ICB9LCAnaW1wb3J0U2NyaXB0cygpIHN1cHBvcnRzIGNyb3NzLW9yaWdpbiByZXF1ZXN0cycpOwor
PC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0
aW9uLXByZWxvYWQvcmVzb3VyY2VzL2NodW5rZWQtZW5jb2Rpbmctc2NvcGUucHkgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXByZWxvYWQvcmVzb3VyY2VzL2NodW5rZWQtZW5jb2Rpbmct
c2NvcGUucHkKaW5kZXggOTEyZjQzZDAwNDAyMjc4ZDU4NWJkMTIzZGU1ZmUxMWQxMGFiMWMwNC4u
NjU5YzRkOGNkZjI0ZTQ4MTQwOGQ5Y2VhY2ZhZDljYTFkNTUzNzNhOSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1wcmVsb2FkL3Jlc291cmNlcy9jaHVua2VkLWVuY29k
aW5nLXNjb3BlLnB5CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcHJlbG9hZC9y
ZXNvdXJjZXMvY2h1bmtlZC1lbmNvZGluZy1zY29wZS5weQpAQCAtMTQsNyArMTQsNiBAQCBkZWYg
bWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CiAgICAgICAgICAgICByZXNwb25zZS53cml0ZXIud3Jp
dGUodSIlc1xuJXNcbiIgJSAobGVuKHN0cihpZHgpKSwgaWR4KSkKICAgICAgICAgZWxzZToKICAg
ICAgICAgICAgIHJlc3BvbnNlLndyaXRlci53cml0ZSh1IiVzXHJcbiVzXHJcbiIgJSAobGVuKHN0
cihpZHgpKSwgaWR4KSkKLSAgICAgICAgcmVzcG9uc2Uud3JpdGVyLmZsdXNoKCkKICAgICAgICAg
dGltZS5zbGVlcCgwLjAwMSkKIAogICAgIHJlc3BvbnNlLndyaXRlci53cml0ZSh1IjBcclxuXHJc
biIpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXJlZGlyZWN0LXJl
c29sdXRpb24uaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlv
bi1yZWRpcmVjdC1yZXNvbHV0aW9uLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZTJl
YjgzZjRmNmU4ZThkYmJiY2U5ZDRkNjJmMGU1NmNhMGFiZDFhCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC1yZXNvbHV0aW9uLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKKworUEFTUyB0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJl
ZGlyZWN0CitQQVNTIHRlc3QgcmVsYXRpdmUgb3BhcXVlcmVkaXJlY3Qgd2l0aCBDYWNoZVN0b3Jh
Z2UKK1BBU1MgdGVzdCByZWxhdGl2ZSBvcGFxdWVyZWRpcmVjdCB3aXRoIGNsb25lCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVzb2x1dGlvbi5o
dHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi1yZWRpcmVjdC1yZXNvbHV0
aW9uLmh0dHBzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTllMWNhZmVjMzQ4NGE4N2ZiZTFmNGJhMzFjZGIy
ZTdkM2ZiOTYwZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRp
b24tcmVkaXJlY3QtcmVzb2x1dGlvbi5odHRwcy5odG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhRE9D
VFlQRSBodG1sPgorPHRpdGxlPlNlcnZpY2UgV29ya2VyOiBOYXZpZ2F0aW9uIFJlZGlyZWN0IFJl
c29sdXRpb248L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48
L3NjcmlwdD4KKzxib2R5PgorPHNjcmlwdD4KKworZnVuY3Rpb24gbWFrZV9hYnNvbHV0ZSh1cmwp
IHsKKyAgcmV0dXJuIG5ldyBVUkwodXJsLCBsb2NhdGlvbikudG9TdHJpbmcoKTsKK30KKworY29u
c3Qgc2NyaXB0ID0gJ3Jlc291cmNlcy9mZXRjaC1yZXdyaXRlLXdvcmtlci5qcyc7CisKK2Z1bmN0
aW9uIHJlZGlyZWN0X3Jlc3VsdF90ZXN0KHNjb3BlLCBleHBlY3RlZF91cmwsIGRlc2NyaXB0aW9u
KSB7CisgIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgICBjb25zdCByZWdpc3RyYXRpb24g
PSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAgICAgICAg
ICB0LCBzY3JpcHQsIHNjb3BlKTsKKyAgICAgIHQuYWRkX2NsZWFudXAoKCkgPT4geworICAgICAg
ICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSk7CisgICAgICB9KQor
ICAgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICdh
Y3RpdmF0ZWQnKTsKKworICAgICAgLy8gVGhlIG5hdmlnYXRpb24gdG8gfHNjb3BlfCB3aWxsIGJl
IHJlc29sdmVkIGJ5IGEgZmV0Y2ggdG8gfHJlZGlyZWN0X3VybHwKKyAgICAgIC8vIHdoaWNoIHJl
dHVybnMgYSByZWxhdGl2ZSBMb2NhdGlvbiBoZWFkZXIuIElmIGl0IGlzIHJlc29sdmVkIHJlbGF0
aXZlIHRvCisgICAgICAvLyB8c2NvcGV8LCB0aGUgcmVzdWx0IHdpbGwgYmUgbmF2aWdhdGUtcmVk
aXJlY3QtcmVzb2x1dGlvbi9ibGFuay5odG1sLiBJZgorICAgICAgLy8gcmVsYXRpdmUgdG8gfHJl
ZGlyZWN0X3VybHwsIGl0IHdpbGwgYmUgcmVzb3VyY2VzL2JsYW5rLmh0bWwuIFRoZSBsYXR0ZXIK
KyAgICAgIC8vIGlzIGNvcnJlY3QuCisgICAgICBjb25zdCBpZnJhbWUgPSBhd2FpdCB3aXRoX2lm
cmFtZShzY29wZSk7CisgICAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsgaWZyYW1lLnJlbW92ZSgp
OyB9KTsKKyAgICAgIGFzc2VydF9lcXVhbHMoaWZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb24u
aHJlZiwKKyAgICAgICAgICAgICAgICAgICAgbWFrZV9hYnNvbHV0ZShleHBlY3RlZF91cmwpKTsK
KyAgfSwgZGVzY3JpcHRpb24pOworfQorCisvLyB8cmVkaXJlY3RfdXJsfCBzZXJ2ZXMgYSByZWxh
dGl2ZSByZWRpcmVjdCB0byByZXNvdXJjZXMvYmxhbmsuaHRtbC4KK2NvbnN0IHJlZGlyZWN0X3Vy
bCA9ICdyZXNvdXJjZXMvcmVkaXJlY3QucHk/UmVkaXJlY3Q9YmxhbmsuaHRtbCc7CisKKy8vIHxz
Y29wZV9iYXNlfCBkb2VzIG5vdCBleGlzdCBidXQgd2lsbCBiZSByZXBsYWNlZCB3aXRoIGEgZmV0
Y2ggb2YKKy8vIHxyZWRpcmVjdF91cmx8IGJ5IGZldGNoLXJld3JpdGUtd29ya2VyLmpzLgorY29u
c3Qgc2NvcGVfYmFzZSA9ICdyZXNvdXJjZXMvc3ViZGlyL25hdmlnYXRpb24tcmVkaXJlY3QtcmVz
b2x1dGlvbj8nICsKKyAgICAncmVkaXJlY3QtbW9kZT1tYW51YWwmdXJsPScgKworICAgIGVuY29k
ZVVSSUNvbXBvbmVudChtYWtlX2Fic29sdXRlKHJlZGlyZWN0X3VybCkpOworCisvLyBXaGVuIHRo
ZSBTZXJ2aWNlIFdvcmtlciBmb3J3YXJkcyB0aGUgcmVzdWx0IG9mIHxyZWRpcmVjdF91cmx8IGFz
IGFuCisvLyBvcGFxdWVyZWRpcmVjdCByZXNwb25zZSwgdGhlIHJlZGlyZWN0IHVzZXMgdGhlIHJl
c3BvbnNlJ3MgVVJMIGxpc3QgYXMgdGhlCisvLyBiYXNlIFVSTCwgbm90IHRoZSByZXF1ZXN0Lgor
cmVkaXJlY3RfcmVzdWx0X3Rlc3Qoc2NvcGVfYmFzZSwgJ3Jlc291cmNlcy9ibGFuay5odG1sJywK
KyAgICAgICAgICAgICAgICAgICAgICd0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJlZGlyZWN0Jyk7CisK
Ky8vIFRoZSByZXNwb25zZSdzIGJhc2UgVVJMIHNob3VsZCBiZSBwcmVzZXJ2ZWQgYWNyb3NzIENh
Y2hlU3RvcmFnZSBhbmQgY2xvbmUuCityZWRpcmVjdF9yZXN1bHRfdGVzdChzY29wZV9iYXNlICsg
JyZjYWNoZT0xJywgJ3Jlc291cmNlcy9ibGFuay5odG1sJywKKyAgICAgICAgICAgICAgICAgICAg
ICd0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJlZGlyZWN0IHdpdGggQ2FjaGVTdG9yYWdlJyk7CityZWRp
cmVjdF9yZXN1bHRfdGVzdChzY29wZV9iYXNlICsgJyZjbG9uZT0xJywgJ3Jlc291cmNlcy9ibGFu
ay5odG1sJywKKyAgICAgICAgICAgICAgICAgICAgICd0ZXN0IHJlbGF0aXZlIG9wYXF1ZXJlZGly
ZWN0IHdpdGggY2xvbmUnKTsKKworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9uLXRpbWluZy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXgg
NjRlN2UyNWMyMGRjZDg5ZGFmZmM3MjIxNzQyZDk1MGM4NzI2NzlhZS4uNTU4OTgwNWQ4ZDAyNTUw
MWFkOWQ1YjgyODM4NGI5ZDkxYzU5MTVkZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
bmF2aWdhdGlvbi10aW1pbmcuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAK
IAotRkFJTCBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGltaW5nIGFzc2Vy
dF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiBhc3NlcnRfZ3JlYXRlcl90aGFuOiBl
eHBlY3RlZCBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBidXQgZ290IDAgUmVhY2hlZCB1bnJlYWNo
YWJsZSBjb2RlCitGQUlMIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1p
bmcgYXNzZXJ0X2dyZWF0ZXJfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgZ3JlYXRlciB0aGFuIDAg
YnV0IGdvdCAwCiBQQVNTIFNlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1p
bmcgbmV0d29yayBmYWxsYmFjawogUEFTUyBTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmln
YXRpb24gdGltaW5nIHJlZGlyZWN0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25h
dmlnYXRpb24tdGltaW5nLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9u
LXRpbWluZy5odHRwcy5odG1sCmluZGV4IDEzYjllZTQ3NWIxODlhZjExMjFhNjYwZmE5NGY4OGMy
YjU2NTQxMjMuLjZiNTFhNWMyZGEyMTNlYjI3Y2YwZDlmZDQwMWI3YzQ5YjUzNDk5NTAgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24tdGltaW5nLmh0dHBzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdhdGlvbi10aW1pbmcuaHR0cHMuaHRtbApAQCAtMzIs
ODEgKzMyLDQ1IEBAIGZ1bmN0aW9uIG5hdmlnYXRlX2luX2ZyYW1lKGZyYW1lLCB1cmwpIHsKIAog
Y29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvbmF2aWdhdGlvbi10aW1pbmctd29ya2VyLmpz
JzsKIAotcHJvbWlzZV90ZXN0KHQgPT4geworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAg
ICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL2VtcHR5Lmh0bWwnOwotICAgIGxldCBmcmFtZTsK
KyAgICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVy
X2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSk7CisgICAgdC5hZGRfY2xlYW51cCgo
KSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0
ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOworICAgIGNvbnN0IGZy
YW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkgPT4g
ZnJhbWUucmVtb3ZlKCkpOwogCi0gICAgcmV0dXJuIHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJf
YW5kX3JlZ2lzdGVyKHQsIHdvcmtlcl91cmwsIHNjb3BlKQotICAgICAgLnRoZW4ociA9PiB7Ci0g
ICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQn
KTsKLSAgICAgIH0pCi0gICAgICAudGhlbigoKSA9PiB3aXRoX2lmcmFtZShzY29wZSkpCi0gICAg
ICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwotICAgICAgICByZXR1cm4gbmF2aWdh
dGVfaW5fZnJhbWUoZnJhbWUsICdyZXNvdXJjZXMvZW1wdHkuaHRtbCcpOwotICAgICAgfSkKLSAg
ICAgIC50aGVuKHRpbWluZyA9PiB7Ci0gICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5n
LndvcmtlclN0YXJ0LCAwKTsKLSAgICAgICAgdmVyaWZ5KHRpbWluZyk7Ci0gICAgICB9KQotICAg
ICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbigoKSA9PiB7Ci0g
ICAgICAgIGlmIChmcmFtZSkKLSAgICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAgICAgICBy
ZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSk7Ci0gICAgICB9KTsKKyAg
ICBjb25zdCB0aW1pbmcgPSBhd2FpdCBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFtZSwgc2NvcGUpOwor
ICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGltaW5nLndvcmtlclN0YXJ0LCAwKTsKKyAgICB2ZXJp
ZnkodGltaW5nKTsKIH0sICdTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24gdGlt
aW5nJyk7CiAKLXByb21pc2VfdGVzdCh0ID0+IHsKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4g
ewogICAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9lbXB0eS5odG1sP25ldHdvcmstZmFsbGJh
Y2snOwotICAgIGxldCBmcmFtZTsKKyAgICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2
aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCB3b3JrZXJfdXJsLCBzY29wZSk7
CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpKTsKKyAg
ICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2
YXRlZCcpOworICAgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2NvcGUpOworICAg
IHQuYWRkX2NsZWFudXAoKCkgPT4gZnJhbWUucmVtb3ZlKCkpOwogCi0gICAgcmV0dXJuIHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtlcl91cmwsIHNjb3BlKQot
ICAgICAgLnRoZW4ociA9PiB7Ci0gICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0LCByLmlu
c3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICAgIH0pCi0gICAgICAudGhlbigoKSA9PiB3aXRo
X2lmcmFtZShzY29wZSkpCi0gICAgICAudGhlbihmID0+IHsKLSAgICAgICAgZnJhbWUgPSBmOwot
ICAgICAgICByZXR1cm4gbmF2aWdhdGVfaW5fZnJhbWUoZnJhbWUsICdyZXNvdXJjZXMvZW1wdHku
aHRtbD9uZXR3b3JrLWZhbGxiYWNrJyk7Ci0gICAgICB9KQotICAgICAgLnRoZW4odGltaW5nID0+
IHsKLSAgICAgICAgdmVyaWZ5KHRpbWluZyk7Ci0gICAgICB9KQotICAgICAgLmNhdGNoKHVucmVh
Y2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbigoKSA9PiB7Ci0gICAgICAgIGlmIChmcmFt
ZSkKLSAgICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOwotICAgICAgICByZXR1cm4gc2VydmljZV93
b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSk7Ci0gICAgICB9KTsKKyAgICBjb25zdCB0aW1pbmcg
PSBhd2FpdCBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFtZSwgc2NvcGUpOworICAgIHZlcmlmeSh0aW1p
bmcpOwogfSwgJ1NlcnZpY2Ugd29ya2VyIGNvbnRyb2xsZWQgbmF2aWdhdGlvbiB0aW1pbmcgbmV0
d29yayBmYWxsYmFjaycpOwogCi1wcm9taXNlX3Rlc3QodCA9PiB7Citwcm9taXNlX3Rlc3QoYXN5
bmMgKHQpID0+IHsKICAgICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMvcmVkaXJlY3QucHk/UmVk
aXJlY3Q9ZW1wdHkuaHRtbCc7Ci0gICAgbGV0IGZyYW1lOworICAgIGNvbnN0IHJlZ2lzdHJhdGlv
biA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIHdvcmtl
cl91cmwsIHNjb3BlKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJl
Z2lzdGVyKCkpOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0
YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisgICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFt
ZShzY29wZSk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CiAKLSAg
ICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2Vy
X3VybCwgc2NvcGUpCi0gICAgICAudGhlbihyID0+IHsKLSAgICAgICAgcmV0dXJuIHdhaXRfZm9y
X3N0YXRlKHQsIHIuaW5zdGFsbGluZywgJ2FjdGl2YXRlZCcpOwotICAgICAgfSkKLSAgICAgIC50
aGVuKCgpID0+IHdpdGhfaWZyYW1lKHNjb3BlKSkKLSAgICAgIC50aGVuKGYgPT4gewotICAgICAg
ICBmcmFtZSA9IGY7Ci0gICAgICAgIHJldHVybiBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFtZSwgJ3Jl
c291cmNlcy9yZWRpcmVjdC5weT9SZWRpcmVjdD1lbXB0eS5odG1sJyk7Ci0gICAgICB9KQotICAg
ICAgLnRoZW4odGltaW5nID0+IHsKLSAgICAgICAgdmVyaWZ5KHRpbWluZyk7Ci0gICAgICAgIC8v
IEFkZGl0aW9uYWwgY2hlY2tzIGZvciByZWRpcmVjdGVkIG5hdmlnYXRpb24uCi0gICAgICAgIGFz
c2VydF90cnVlKHRpbWluZy5yZWRpcmVjdFN0YXJ0IDw9IHRpbWluZy5yZWRpcmVjdEVuZCwKLSAg
ICAgICAgICAgICdFeHBlY3RlZCByZWRpcmVjdFN0YXJ0IDw9IHJlZGlyZWN0RW5kJyk7Ci0gICAg
ICAgIGFzc2VydF90cnVlKHRpbWluZy5yZWRpcmVjdEVuZCA8PSB0aW1pbmcuZmV0Y2hTdGFydCwK
LSAgICAgICAgICAgICdFeHBlY3RlZCByZWRpcmVjdEVuZCA8PSBmZXRjaFN0YXJ0Jyk7Ci0gICAg
ICB9KQotICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpCi0gICAgICAudGhlbigo
KSA9PiB7Ci0gICAgICAgIGlmIChmcmFtZSkKLSAgICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOwot
ICAgICAgICByZXR1cm4gc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSk7Ci0gICAg
ICB9KTsKKyAgICBjb25zdCB0aW1pbmcgPSBhd2FpdCBuYXZpZ2F0ZV9pbl9mcmFtZShmcmFtZSwg
c2NvcGUpOworICAgIHZlcmlmeSh0aW1pbmcpOworICAgIC8vIEFkZGl0aW9uYWwgY2hlY2tzIGZv
ciByZWRpcmVjdGVkIG5hdmlnYXRpb24uCisgICAgYXNzZXJ0X3RydWUodGltaW5nLnJlZGlyZWN0
U3RhcnQgPD0gdGltaW5nLnJlZGlyZWN0RW5kLAorICAgICAgICAnRXhwZWN0ZWQgcmVkaXJlY3RT
dGFydCA8PSByZWRpcmVjdEVuZCcpOworICAgIGFzc2VydF90cnVlKHRpbWluZy5yZWRpcmVjdEVu
ZCA8PSB0aW1pbmcuZmV0Y2hTdGFydCwKKyAgICAgICAgJ0V4cGVjdGVkIHJlZGlyZWN0RW5kIDw9
IGZldGNoU3RhcnQnKTsKIH0sICdTZXJ2aWNlIHdvcmtlciBjb250cm9sbGVkIG5hdmlnYXRpb24g
dGltaW5nIHJlZGlyZWN0Jyk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45ZjkyOTExMjRjODA3MDNiZjNlMWNhMjYxZjNhYjY4N2E0ODZmZDQ0Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorCisKK0hhcm5lc3MgRXJyb3IgKFRJTUVP
VVQpLCBtZXNzYWdlID0gbnVsbAorCitUSU1FT1VUIE5lc3RlZCBibG9iIFVSTCB3b3JrZXJzIHNo
b3VsZCBiZSBpbnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLiBUZXN0IHRpbWVkIG91dAor
Tk9UUlVOIE5lc3RlZCB3b3JrZXIgY3JlYXRlZCBmcm9tIGEgYmxvYiBVUkwgd29ya2VyIHNob3Vs
ZCBiZSBpbnRlcmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLgorTk9UUlVOIE5lc3RlZCBibG9i
IFVSTCB3b3JrZXIgY3JlYXRlZCBmcm9tIGEgd29ya2VyIHNob3VsZCBiZSBpbnRlcmNlcHRlZCBi
eSBhIHNlcnZpY2Ugd29ya2VyLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uZXN0
ZWQtYmxvYi11cmwtd29ya2Vycy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmVzdGVk
LWJsb2ItdXJsLXdvcmtlcnMuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MjY5Y2JiNzAxZmFiYzJm
YWE3NDZmNmVkNDdmYmE4ZmE5ZDQyM2M4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvbmVzdGVkLWJsb2ItdXJsLXdvcmtlcnMuaHR0cHMuaHRtbApAQCAtMCwwICsxLDQyIEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+U2VydmljZSBX
b3JrZXI6IG5lc3RlZCBibG9iIFVSTCB3b3JrZXIgY2xpZW50czwvdGl0bGU+Cis8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMiPjwvc2NyaXB0PgorPGJvZHk+Cis8c2NyaXB0Pgor
Citjb25zdCBTQ1JJUFQgPSAncmVzb3VyY2VzL3NpbXBsZS1pbnRlcmNlcHQtd29ya2VyLmpzJzsK
K2NvbnN0IFNDT1BFID0gJ3Jlc291cmNlcy8nOworY29uc3QgUkVTT1VSQ0UgPSAncmVzb3VyY2Vz
L3NpbXBsZS50eHQnOworCitwcm9taXNlX3Rlc3QoKHQpID0+IHsKKyAgcmV0dXJuIHJ1blRlc3Qo
dCwgJ3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sJyk7Cit9LCAnTmVzdGVk
IGJsb2IgVVJMIHdvcmtlcnMgc2hvdWxkIGJlIGludGVyY2VwdGVkIGJ5IGEgc2VydmljZSB3b3Jr
ZXIuJyk7CisKK3Byb21pc2VfdGVzdCgodCkgPT4geworICByZXR1cm4gcnVuVGVzdCh0LCAncmVz
b3VyY2VzL25lc3RlZC13b3JrZXItY3JlYXRlZC1mcm9tLWJsb2ItdXJsLXdvcmtlci5odG1sJyk7
Cit9LCAnTmVzdGVkIHdvcmtlciBjcmVhdGVkIGZyb20gYSBibG9iIFVSTCB3b3JrZXIgc2hvdWxk
IGJlIGludGVyY2VwdGVkIGJ5IGEgc2VydmljZSB3b3JrZXIuJyk7CisKK3Byb21pc2VfdGVzdCgo
dCkgPT4geworICByZXR1cm4gcnVuVGVzdCh0LCAncmVzb3VyY2VzL25lc3RlZC1ibG9iLXVybC13
b3JrZXItY3JlYXRlZC1mcm9tLXdvcmtlci5odG1sJyk7Cit9LCAnTmVzdGVkIGJsb2IgVVJMIHdv
cmtlciBjcmVhdGVkIGZyb20gYSB3b3JrZXIgc2hvdWxkIGJlIGludGVyY2VwdGVkIGJ5IGEgc2Vy
dmljZSB3b3JrZXIuJyk7CisKK2FzeW5jIGZ1bmN0aW9uIHJ1blRlc3QodCwgaWZyYW1lX3VybCkg
eworICBjb25zdCByZWcgPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdp
c3Rlcih0LCBTQ1JJUFQsIFNDT1BFKTsKKyAgdC5hZGRfY2xlYW51cChfID0+IHJlZy51bnJlZ2lz
dGVyKCkpOworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWcuaW5zdGFsbGluZywgJ2FjdGl2
YXRlZCcpOworCisgIGNvbnN0IGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoaWZyYW1lX3VybCk7
CisgIHQuYWRkX2NsZWFudXAoXyA9PiBmcmFtZS5yZW1vdmUoKSk7CisgIGFzc2VydF9ub3RfZXF1
YWxzKGZyYW1lLmNvbnRlbnRXaW5kb3cubmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuY29udHJvbGxl
ciwKKyAgICAgICAgICAgICAgICAgICAgbnVsbCwgJ2ZyYW1lIHNob3VsZCBiZSBjb250cm9sbGVk
Jyk7CisKKyAgY29uc3QgcmVzcG9uc2VfdGV4dCA9IGF3YWl0IGZyYW1lLmNvbnRlbnRXaW5kb3cu
ZmV0Y2hfaW5fd29ya2VyKFJFU09VUkNFKTsKKyAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZV90ZXh0
LCAnaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXInLAorICAgICAgICAgICAgICAgICdmZXRj
aCgpIHNob3VsZCBiZSBpbnRlcmNlcHRlZC4nKTsKK30KKworPC9zY3JpcHQ+Cis8L2JvZHk+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC5hbnkuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC5hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjVi
MzcwYjcwOTRiZjhmOTJjYzM0NzY5M2M5YWM1YTFmYTY2NDg0NQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL25vLWR5bmFtaWMtaW1wb3J0LmFueS5qcwpAQCAtMCwwICsxLDMg
QEAKKy8vIE1FVEE6IGdsb2JhbD1zZXJ2aWNld29ya2VyCisKK2ltcG9ydFNjcmlwdHMoJ3Jlc291
cmNlcy9uby1keW5hbWljLWltcG9ydC5qcycpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmM3MTA5ZGIzNDgwZjZlOTMwZjY3NDZhMDg0NzM3MTU4NTQyN2Zl
YWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9y
dC5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK1BBU1Mg
TW9kdWxlIFVSTAorUEFTUyBBbm90aGVyIG1vZHVsZSBVUkwKK1BBU1MgTW9kdWxlIGRhdGE6IFVS
TAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC5hbnku
c2VydmljZXdvcmtlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQu
YW55LnNlcnZpY2V3b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZj
NjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
bm8tZHluYW1pYy1pbXBvcnQuYW55LnNlcnZpY2V3b3JrZXIuaHRtbApAQCAtMCwwICsxIEBACis8
IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3IgV2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUg
dG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9wZXJmb3JtYW5jZS10aW1lbGluZS5odHRw
cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcGVyZm9ybWFuY2UtdGltZWxpbmUuaHR0cHMuaHRt
bAppbmRleCAxZmUxOWRhNTNiZTZjNDYwY2FlNWYwNjk3OTRiYmRlZTNmNGEwZGE4Li5lNTZlNmZl
NDE2ZmYyMTUzNDFiYTliNmRmMDg4ZjExMWY5NjQ1NjIzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9wZXJmb3JtYW5jZS10aW1lbGluZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3BlcmZvcm1hbmNlLXRpbWVsaW5lLmh0dHBzLmh0bWwKQEAgLTEyLDcgKzEyLDcgQEAg
c2VydmljZV93b3JrZXJfdGVzdCgKIC8vIGlzIGluY2x1ZGVkIGluIHRoZSBQZXJmb3JtYW5jZSBB
UEkncyB0aW1pbmcgaW5mb3JtYXRpb24uCiBwcm9taXNlX3Rlc3QodCA9PiB7CiAgIGxldCBzY3Jp
cHQgPSAncmVzb3VyY2VzL2VtcHR5LWJ1dC1zbG93LXdvcmtlci5qcyc7Ci0gIGxldCBzY29wZSA9
ICdyZXNvdXJjZXMvZHVtbXkudHh0P3Nsb3ctc3ctdGltaW5nJzsKKyAgbGV0IHNjb3BlID0gJ3Jl
c291cmNlcy9zYW1wbGUudHh0P3Nsb3ctc3ctdGltaW5nJzsKICAgbGV0IHVybCA9IG5ldyBVUkwo
c2NvcGUsIHdpbmRvdy5sb2NhdGlvbikuaHJlZjsKICAgbGV0IHNsb3dVUkwgPSB1cmwgKyAnJnNs
b3cnOwogICBsZXQgZnJhbWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVj
dGVkLXJlc3BvbnNlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGly
ZWN0ZWQtcmVzcG9uc2UuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGY4YTI1MzU5MGUxOTljZWNi
MWQwYzY2MjdmYTEyNmZjY2NlYjQxYjMuLjNhZmQ3MmJhN2Y1YmYwMWM3N2I2M2UyYTA4ZjE5NWUz
ZmNiMTEyZTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQtcmVzcG9u
c2UuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQt
cmVzcG9uc2UuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xNCw2ICsxNCwxMiBAQCBQQVNTIG1vZGU6
ICJtYW51YWwiLCBubyBtb2RlIGNoYW5nZQogUEFTUyBtb2RlOiAiZm9sbG93IiwgZ2VuZXJhdGVk
IHJlZGlyZWN0IHJlc3BvbnNlCiBQQVNTIG1vZGU6ICJlcnJvciIsIGdlbmVyYXRlZCByZWRpcmVj
dCByZXNwb25zZQogUEFTUyBtb2RlOiAibWFudWFsIiwgZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3Bv
bnNlCitQQVNTIG1vZGU6ICJmb2xsb3ciLCBtYW51YWxseS1nZW5lcmF0ZWQgcmVkaXJlY3QgcmVz
cG9uc2UKK1BBU1MgbW9kZTogImVycm9yIiwgbWFudWFsbHktZ2VuZXJhdGVkIHJlZGlyZWN0IHJl
c3BvbnNlCitQQVNTIG1vZGU6ICJtYW51YWwiLCBtYW51YWxseS1nZW5lcmF0ZWQgcmVkaXJlY3Qg
cmVzcG9uc2UKK1BBU1MgbW9kZTogImZvbGxvdyIsIGdlbmVyYXRlZCByZWxhdGl2ZSByZWRpcmVj
dCByZXNwb25zZQorUEFTUyBtb2RlOiAiZXJyb3IiLCBnZW5lcmF0ZWQgcmVsYXRpdmUgcmVkaXJl
Y3QgcmVzcG9uc2UKK0ZBSUwgbW9kZTogIm1hbnVhbCIsIGdlbmVyYXRlZCByZWxhdGl2ZSByZWRp
cmVjdCByZXNwb25zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IFRoZSBVUkwgY2Fu4oCZdCBiZSBzaG93biIKIFBBU1MgRmV0
Y2ggc2hvdWxkIGZvbGxvdyB0aGUgcmVkaXJlY3QgcmVzcG9uc2UgMjAgdGltZXMKIFBBU1MgRmV0
Y2ggc2hvdWxkIG5vdCBmb2xsb3cgdGhlIHJlZGlyZWN0IHJlc3BvbnNlIDIxIHRpbWVzLgogUEFT
UyBUaGUgVVJMIGZvciB0aGUgc2VydmljZSB3b3JrZXIgcmVkaXJlY3RlZCByZXF1ZXN0IHNob3Vs
ZCBiZSBwcm9wYWdhdGVkIHRvIHJlc3BvbnNlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVkaXJlY3RlZC1yZXNwb25zZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVk
aXJlY3RlZC1yZXNwb25zZS5odHRwcy5odG1sCmluZGV4IDcyNjJhZjM2YWJhNjk3NzYzOGNjY2Mz
NDFkNjkzNTk3OWNjODZhZjYuLjcxYjM1ZDBlMTIwNTA2MjNkNjUwY2E4MjJjNzgwMDM3ZDgyNTg0
MjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZGlyZWN0ZWQtcmVzcG9uc2UuaHR0
cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWRpcmVjdGVkLXJlc3BvbnNlLmh0dHBz
Lmh0bWwKQEAgLTI2Nyw3ICsyNjcsNyBAQCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xl
YW4oKQogcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKICAgICAudGhlbigoKSA9
PiB7CiAgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJTiddICsgYmFzZV9w
YXRoKCkgKwotICAgICAgICAgICAgICAgICAgJ2R1bW15P3VybD0nICsgZW5jb2RlVVJJQ29tcG9u
ZW50KFRBUkdFVF9VUkwpICsKKyAgICAgICAgICAgICAgICAgICdzYW1wbGU/dXJsPScgKyBlbmNv
ZGVVUklDb21wb25lbnQoVEFSR0VUX1VSTCkgKwogICAgICAgICAgICAgICAgICAgJyZvcmlnaW5h
bC1yZWRpcmVjdC1tb2RlPWZvbGxvdyZzdz1nZW4nOwogICAgICAgcmV0dXJuIHJlZGlyZWN0ZWRf
dGVzdCh7dXJsOiB1cmwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9vcHRp
b246IHtyZWRpcmVjdDogJ2ZvbGxvdyd9LApAQCAtMjgxLDcgKzI4MSw3IEBAIHByb21pc2VfdGVz
dCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xl
YW4oKQogICAgIC50aGVuKCgpID0+IHsKICAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRU
UFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCi0gICAgICAgICAgICAgICAgICAnZHVtbXk/dXJs
PScgKyBlbmNvZGVVUklDb21wb25lbnQoVEFSR0VUX1VSTCkgKworICAgICAgICAgICAgICAgICAg
J3NhbXBsZT91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCiAgICAgICAg
ICAgICAgICAgICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1vZGU9ZXJyb3Imc3c9Z2VuJzsKICAgICAg
IHJldHVybiBwcm9taXNlX3JlamVjdHNfanMoCiAgICAgICAgICAgdCwgZnJhbWUuY29udGVudFdp
bmRvdy5UeXBlRXJyb3IsCkBAIC0yOTYsOCArMjk2LDggQEAgcHJvbWlzZV90ZXN0KHQgPT4gc2V0
dXBfYW5kX2NsZWFuKCkKIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAgICAg
LnRoZW4oKCkgPT4gewogICAgICAgY29uc3QgdXJsID0gaG9zdF9pbmZvWydIVFRQU19PUklHSU4n
XSArIGJhc2VfcGF0aCgpICsKLSAgICAgICAgICAgICAgICAgICdkdW1teT91cmw9JyArIGVuY29k
ZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCi0gICAgICAgICAgICAgICAgICAnJm9yaWdpbmFs
LXJlZGlyZWN0LW1vZGU9Zm9sbG93JnN3PWdlbic7CisgICAgICAgICAgICAgICAgICAnc2FtcGxl
P3VybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KFRBUkdFVF9VUkwpICsKKyAgICAgICAgICAgICAg
ICAgICcmb3JpZ2luYWwtcmVkaXJlY3QtbW9kZT1tYW51YWwmc3c9Z2VuJzsKICAgICAgIHJldHVy
biByZWRpcmVjdGVkX3Rlc3Qoe3VybDogdXJsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmV0Y2hfb3B0aW9uOiB7cmVkaXJlY3Q6ICdtYW51YWwnfSwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZldGNoX21ldGhvZDogZnJhbWUuY29udGVudFdpbmRvdy5mZXRjaCwKQEAg
LTMwNyw2ICszMDcsMTAyIEBAIHByb21pc2VfdGVzdCh0ID0+IHNldHVwX2FuZF9jbGVhbigpCiAg
ICAgfSksCiAgICdtb2RlOiAibWFudWFsIiwgZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlJyk7
CiAKKy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KKy8vIFRlc3RzIGZvciByZXF1ZXN0cyB0aGF0IGFyZSBpbi1zY29wZSBvZiB0aGUgc2Vy
dmljZSB3b3JrZXIuIFRoZSBzZXJ2aWNlCisvLyB3b3JrZXIgcmV0dXJucyBhIGdlbmVyYXRlZCBy
ZWRpcmVjdCByZXNwb25zZSBtYW51YWxseSB3aXRoIHRoZSBSZXNwb25zZQorLy8gY29uc3RydWN0
b3IuCisvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Citwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQorICAgIC50aGVuKCgp
ID0+IHsKKyAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNl
X3BhdGgoKSArCisgICAgICAgICAgICAgICAgICAnc2FtcGxlP3VybD0nICsgZW5jb2RlVVJJQ29t
cG9uZW50KFRBUkdFVF9VUkwpICsKKyAgICAgICAgICAgICAgICAgICcmb3JpZ2luYWwtcmVkaXJl
Y3QtbW9kZT1mb2xsb3cmc3c9Z2VuLW1hbnVhbCc7CisgICAgICByZXR1cm4gcmVkaXJlY3RlZF90
ZXN0KHt1cmw6IHVybCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZldGNoX29wdGlv
bjoge3JlZGlyZWN0OiAnZm9sbG93J30sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
ZXRjaF9tZXRob2Q6IGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2gsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBleHBlY3RlZF90eXBlOiAnYmFzaWMnLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZXhwZWN0ZWRfcmVkaXJlY3RlZDogdHJ1ZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGV4cGVjdGVkX2ludGVyY2VwdGVkX3VybHM6IFt1cmwsIFRBUkdFVF9VUkxd
fSkKKyAgICB9KSwKKyAgJ21vZGU6ICJmb2xsb3ciLCBtYW51YWxseS1nZW5lcmF0ZWQgcmVkaXJl
Y3QgcmVzcG9uc2UnKTsKKworcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKKyAg
ICAudGhlbigoKSA9PiB7CisgICAgICBjb25zdCB1cmwgPSBob3N0X2luZm9bJ0hUVFBTX09SSUdJ
TiddICsgYmFzZV9wYXRoKCkgKworICAgICAgICAgICAgICAgICAgJ3NhbXBsZT91cmw9JyArIGVu
Y29kZVVSSUNvbXBvbmVudChUQVJHRVRfVVJMKSArCisgICAgICAgICAgICAgICAgICAnJm9yaWdp
bmFsLXJlZGlyZWN0LW1vZGU9ZXJyb3Imc3c9Z2VuLW1hbnVhbCc7CisgICAgICByZXR1cm4gcHJv
bWlzZV9yZWplY3RzX2pzKAorICAgICAgICAgIHQsIGZyYW1lLmNvbnRlbnRXaW5kb3cuVHlwZUVy
cm9yLAorICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2godXJsLCB7cmVkaXJlY3Q6
ICdlcnJvcid9KSwKKyAgICAgICAgICAnVGhlIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZSBm
cm9tIHRoZSBzZXJ2aWNlIHdvcmtlciBzaG91bGQgJyArCisgICAgICAgICAgJ2JlIHRyZWF0ZWQg
YXMgYW4gZXJyb3Igd2hlbiB0aGUgcmVkaXJlY3QgZmxhZyBvZiByZXF1ZXN0IHdhcycgKworICAg
ICAgICAgICcgXCdlcnJvclwnLicpCisgICAgICAgIC50aGVuKCgpID0+IGNoZWNrX2ludGVyY2Vw
dGVkX3VybHMoW3VybF0pKTsKKyAgICB9KSwKKyAgJ21vZGU6ICJlcnJvciIsIG1hbnVhbGx5LWdl
bmVyYXRlZCByZWRpcmVjdCByZXNwb25zZScpOworCitwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9h
bmRfY2xlYW4oKQorICAgIC50aGVuKCgpID0+IHsKKyAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5m
b1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCisgICAgICAgICAgICAgICAgICAnc2Ft
cGxlP3VybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KFRBUkdFVF9VUkwpICsKKyAgICAgICAgICAg
ICAgICAgICcmb3JpZ2luYWwtcmVkaXJlY3QtbW9kZT1tYW51YWwmc3c9Z2VuLW1hbnVhbCc7Cisg
ICAgICByZXR1cm4gcmVkaXJlY3RlZF90ZXN0KHt1cmw6IHVybCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZldGNoX29wdGlvbjoge3JlZGlyZWN0OiAnbWFudWFsJ30sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9tZXRob2Q6IGZyYW1lLmNvbnRlbnRXaW5kb3cu
ZmV0Y2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF90eXBlOiAnb3Bh
cXVlcmVkaXJlY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVk
aXJlY3RlZDogZmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9p
bnRlcmNlcHRlZF91cmxzOiBbdXJsXX0pCisgICAgfSksCisgICdtb2RlOiAibWFudWFsIiwgbWFu
dWFsbHktZ2VuZXJhdGVkIHJlZGlyZWN0IHJlc3BvbnNlJyk7CisKKy8vID09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy8vIFRlc3RzIGZvciBy
ZXF1ZXN0cyB0aGF0IGFyZSBpbi1zY29wZSBvZiB0aGUgc2VydmljZSB3b3JrZXIuIFRoZSBzZXJ2
aWNlCisvLyB3b3JrZXIgcmV0dXJucyBhIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZSB3aXRo
IGEgcmVsYXRpdmUgbG9jYXRpb24gaGVhZGVyLgorLy8gR2VuZXJhdGVkIHJlc3BvbnNlcyBkbyBu
b3QgaGF2ZSBVUkxzLCBzbyB0aGlzIHNob3VsZCBmYWlsIHRvIHJlc29sdmUuCisvLyA9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Citwcm9taXNl
X3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQorICAgIC50aGVuKCgpID0+IHsKKyAgICAgIGNv
bnN0IHVybCA9IGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCisgICAg
ICAgICAgICAgICAgICAnc2FtcGxlP3VybD1ibGFuay5odG1sJyArCisgICAgICAgICAgICAgICAg
ICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1vZGU9Zm9sbG93JnN3PWdlbi1tYW51YWwnOworICAgICAg
cmV0dXJuIHByb21pc2VfcmVqZWN0c19qcygKKyAgICAgICAgICB0LCBmcmFtZS5jb250ZW50V2lu
ZG93LlR5cGVFcnJvciwKKyAgICAgICAgICBmcmFtZS5jb250ZW50V2luZG93LmZldGNoKHVybCwg
e3JlZGlyZWN0OiAnZm9sbG93J30pLAorICAgICAgICAgICdGb2xsb3dpbmcgdGhlIGdlbmVyYXRl
ZCByZWRpcmVjdCByZXNwb25zZSBmcm9tIHRoZSBzZXJ2aWNlIHdvcmtlciAnKworICAgICAgICAg
ICdzaG91bGQgcmVzdWx0IGZhaWwuJykKKyAgICAgICAgLnRoZW4oKCkgPT4gY2hlY2tfaW50ZXJj
ZXB0ZWRfdXJscyhbdXJsXSkpOworICAgIH0pLAorICAnbW9kZTogImZvbGxvdyIsIGdlbmVyYXRl
ZCByZWxhdGl2ZSByZWRpcmVjdCByZXNwb25zZScpOworCitwcm9taXNlX3Rlc3QodCA9PiBzZXR1
cF9hbmRfY2xlYW4oKQorICAgIC50aGVuKCgpID0+IHsKKyAgICAgIGNvbnN0IHVybCA9IGhvc3Rf
aW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCisgICAgICAgICAgICAgICAgICAn
c2FtcGxlP3VybD1ibGFuay5odG1sJyArCisgICAgICAgICAgICAgICAgICAnJm9yaWdpbmFsLXJl
ZGlyZWN0LW1vZGU9ZXJyb3Imc3c9Z2VuLW1hbnVhbCc7CisgICAgICByZXR1cm4gcHJvbWlzZV9y
ZWplY3RzX2pzKAorICAgICAgICAgIHQsIGZyYW1lLmNvbnRlbnRXaW5kb3cuVHlwZUVycm9yLAor
ICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cuZmV0Y2godXJsLCB7cmVkaXJlY3Q6ICdlcnJv
cid9KSwKKyAgICAgICAgICAnVGhlIGdlbmVyYXRlZCByZWRpcmVjdCByZXNwb25zZSBmcm9tIHRo
ZSBzZXJ2aWNlIHdvcmtlciBzaG91bGQgJyArCisgICAgICAgICAgJ2JlIHRyZWF0ZWQgYXMgYW4g
ZXJyb3Igd2hlbiB0aGUgcmVkaXJlY3QgZmxhZyBvZiByZXF1ZXN0IHdhcycgKworICAgICAgICAg
ICcgXCdlcnJvclwnLicpCisgICAgICAgIC50aGVuKCgpID0+IGNoZWNrX2ludGVyY2VwdGVkX3Vy
bHMoW3VybF0pKTsKKyAgICB9KSwKKyAgJ21vZGU6ICJlcnJvciIsIGdlbmVyYXRlZCByZWxhdGl2
ZSByZWRpcmVjdCByZXNwb25zZScpOworCitwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xl
YW4oKQorICAgIC50aGVuKCgpID0+IHsKKyAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRU
UFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCisgICAgICAgICAgICAgICAgICAnc2FtcGxlP3Vy
bD1ibGFuay5odG1sJyArCisgICAgICAgICAgICAgICAgICAnJm9yaWdpbmFsLXJlZGlyZWN0LW1v
ZGU9bWFudWFsJnN3PWdlbi1tYW51YWwnOworICAgICAgcmV0dXJuIHJlZGlyZWN0ZWRfdGVzdCh7
dXJsOiB1cmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaF9vcHRpb246IHty
ZWRpcmVjdDogJ21hbnVhbCd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2hf
bWV0aG9kOiBmcmFtZS5jb250ZW50V2luZG93LmZldGNoLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZXhwZWN0ZWRfdHlwZTogJ29wYXF1ZXJlZGlyZWN0JywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGV4cGVjdGVkX3JlZGlyZWN0ZWQ6IGZhbHNlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfaW50ZXJjZXB0ZWRfdXJsczogW3VybF19KQorICAg
IH0pLAorICAnbW9kZTogIm1hbnVhbCIsIGdlbmVyYXRlZCByZWxhdGl2ZSByZWRpcmVjdCByZXNw
b25zZScpOworCiAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09CiAvLyBUZXN0cyBmb3IgcmVxdWVzdHMgdGhhdCBhcmUgaW4tc2NvcGUgb2Yg
dGhlIHNlcnZpY2Ugd29ya2VyLiBUaGUgc2VydmljZQogLy8gd29ya2VyIHJldHVybnMgYSBnZW5l
cmF0ZWQgcmVkaXJlY3QgcmVzcG9uc2UuIEFuZCB0aGUgZmV0Y2ggZm9sbG93cyB0aGUKQEAgLTMx
OSw3ICs0MTUsNyBAQCBwcm9taXNlX3Rlc3QodCA9PiBzZXR1cF9hbmRfY2xlYW4oKQogICAgICAg
Ly8gU28gZmV0Y2ggY2FuIGZvbGxvdyB0aGUgcmVkaXJlY3QgcmVzcG9uc2UgMjAgdGltZXMuCiAg
ICAgICBsZXQgdXJscyA9IFtUQVJHRVRfVVJMXTsKICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwg
MjA7ICsraSkgewotICAgICAgICB1cmxzLnVuc2hpZnQoaG9zdF9pbmZvWydIVFRQU19PUklHSU4n
XSArICcvZHVtbXk/c3c9Z2VuJnVybD0nICsKKyAgICAgICAgdXJscy51bnNoaWZ0KGhvc3RfaW5m
b1snSFRUUFNfT1JJR0lOJ10gKyAnL3NhbXBsZT9zdz1nZW4mdXJsPScgKwogICAgICAgICAgICAg
ICAgICAgICBlbmNvZGVVUklDb21wb25lbnQodXJsc1swXSkpOwogCiAgICAgICB9CkBAIC0zMzks
NyArNDM1LDcgQEAgcHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKICAgICAgIC8v
IG5ldHdvcmsgZXJyb3IuIiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaHR0cC1yZWRp
cmVjdC1mZXRjaAogICAgICAgLy8gU28gZmV0Y2ggY2FuJ3QgZm9sbG93IHRoZSByZWRpcmVjdCBy
ZXNwb25zZSAyMSB0aW1lcy4KICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMjE7ICsraSkgewot
ICAgICAgICB1cmxzLnVuc2hpZnQoaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArICcvZHVtbXk/
c3c9Z2VuJnVybD0nICsKKyAgICAgICAgdXJscy51bnNoaWZ0KGhvc3RfaW5mb1snSFRUUFNfT1JJ
R0lOJ10gKyAnL3NhbXBsZT9zdz1nZW4mdXJsPScgKwogICAgICAgICAgICAgICAgICAgICBlbmNv
ZGVVUklDb21wb25lbnQodXJsc1swXSkpOwogCiAgICAgICB9CkBAIC0zNjAsNyArNDU2LDcgQEAg
cHJvbWlzZV90ZXN0KHQgPT4gc2V0dXBfYW5kX2NsZWFuKCkKIC8vID09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIHByb21pc2VfdGVzdCh0ID0+
IHNldHVwX2FuZF9jbGVhbigpCiAgICAgLnRoZW4oKCkgPT4gewotICAgICAgY29uc3QgdXJsID0g
aG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ2R1bW15P3VybD0nICsK
KyAgICAgIGNvbnN0IHVybCA9IGhvc3RfaW5mb1snSFRUUFNfT1JJR0lOJ10gKyBiYXNlX3BhdGgo
KSArICdzYW1wbGU/dXJsPScgKwogICAgICAgICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50
KFRBUkdFVF9VUkwpICsnJnN3PWZldGNoLXVybCc7CiAgICAgICByZXR1cm4gcmVkaXJlY3RlZF90
ZXN0KHt1cmw6IHVybCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZldGNoX29wdGlv
bjoge30sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1wb2xpY3ktaGVh
ZGVyLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBvbGlj
eS1oZWFkZXIuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGViNjM2ZjBkMDQ5YWZlOWVkNDUwMzIx
NjA3MmM5ZWI3YjEzZDQ1ZGEuLmEyZDQ3MzY3ZDMxNWFmNzM5MjQ0ZTEwMmUyOWJhYmM3OTczMjFl
YzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBvbGljeS1oZWFkZXIu
aHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBvbGlj
eS1oZWFkZXIuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNSBAQAogCi1QQVNTIEluaXRp
YWxpemUgZ2xvYmFsIHN0YXRlIChzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24pCiBQQVNTIFJl
ZmVycmVyIGZvciBhIG1haW4gcmVzb3VyY2UgcmVkaXJlY3RlZCB3aXRoIHJlZmVycmVyLXBvbGlj
eSAob3JpZ2luKSBzaG91bGQgb25seSBoYXZlIG9yaWdpbi4KK1BBU1MgUmVmZXJyZXIgZm9yIGEg
bWFpbiByZXNvdXJjZSByZWRpcmVjdGVkIHdpdGggYSBtb2R1bGUgc2NyaXB0IHdpdGggcmVmZXJy
ZXItcG9saWN5IChvcmlnaW4pIHNob3VsZCBvbmx5IGhhdmUgb3JpZ2luLgogUEFTUyBSZWZlcnJl
ciBmb3IgZmV0Y2ggcmVxdWVzdHMgaW5pdGlhdGVkIGZyb20gYSBzZXJ2aWNlIHdvcmtlciB3aXRo
IHJlZmVycmVyLXBvbGljeSAob3JpZ2luKSBzaG91bGQgb25seSBoYXZlIG9yaWdpbi4KLVBBU1Mg
UmVtb3ZlIHJlZ2lzdHJhdGlvbiBhcyBhIGNsZWFudXAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVmZXJyZXItcG9saWN5LWhlYWRlci5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVmZXJyZXItcG9saWN5LWhlYWRlci5odHRwcy5odG1sCmluZGV4IDA1ZDc3M2UzMTQ0
ZGNhMmM3NjM5ZTRlZjUyMGE1NWQwZWFjZjY3NWQuLjc4NDM0M2U2ZDhmMWZjODY0YWY5MTQ1NTM5
ZDNmM2YyZjBkM2IyNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXBv
bGljeS1oZWFkZXIuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci1w
b2xpY3ktaGVhZGVyLmh0dHBzLmh0bWwKQEAgLTEzLDExICsxMyw5IEBAIHByb21pc2VfdGVzdChh
c3luYyB0ID0+IHsKICAgICBjb25zdCByZWdpc3RyYXRpb24gPQogICAgICAgICBhd2FpdCBzZXJ2
aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBTQ1JJUFQsIFNDT1BFKTsKICAg
ICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2
YXRlZCcpOwotICAgIHByb21pc2VfdGVzdCgoKSA9PiByZWdpc3RyYXRpb24udW5yZWdpc3Rlcigp
LAorICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSwKICAg
ICAgICAgICAgICAgICAgJ1JlbW92ZSByZWdpc3RyYXRpb24gYXMgYSBjbGVhbnVwJyk7Ci19LCAn
SW5pdGlhbGl6ZSBnbG9iYWwgc3RhdGUgKHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbiknKTsK
IAotcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgIGNvbnN0IGZ1bGxfc2NvcGVfdXJsID0g
bmV3IFVSTChTQ09QRSwgbG9jYXRpb24uaHJlZik7CiAgICAgY29uc3QgcmVkaXJlY3RfdG8gPSBg
JHtmdWxsX3Njb3BlX3VybC5ocmVmfT9pZ25vcmU9dHJ1ZWA7CiAgICAgY29uc3QgZnJhbWUgPSBh
d2FpdCB3aXRoX2lmcmFtZSgKQEAgLTMwLDYgKzI4LDMwIEBAIHByb21pc2VfdGVzdChhc3luYyB0
ID0+IHsKICAgICdzaG91bGQgb25seSBoYXZlIG9yaWdpbi4nKTsKIAogcHJvbWlzZV90ZXN0KGFz
eW5jIHQgPT4geworICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9CisgICAgICAgIGF3YWl0IHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQsIFNDUklQVCwgU0NPUEUsIGB7dHlw
ZTogJ21vZHVsZSd9YCk7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9u
Lmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lz
dHJhdGlvbi51bnJlZ2lzdGVyKCksCisgICAgICAgICAgICAgICAgICdSZW1vdmUgcmVnaXN0cmF0
aW9uIGFzIGEgY2xlYW51cCcpOworCisgICAgY29uc3QgZnVsbF9zY29wZV91cmwgPSBuZXcgVVJM
KFNDT1BFLCBsb2NhdGlvbi5ocmVmKTsKKyAgICBjb25zdCByZWRpcmVjdF90byA9IGAke2Z1bGxf
c2NvcGVfdXJsLmhyZWZ9P2lnbm9yZT10cnVlYDsKKyAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdp
dGhfaWZyYW1lKAorICAgICAgICBgJHtTQ09QRX0/cGlwZT1zdGF0dXMoMzAyKXxoZWFkZXIoTG9j
YXRpb24sJHtyZWRpcmVjdF90b30pfGAgKworICAgICAgICAnaGVhZGVyKFJlZmVycmVyLVBvbGlj
eSxvcmlnaW4pJyk7CisgICAgYXNzZXJ0X2VxdWFscyhmcmFtZS5jb250ZW50RG9jdW1lbnQucmVm
ZXJyZXIsCisgICAgICAgICAgICAgICAgICBmdWxsX3Njb3BlX3VybC5vcmlnaW4gKyAnLycpOwor
ICAgIHQuYWRkX2NsZWFudXAoKCkgPT4gZnJhbWUucmVtb3ZlKCkpOworfSwgJ1JlZmVycmVyIGZv
ciBhIG1haW4gcmVzb3VyY2UgcmVkaXJlY3RlZCB3aXRoIGEgbW9kdWxlIHNjcmlwdCB3aXRoIHJl
ZmVycmVyLXBvbGljeSAob3JpZ2luKSAnICsKKyAgICdzaG91bGQgb25seSBoYXZlIG9yaWdpbi4n
KTsKKworcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9
CisgICAgICAgIGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQs
IFNDUklQVCwgU0NPUEUpOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlv
bi5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdp
c3RyYXRpb24udW5yZWdpc3RlcigpLAorICAgICAgICAgICAgICAgICAnUmVtb3ZlIHJlZ2lzdHJh
dGlvbiBhcyBhIGNsZWFudXAnKTsKKwogICAgIGNvbnN0IGhvc3RfaW5mbyA9IGdldF9ob3N0X2lu
Zm8oKTsKICAgICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKFNDT1BFKTsKICAgICBj
b25zdCBjaGFubmVsID0gbmV3IE1lc3NhZ2VDaGFubmVsKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0cHMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVmZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0
dHBzLWV4cGVjdGVkLnR4dAppbmRleCA0ZjI3MWNmN2Y4OWU5M2I2ZDkwMDI3YjA4YTFiN2UzNmMz
NWZlMzY0Li45NmE3NmQ5NmIyZjg1MmJkMGMzZjdjMTk3Njk5OThmNzg5YjhkYzgwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0
cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZmVycmVyLXRvcGxldmVs
LXNjcmlwdC1mZXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSw0IEBACiAKIFBBU1Mg
UmVmZXJyZXIgb2YgdGhlIHRvcC1sZXZlbCBzY3JpcHQgZmV0Y2ggc2hvdWxkIGJlIHRoZSBkb2N1
bWVudCBVUkwKK1BBU1MgUmVmZXJyZXIgb2YgdGhlIG1vZHVsZSBzY3JpcHQgZmV0Y2ggc2hvdWxk
IGJlIHRoZSBkb2N1bWVudCBVUkwKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVm
ZXJyZXItdG9wbGV2ZWwtc2NyaXB0LWZldGNoLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0cHMuaHRtbAppbmRleCAxYTliY2Yz
MjNkMGI5Yjk5MzBjNzBmZDhjYWJlMGNhNTY1M2EyMmVjLi42NWM2MGExMWRiMjBhYWJjZTc2NmI0
YjQxNGEzNWNiM2RkZmZkNDY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWZlcnJl
ci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZWZlcnJlci10b3BsZXZlbC1zY3JpcHQtZmV0Y2guaHR0cHMuaHRtbApAQCAtMzksNCArMzks
MjYgQEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAgIGFzc2VydF9lcXVhbHModXBkYXRl
X2hlYWRlcnNbInJlZmVyZXIiXSwgZXhwZWN0ZWRfcmVmZXJyZXIsICJyZWZlcnJlciBvZiB1cGRh
dGUoKSIpOwogfSwgIlJlZmVycmVyIG9mIHRoZSB0b3AtbGV2ZWwgc2NyaXB0IGZldGNoIHNob3Vs
ZCBiZSB0aGUgZG9jdW1lbnQgVVJMIik7CiAKK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4gewor
ICBjb25zdCBzY3JpcHQgPSAicmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1oZWFkZXJzLXdvcmtlci5w
eSI7CisgIGNvbnN0IHNjb3BlID0gInJlc291cmNlcy9ibGFuay5odG1sIjsKKyAgY29uc3QgaG9z
dF9pbmZvID0gZ2V0X2hvc3RfaW5mbygpOworCisgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0
IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKAorICAgIHQsIHNjcmlwdCwg
c2NvcGUsIHt0eXBlOiAnbW9kdWxlJ30pOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHNlcnZpY2Vf
d29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwg
cmVnaXN0cmF0aW9uLmluc3RhbGxpbmcsICJhY3RpdmF0ZWQiKTsKKworICBjb25zdCBleHBlY3Rl
ZF9yZWZlcnJlciA9IGhvc3RfaW5mb1siSFRUUFNfT1JJR0lOIl0gKyBsb2NhdGlvbi5wYXRobmFt
ZTsKKworICAvLyBDaGVjayByZWZlcnJlciBmb3IgcmVnaXN0ZXIoKS4KKyAgY29uc3QgcmVnaXN0
ZXJfaGVhZGVycyA9IGF3YWl0IGdldF90b3BsZXZlbF9zY3JpcHRfaGVhZGVycyhyZWdpc3RyYXRp
b24uYWN0aXZlKTsKKyAgYXNzZXJ0X2VxdWFscyhyZWdpc3Rlcl9oZWFkZXJzWyJyZWZlcmVyIl0s
IGV4cGVjdGVkX3JlZmVycmVyLCAicmVmZXJyZXIgb2YgcmVnaXN0ZXIoKSIpOworCisgIC8vIENo
ZWNrIHJlZmVycmVyIGZvciB1cGRhdGUoKS4KKyAgYXdhaXQgcmVnaXN0cmF0aW9uLnVwZGF0ZSgp
OworICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgImlu
c3RhbGxlZCIpOworICBjb25zdCB1cGRhdGVfaGVhZGVycyA9IGF3YWl0IGdldF90b3BsZXZlbF9z
Y3JpcHRfaGVhZGVycyhyZWdpc3RyYXRpb24ud2FpdGluZyk7CisgIGFzc2VydF9lcXVhbHModXBk
YXRlX2hlYWRlcnNbInJlZmVyZXIiXSwgZXhwZWN0ZWRfcmVmZXJyZXIsICJyZWZlcnJlciBvZiB1
cGRhdGUoKSIpOworfSwgIlJlZmVycmVyIG9mIHRoZSBtb2R1bGUgc2NyaXB0IGZldGNoIHNob3Vs
ZCBiZSB0aGUgZG9jdW1lbnQgVVJMIik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1iYXNpYy5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVnaXN0cmF0aW9uLWJhc2ljLmh0dHBzLmh0bWwKaW5kZXggMTQxMWE1ZDQ4Y2Q2OWIwNWQy
NzdmNWNmMDBhMWMzYzJmZmY4ODM4NS4uNzU5YjQyNDRhMjY5YjhjMzY0ZTZkMGQ3ZWI0OWM0MmYw
YmE5YTE4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLWJhc2lj
Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLWJhc2ljLmh0
dHBzLmh0bWwKQEAgLTMsNyArMywzNyBAQAogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Ny
ZXBvcnQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMu
c3ViLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRl
c3RzLWJhc2ljLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+Ci1yZWdpc3RyYXRpb25fdGVzdHNfYmFz
aWMoKHNjcmlwdCwgb3B0aW9ucykgPT4gbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIo
c2NyaXB0LCBvcHRpb25zKSwgdHJ1ZSk7Citjb25zdCBzY3JpcHQgPSAncmVzb3VyY2VzL3JlZ2lz
dHJhdGlvbi13b3JrZXIuanMnOworCitwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgY29u
c3Qgc2NvcGUgPSAncmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi9ub3JtYWwnOworICBjb25zdCByZWdp
c3RyYXRpb24gPSBhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQs
IHtzY29wZX0pOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVy
KCkpOworICBhc3NlcnRfdHJ1ZSgKKyAgICByZWdpc3RyYXRpb24gaW5zdGFuY2VvZiBTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uLAorICAgICdTdWNjZXNzZnVsbHkgcmVnaXN0ZXJlZC4nKTsKK30s
ICdSZWdpc3RlcmluZyBub3JtYWwgc2NvcGUnKTsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9
PiB7CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24vc2NvcGUtd2l0aC1m
cmFnbWVudCNyZWYnOworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBuYXZpZ2F0b3Iuc2Vy
dmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQsIHtzY29wZX0pOworICB0LmFkZF9jbGVhbnVwKCgp
ID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCkpOworICBhc3NlcnRfdHJ1ZSgKKyAgICByZWdp
c3RyYXRpb24gaW5zdGFuY2VvZiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLAorICAgICdTdWNj
ZXNzZnVsbHkgcmVnaXN0ZXJlZC4nKTsKKyAgYXNzZXJ0X2VxdWFscygKKyAgICByZWdpc3RyYXRp
b24uc2NvcGUsCisgICAgbm9ybWFsaXplVVJMKCdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uL3Njb3Bl
LXdpdGgtZnJhZ21lbnQnKSwKKyAgICAnQSBmcmFnbWVudCBzaG91bGQgYmUgcmVtb3ZlZCBmcm9t
IHNjb3BlJyk7Cit9LCAnUmVnaXN0ZXJpbmcgc2NvcGUgd2l0aCBmcmFnbWVudCcpOworCitwcm9t
aXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzLyc7Cisg
IGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lz
dGVyKHNjcmlwdCwge3Njb3BlfSkKKyAgdC5hZGRfY2xlYW51cCgoKSA9PiByZWdpc3RyYXRpb24u
dW5yZWdpc3RlcigpKTsKKyAgYXNzZXJ0X3RydWUoCisgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNl
b2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwKKyAgICAnU3VjY2Vzc2Z1bGx5IHJlZ2lzdGVy
ZWQuJyk7Cit9LCAnUmVnaXN0ZXJpbmcgc2FtZSBzY29wZSBhcyB0aGUgc2NyaXB0IGRpcmVjdG9y
eScpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRp
b24tc2NoZWR1bGUtam9iLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
Z2lzdHJhdGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGIxNjliY2Yx
ZGM4NjA0ODU1MTFjZDdlNGZhZTMwNjNhYmQyZDI5ZDMuLjkyNTFiNDczZTE1MTIwZjJiNmU5MWI5
NmE3NjI1YjA0ODYwNzIxZWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJh
dGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3JlZ2lzdHJhdGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDQg
KzEsNSBAQAogCi1GQUlMIGRpZmZlcmVudCBzY3JpcHRVUkwgYW5kIHVwZGF0ZVZpYUNhY2hlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogbnVsbCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdyZWdpc3RyYXRpb24uaW5z
dGFsbGluZy5zY3JpcHRVUkwnKSIKLUZBSUwgZGlmZmVyZW50IHR5cGUgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgKHN0cmluZykgImNsYXNzaWMiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVk
CitQQVNTIGRpZmZlcmVudCBzY3JpcHRVUkwKK1BBU1MgZGlmZmVyZW50IHVwZGF0ZVZpYUNhY2hl
CitQQVNTIGRpZmZlcmVudCB0eXBlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
Z2lzdHJhdGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
Z2lzdHJhdGlvbi1zY2hlZHVsZS1qb2IuaHR0cHMuaHRtbAppbmRleCAxODU4OWUwYWEwYjMyZTEz
MDkzNGE2NWIxYjA2NWQ1YzdmNzllMzZlLi4yNWQ3NThlZThmMGUyNjQ1OTIxOGM3MzU5ZmFmN2Qz
ODY2YjMxM2NmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2No
ZWR1bGUtam9iLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9u
LXNjaGVkdWxlLWpvYi5odHRwcy5odG1sCkBAIC0xLDkgKzEsMTEgQEAKIDwhRE9DVFlQRSBodG1s
PgogPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPG1ldGEgbmFtZT10aW1lb3V0IGNvbnRlbnQ9bG9u
Zz4KIDx0aXRsZT5TZXJ2aWNlIFdvcmtlcjogU2NoZWR1bGUgSm9iIGFsZ29yaXRobTwvdGl0bGU+
CiA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0icmVzb3VyY2VzL3Rlc3RoYXJuZXNzLWhlbHBlcnMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQ+CiAvLyBUZXN0cyBmb3IgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI3Nj
aGVkdWxlLWpvYi1hbGdvcml0aG0KIC8vIE5vbi1lcXVpdmFsZW50IHJlZ2lzdGVyIGpvYnMgc2hv
dWxkIG5vdCBiZSBjb2FsZXNjZWQuCkBAIC0yMSw3ICsyMywyNSBAQCBmdW5jdGlvbiBhYnNvbHV0
ZV91cmwodXJsKSB7CiAgIHJldHVybiBuZXcgVVJMKHVybCwgc2VsZi5sb2NhdGlvbikudG9TdHJp
bmcoKTsKIH0KIAotLy8gVGVzdCBzY3JpcHRVUkwgYW5kIHVwZGF0ZVZpYUNhY2hlLgorLy8gVGVz
dCB0aGF0IGEgY2hhbmdlIHRvIGBzY3JpcHRgIHN0YXJ0cyBhIG5ldyByZWdpc3RlciBqb2IuCitw
cm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGF3YWl0IGNsZWFudXAoKTsKKyAgdC5hZGRfY2xl
YW51cChjbGVhbnVwKTsKKworICAvLyBNYWtlIGEgcmVnaXN0cmF0aW9uLgorICBjb25zdCByZWdp
c3RyYXRpb24gPSBhd2FpdAorICAgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIo
c2NyaXB0MSwge3Njb3BlfSk7CisKKyAgLy8gU2NoZWR1bGUgdHdvIG1vcmUgcmVnaXN0ZXIgam9i
cy4KKyAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0MSwge3Njb3BlfSk7
CisgIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDIsIHtzY29w
ZX0pOworCisgIC8vIFRoZSBqb2JzIHNob3VsZCBub3QgaGF2ZSBiZWVuIGNvYWxlc2NlZC4KKyAg
Y29uc3Qgd29ya2VyID0gZ2V0X25ld2VzdF93b3JrZXIocmVnaXN0cmF0aW9uKTsKKyAgYXNzZXJ0
X2VxdWFscyh3b3JrZXIuc2NyaXB0VVJMLCBhYnNvbHV0ZV91cmwoc2NyaXB0MikpOworfSwgJ2Rp
ZmZlcmVudCBzY3JpcHRVUkwnKTsKKworLy8gVGVzdCB0aGF0IGEgY2hhbmdlIHRvIGB1cGRhdGVW
aWFDYWNoZWAgc3RhcnRzIGEgbmV3IHJlZ2lzdGVyIGpvYi4KIHByb21pc2VfdGVzdChhc3luYyB0
ID0+IHsKICAgYXdhaXQgY2xlYW51cCgpOwogICB0LmFkZF9jbGVhbnVwKGNsZWFudXApOwpAQCAt
MzEsMzcgKzUxLDU3IEBAIHByb21pc2VfdGVzdChhc3luYyB0ID0+IHsKICAgICAgIG5hdmlnYXRv
ci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtzY29wZX0pOwogICBhc3NlcnRfZXF1
YWxzKHJlZ2lzdHJhdGlvbi51cGRhdGVWaWFDYWNoZSwgJ2ltcG9ydHMnKTsKIAotICAvLyBTY2hl
ZHVsZSBzZXZlcmFsIHJlZ2lzdGVyIGpvYnMuCisgIC8vIFNjaGVkdWxlIHR3byBtb3JlIHJlZ2lz
dGVyIGpvYnMuCiAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtz
Y29wZX0pOwotICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQyLCB7c2Nv
cGV9KTsKLSAgYXdhaXQgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0MiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3Njb3BlLCB1cGRhdGVW
aWFDYWNoZTogJ25vbmUnfSk7CisgIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lz
dGVyKHNjcmlwdDEsIHtzY29wZSwKKyAgICAgIHVwZGF0ZVZpYUNhY2hlOiAnbm9uZSd9KTsKIAot
ICAvLyBOb25lIG9mIHRoZSBjaGFuZ2VzIHNob3VsZCBoYXZlIGJlZW4gY29hbGVzY2VkLgotICBh
c3NlcnRfZXF1YWxzKHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLnNjcmlwdFVSTCwgYWJzb2x1dGVf
dXJsKHNjcmlwdDIpKTsKKyAgLy8gVGhlIGpvYnMgc2hvdWxkIG5vdCBoYXZlIGJlZW4gY29hbGVz
Y2VkLgogICBhc3NlcnRfZXF1YWxzKHJlZ2lzdHJhdGlvbi51cGRhdGVWaWFDYWNoZSwgJ25vbmUn
KTsKLX0sICdkaWZmZXJlbnQgc2NyaXB0VVJMIGFuZCB1cGRhdGVWaWFDYWNoZScpOworfSwgJ2Rp
ZmZlcmVudCB1cGRhdGVWaWFDYWNoZScpOwogCi0vLyBUZXN0IHx0eXBlfCBpbiBhbm90aGVyIHRl
c3QgY2FzZSBiZWNhdXNlIG1vc3QgYnJvd3NlcnMgZG9uJ3Qgc3VwcG9ydCBpdC4KKy8vIFRlc3Qg
dGhhdCBhIGNoYW5nZSB0byBgdHlwZWAgc3RhcnRzIGEgbmV3IHJlZ2lzdGVyIGpvYi4KIHByb21p
c2VfdGVzdChhc3luYyB0ID0+IHsKLSAgY29uc3Qgc2NyaXB0MSA9ICdyZXNvdXJjZXMvZW1wdHku
anMnOwotICBjb25zdCBzY3JpcHQyID0gJ3Jlc291cmNlcy9lbXB0eS5qcz9jaGFuZ2UnOwotCiAg
IGF3YWl0IGNsZWFudXAoKTsKICAgdC5hZGRfY2xlYW51cChjbGVhbnVwKTsKIAorICBjb25zdCBz
Y3JpcHRGb3JUeXBlQ2hlY2sgPSAncmVzb3VyY2VzL3R5cGUtY2hlY2std29ya2VyLmpzJzsKICAg
Ly8gQ2hlY2sgZGVmYXVsdHMuCiAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0Ci0gICAgICBu
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQxLCB7c2NvcGV9KTsKLSAgYXNz
ZXJ0X2VxdWFscyhyZWdpc3RyYXRpb24uaW5zdGFsbGluZy50eXBlLCAnY2xhc3NpYycpOworICAg
ICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0Rm9yVHlwZUNoZWNrLCB7
c2NvcGV9KTsKIAotICAvLyBTY2hlZHVsZSBzZXZlcmFsIHJlZ2lzdGVyIGpvYnMuCi0gIG5hdmln
YXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlwdDEsIHtzY29wZX0pOwotICBuYXZpZ2F0
b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcihzY3JpcHQyLCB7c2NvcGV9KTsKLSAgYXdhaXQgbmF2
aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0Miwge3Njb3BlLCB0eXBlOiAnbW9k
dWxlJ30pOworICBsZXQgd29ya2VyX3R5cGUgPSBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkg
PT4geworICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLm9ubWVzc2FnZSA9IChldmVudCkgPT4g
eworICAgICAgcmVzb2x2ZShldmVudC5kYXRhKTsKKyAgICB9OworICAgIC8vIFRoZSBqb2JzIHNo
b3VsZCBub3QgaGF2ZSBiZWVuIGNvYWxlc2NlZC4gZ2V0X25ld2VzdF93b3JrZXIoKSBoZWxwcyB0
aGUKKyAgICAvLyB0ZXN0IGZhaWwgd2l0aCBzdGFibGUgb3V0cHV0IG9uIGJyb3dlcnMgdGhhdCBp
bmNvcnJlY3RseSBjb2FsZXNjZQorICAgIC8vIHJlZ2lzdGVyIGpvYnMsIHNpbmNlIHRoZW4gc29t
ZXRpbWVzIHJlZ2lzdHJhdGlvbiBpcyBub3QgYSBuZXcgd29ya2VyIGFzCisgICAgLy8gZXhwZWN0
ZWQuCisgICAgY29uc3Qgd29ya2VyID0gZ2V0X25ld2VzdF93b3JrZXIocmVnaXN0cmF0aW9uKTsK
KyAgICAvLyBUaGUgYXJndW1lbnQgb2YgcG9zdE1lc3NhZ2UgZG9lc24ndCBtYXR0ZXIgZm9yIHRo
aXMgY2FzZS4KKyAgICB3b3JrZXIucG9zdE1lc3NhZ2UoJycpOworICB9KTsKKworICBhc3NlcnRf
ZXF1YWxzKHdvcmtlcl90eXBlLCAnY2xhc3NpYycpOworCisgIC8vIFNjaGVkdWxlIHR3byBtb3Jl
IHJlZ2lzdGVyIGpvYnMuCisgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKHNjcmlw
dEZvclR5cGVDaGVjaywge3Njb3BlfSk7CisgIGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2Vy
LnJlZ2lzdGVyKHNjcmlwdEZvclR5cGVDaGVjaywge3Njb3BlLCB0eXBlOiAnbW9kdWxlJ30pOwor
CisgIHdvcmtlcl90eXBlID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICBu
YXZpZ2F0b3Iuc2VydmljZVdvcmtlci5vbm1lc3NhZ2UgPSAoZXZlbnQpID0+IHsKKyAgICAgIHJl
c29sdmUoZXZlbnQuZGF0YSk7CisgICAgfTsKKyAgICAvLyBUaGUgam9icyBzaG91bGQgbm90IGhh
dmUgYmVlbiBjb2FsZXNjZWQuIGdldF9uZXdlc3Rfd29ya2VyKCkgaGVscHMgdGhlCisgICAgLy8g
dGVzdCBmYWlsIHdpdGggc3RhYmxlIG91dHB1dCBvbiBicm93ZXJzIHRoYXQgaW5jb3JyZWN0bHkg
Y29hbGVzY2UKKyAgICAvLyByZWdpc3RlciBqb2JzLCBzaW5jZSB0aGVuIHNvbWV0aW1lcyByZWdp
c3RyYXRpb24gaXMgbm90IGEgbmV3IHdvcmtlciBhcworICAgIC8vIGV4cGVjdGVkLgorICAgIGNv
bnN0IHdvcmtlciA9IGdldF9uZXdlc3Rfd29ya2VyKHJlZ2lzdHJhdGlvbik7CisgICAgLy8gVGhl
IGFyZ3VtZW50IG9mIHBvc3RNZXNzYWdlIGRvZXNuJ3QgbWF0dGVyIGZvciB0aGlzIGNhc2UuCisg
ICAgd29ya2VyLnBvc3RNZXNzYWdlKCcnKTsKKyAgfSk7CiAKLSAgLy8gTm9uZSBvZiB0aGUgY2hh
bmdlcyBzaG91bGQgaGF2ZSBiZWVuIGNvYWxlc2NlZC4KLSAgYXNzZXJ0X2VxdWFscyhyZWdpc3Ry
YXRpb24uaW5zdGFsbGluZy5zY3JpcHRVUkwsIGFic29sdXRlX3VybChzY3JpcHQyKSk7Ci0gIGFz
c2VydF9lcXVhbHMocmVnaXN0cmF0aW9uLmluc3RhbGxpbmcudHlwZSwgJ21vZHVsZScpOworICBh
c3NlcnRfZXF1YWxzKHdvcmtlcl90eXBlLCAnbW9kdWxlJyk7CiB9LCAnZGlmZmVyZW50IHR5cGUn
KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9u
LXNjb3BlLW1vZHVsZS1zdGF0aWMtaW1wb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2ViNTkzMjljMDg1ODQwYjk1NTE4YzZkZTFiODBkYzY1
MWJmYzkxMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlv
bi1zY29wZS1tb2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw1IEBACisKK1BBU1MgaW1wb3J0ZWQtbW9kdWxlLXNjcmlwdC5qcyB3b3JrcyB3aGVuIHVzZWQg
YXMgdG9wLWxldmVsCitQQVNTIHN0YXRpYyBpbXBvcnRzIHRvIG91dHNpZGUgcGF0aCByZXN0cmlj
dGlvbiBzaG91bGQgYmUgYWxsb3dlZAorUEFTUyBzdGF0aWMgaW1wb3J0cyByZWRpcmVjdGluZyB0
byBvdXRzaWRlIHBhdGggcmVzdHJpY3Rpb24gc2hvdWxkIGJlIGFsbG93ZWQKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjb3BlLW1vZHVsZS1zdGF0aWMtaW1w
b3J0Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NvcGUtbW9k
dWxlLXN0YXRpYy1pbXBvcnQuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41Yzc1Mjk1YWVkMWNkOTRj
MTM0OWRjMjUwMTA4MDE1MzRiZDk4NjQ0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVnaXN0cmF0aW9uLXNjb3BlLW1vZHVsZS1zdGF0aWMtaW1wb3J0Lmh0dHBzLmh0bWwK
QEAgLTAsMCArMSw0MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8dGl0bGU+U2VydmljZSBXb3JrZXI6
IFN0YXRpYyBpbXBvcnRzIGZyb20gbW9kdWxlIHRvcC1sZXZlbCBzY3JpcHRzIHNob3VsZG4ndCBi
ZSBhZmZlY3RlZCBieSB0aGUgc2VydmljZSB3b3JrZXIgc2NyaXB0IHBhdGggcmVzdHJpY3Rpb248
L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQ+CisvLyBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jcGF0aC1y
ZXN0cmljdGlvbgorLy8gaXMgYXBwbGllZCB0byB0b3AtbGV2ZWwgc2NyaXB0cyBpbgorLy8gaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI3VwZGF0ZS1hbGdvcml0aG0KKy8vIGJ1
dCBub3QgdG8gc3VibW9kdWxlcyBpbXBvcnRlZCBmcm9tIHRvcC1sZXZlbCBzY3JpcHRzLgorYXN5
bmMgZnVuY3Rpb24gcnVuVGVzdCh0LCBzY3JpcHQsIHNjb3BlKSB7CisgIGNvbnN0IHNjcmlwdF91
cmwgPSBuZXcgVVJMKHNjcmlwdCwgbG9jYXRpb24uaHJlZik7CisgIGF3YWl0IHNlcnZpY2Vfd29y
a2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpOworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdAor
ICAgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCB7dHlwZTogJ21v
ZHVsZSd9KTsKKyAgdC5hZGRfY2xlYW51cChfID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCkp
OworICBjb25zdCBtc2cgPSBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICByZWdp
c3RyYXRpb24uaW5zdGFsbGluZy5wb3N0TWVzc2FnZSgncGluZycpOworICAgIG5hdmlnYXRvci5z
ZXJ2aWNlV29ya2VyLm9ubWVzc2FnZSA9IHJlc29sdmU7CisgIH0pOworICBhc3NlcnRfZXF1YWxz
KG1zZy5kYXRhLCAncG9uZycpOworfQorCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgICAg
YXdhaXQgcnVuVGVzdCh0LAorICAgICAgICAncmVzb3VyY2VzL3Njb3BlMi9pbXBvcnRlZC1tb2R1
bGUtc2NyaXB0LmpzJywKKyAgICAgICAgJ3Jlc291cmNlcy9zY29wZTIvJyk7CisgIH0sICdpbXBv
cnRlZC1tb2R1bGUtc2NyaXB0LmpzIHdvcmtzIHdoZW4gdXNlZCBhcyB0b3AtbGV2ZWwnKTsKKwor
cHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4geworICAgIGF3YWl0IHJ1blRlc3QodCwKKyAgICAgICAg
J3Jlc291cmNlcy9zY29wZTEvbW9kdWxlLXdvcmtlci1pbXBvcnRpbmctc2NvcGUyLmpzJywKKyAg
ICAgICAgJ3Jlc291cmNlcy9zY29wZTEvJyk7CisgIH0sICdzdGF0aWMgaW1wb3J0cyB0byBvdXRz
aWRlIHBhdGggcmVzdHJpY3Rpb24gc2hvdWxkIGJlIGFsbG93ZWQnKTsKKworcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4geworICAgIGF3YWl0IHJ1blRlc3QodCwKKyAgICAgICAncmVzb3VyY2VzL3Nj
b3BlMS9tb2R1bGUtd29ya2VyLWltcG9ydGluZy1yZWRpcmVjdC10by1zY29wZTIuanMnLAorICAg
ICAgICdyZXNvdXJjZXMvc2NvcGUxLycpOworICB9LCAnc3RhdGljIGltcG9ydHMgcmVkaXJlY3Rp
bmcgdG8gb3V0c2lkZSBwYXRoIHJlc3RyaWN0aW9uIHNob3VsZCBiZSBhbGxvd2VkJyk7Cis8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQt
bW9kdWxlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlv
bi1zY3JpcHQtbW9kdWxlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OTY2NTdjZWI4
N2E0YzY1ZmRkYTUyYzMxZWRiZmZjMjRmOWE4YjVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjcmlwdC1tb2R1bGUuaHR0cHMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTIgQEAKKworUEFTUyBSZWdpc3RlcmluZyBpbnZhbGlkIGNodW5rZWQgZW5j
b2Rpbmcgc2NyaXB0CitQQVNTIFJlZ2lzdGVyaW5nIGludmFsaWQgY2h1bmtlZCBlbmNvZGluZyBz
Y3JpcHQgd2l0aCBmbHVzaAorUEFTUyBSZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIHBhcnNl
IGVycm9yCitQQVNTIFJlZ2lzdGVyaW5nIHNjcmlwdCBpbmNsdWRpbmcgdW5kZWZpbmVkIGVycm9y
CitQQVNTIFJlZ2lzdGVyaW5nIHNjcmlwdCBpbmNsdWRpbmcgdW5jYXVnaHQgZXhjZXB0aW9uCitG
QUlMIFJlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIHRvcC1sZXZlbCBhd2FpdCBhc3NlcnRfdW5yZWFj
aGVkOiBTaG91bGQgaGF2ZSByZWplY3RlZDogUmVnaXN0cmF0aW9uIG9mIHNjcmlwdCB3aXRoIHRv
cC1sZXZlbCBhd2FpdCBzaG91bGQgZmFpbC4gUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNT
IFJlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yCitQQVNT
IFJlZ2lzdGVyaW5nIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yIGFuZCB0
b3AtbGV2ZWwgYXdhaXQKK1BBU1MgUmVnaXN0ZXJpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdAorUEFT
UyBSZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIGNhdWdodCBleGNlcHRpb24KKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjcmlwdC1tb2R1bGUuaHR0cHMu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3JpcHQtbW9kdWxlLmh0dHBz
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOWUzOWExZjc1YjI3ZGU0OTJkNWViMzg0MmFhYTI1NGQyZjY2MjY4
NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY3Jp
cHQtbW9kdWxlLmh0dHBzLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8
dGl0bGU+U2VydmljZSBXb3JrZXI6IFJlZ2lzdHJhdGlvbiAobW9kdWxlIHNjcmlwdCk8L3RpdGxl
PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLXNjcmlwdC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0PgorcmVnaXN0cmF0aW9uX3Rlc3RzX3NjcmlwdCgKKyAgICAoc2NyaXB0LCBvcHRp
b25zKSA9PiBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcigKKyAgICAgICAgc2NyaXB0
LAorICAgICAgICBPYmplY3QuYXNzaWduKHt0eXBlOiAnbW9kdWxlJ30sIG9wdGlvbnMpKSwKKyAg
ICAnbW9kdWxlJyk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
Z2lzdHJhdGlvbi1zY3JpcHQuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJh
dGlvbi1zY3JpcHQuaHR0cHMuaHRtbAppbmRleCBmNzBiOWU2NzYyNjA2MzdjNWQxMGJiOGIzNmU2
YmFjYjZmNWIzYjZiLi5mMWU1MWZkMjY1ZTIxMjcxNTM3NzY5MzQzZTBlM2UwNTAzMmU3NmI3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tc2NyaXB0Lmh0dHBzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXNjcmlwdC5odHRwcy5odG1s
CkBAIC01LDUgKzUsOCBAQAogPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3Vi
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3Rz
LXNjcmlwdC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgotcmVnaXN0cmF0aW9uX3Rlc3RzX3Njcmlw
dCgoc2NyaXB0LCBvcHRpb25zKSA9PiBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3Rlcihz
Y3JpcHQsIG9wdGlvbnMpKTsKK3JlZ2lzdHJhdGlvbl90ZXN0c19zY3JpcHQoCisgICAgKHNjcmlw
dCwgb3B0aW9ucykgPT4gbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIucmVnaXN0ZXIoc2NyaXB0LCBv
cHRpb25zKSwKKyAgICAnY2xhc3NpYycKKyk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLXVwZGF0ZXZpYWNhY2hlLmh0dHBzLmh0bWwKaW5k
ZXggYjdiMmI0MGQ3NTZhMjFkYzE3ODczMGRiYmQ3ZmE1NjFhYzlmNzIzYS4uYjJmNmJiYzZmODQ5
YzdlODA1MWYxYWVkYzlmNDc2YzQ3ZDVhMzlhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVnaXN0cmF0aW9uLXVwZGF0ZXZpYWNhY2hlLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVnaXN0cmF0aW9uLXVwZGF0ZXZpYWNhY2hlLmh0dHBzLmh0bWwKQEAgLTE0NSw3
ICsxNDUsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgLy8gV2FpdCBmb3IgYWxsIHJlZ2lzdHJh
dGlvbiByZWxhdGVkIHRhc2tzIG9uIHxmcmFtZXwgdG8gY29tcGxldGUuCi0gICAgICAgIGF3YWl0
IHdhaXRfZm9yX2FjdGl2YXRpb25fb25fZHVtbXlfc2NvcGUodCwgZnJhbWUuY29udGVudFdpbmRv
dyk7CisgICAgICAgIGF3YWl0IHdhaXRfZm9yX2FjdGl2YXRpb25fb25fc2FtcGxlX3Njb3BlKHQs
IGZyYW1lLmNvbnRlbnRXaW5kb3cpOwogICAgICAgICAvLyBUaGUgdXBkYXRlVmlhQ2FjaGUgY2hh
bmdlIHNob3VsZCBoYXZlIGJlZW4gcHJvcGFnYXRlZCB0byBhbGwKICAgICAgICAgLy8gY29ycmVz
cG9uZGluZyBKUyByZWdpc3RyYXRpb24gb2JqZWN0cy4KICAgICAgICAgYXNzZXJ0X2VxdWFscyhy
ZWdfaW5fZnJhbWUudXBkYXRlVmlhQ2FjaGUsIGV4cGVjdGVkX3VwZGF0ZVZpYUNhY2hlLCAicmVn
X2luX2ZyYW1lLnVwZGF0ZVZpYUNhY2hlIHVwZGF0ZWQiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlLXRpbWluZy5zdWIuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlLXRpbWluZy5zdWIuaHR0cHMuaHRtbAppbmRleCAyYTM2NjA4N2NkMzVlNzkz
YTk1NDRlOTczMjdiYjNmNWVkN2IzMDkxLi45ODA4YWU1YWUxYmVkMDZmNTMwMzI0MGI3NzJlNGVh
ZDBkMzE3MTM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZS10aW1pbmcu
c3ViLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2UtdGltaW5nLnN1
Yi5odHRwcy5odG1sCkBAIC00LDEzOCArNCwxNDcgQEAKIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
dGVzdC1oZWxwZXJzLnN1Yi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogZnVuY3Rpb24gcmVzb3Vy
Y2VVcmwocGF0aCkgewotICAgIHJldHVybiAiaHR0cHM6Ly97e2hvc3R9fTp7e3BvcnRzW2h0dHBz
XVswXX19IiArIGJhc2VfcGF0aCgpICsgcGF0aDsKKyAgcmV0dXJuICJodHRwczovL3t7aG9zdH19
Ont7cG9ydHNbaHR0cHNdWzBdfX0iICsgYmFzZV9wYXRoKCkgKyBwYXRoOwogfQogCiBmdW5jdGlv
biBjcm9zc09yaWdpblVybChwYXRoKSB7Ci0gICAgcmV0dXJuICJodHRwczovL3t7aG9zdHNbYWx0
XVtdfX06e3twb3J0c1todHRwc11bMF19fSIgKyBiYXNlX3BhdGgoKSArIHBhdGg7CisgIHJldHVy
biAiaHR0cHM6Ly97e2hvc3RzW2FsdF1bXX19Ont7cG9ydHNbaHR0cHNdWzBdfX0iICsgYmFzZV9w
YXRoKCkgKyBwYXRoOwogfQogCisvLyBWZXJpZnkgZXhpc3RhbmNlIG9mIGEgUGVyZm9ybWFuY2VF
bnRyeSBhbmQgdGhlIG9yZGVyIGJldHdlZW4gdGhlIHRpbWluZ3MuCisvLworLy8gfG9wdGlvbnN8
IGhhcyB0aGVzZSBwcm9wZXJ0aWVzOgorLy8gcGVyZm9ybWFuY2U6IFBlcmZvcm1hbmNlIGludGVy
ZmFjZSB0byB2ZXJpZnkgZXhpc3RhbmNlIG9mIHRoZSBlbnRyeS4KKy8vIHJlc291cmNlOiB0aGUg
cGF0aCB0byB0aGUgcmVzb3VyY2UuCisvLyBtb2RlOiAnY3Jvc3Mtb3JpZ2luJyB0byBsb2FkIHRo
ZSByZXNvdXJjZSBmcm9tIHRoaXJkLXBhcnR5IG9yaWdpbi4KKy8vIGRlc2NyaXB0aW9uOiB0aGUg
ZGVzY3JpcHRpb24gcGFzc2VkIHRvIGVhY2ggYXNzZXJ0aW9uLgorLy8gc2hvdWxkX25vX3BlcmZv
cm1hbmNlX2VudHJ5OiBubyBlbnRyeSBpcyBleHBlY3RlZCB0byBiZSByZWNvcmRlZCB3aGVuIGl0
J3MKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZS4KIGZ1bmN0aW9uIHZlcmlm
eShvcHRpb25zKSB7Ci0gICAgY29uc3QgdXJsID0gb3B0aW9ucy5tb2RlID09PSAnY3Jvc3Mtb3Jp
Z2luJyA/IGNyb3NzT3JpZ2luVXJsKG9wdGlvbnMucmVzb3VyY2UpCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDogcmVzb3VyY2VVcmwob3B0aW9ucy5yZXNvdXJjZSk7Ci0g
ICAgY29uc3QgZW50cnlMaXN0ID0gb3B0aW9ucy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1l
KHVybCwgJ3Jlc291cmNlJyk7Ci0gICAgaWYgKG9wdGlvbnMuc2hvdWxkX25vX3BlcmZvcm1hbmNl
X2VudHJ5KSB7Ci0gICAgICAgIC8vIFRoZSBwZXJmb3JtYW5jZSB0aW1lbGluZSBtYXkgbm90IGhh
dmUgYW4gZW50cnkgZm9yIGEgcmVzb3VyY2UKLSAgICAgICAgLy8gd2hpY2ggZmFpbGVkIHRvIGxv
YWQuCi0gICAgICAgIGFzc2VydF9lcXVhbHMoZW50cnlMaXN0Lmxlbmd0aCwgMCwgb3B0aW9ucy5k
ZXNjcmlwdGlvbik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgYXNzZXJ0X2VxdWFscyhl
bnRyeUxpc3QubGVuZ3RoLCAxLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICBjb25zdCBlbnRy
eSA9IGVudHJ5TGlzdFswXTsKLSAgICBhc3NlcnRfZXF1YWxzKGVudHJ5LmVudHJ5VHlwZSwgJ3Jl
c291cmNlJywgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihl
bnRyeS53b3JrZXJTdGFydCwgMCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0gICAgYXNzZXJ0X2dy
ZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS53b3JrZXJTdGFydCwgZW50cnkuc3RhcnRUaW1lLCBvcHRp
b25zLmRlc2NyaXB0aW9uKTsKLSAgICBhc3NlcnRfbGVzc190aGFuX2VxdWFsKGVudHJ5Lndvcmtl
clN0YXJ0LCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICBpZiAo
b3B0aW9ucy5tb2RlID09PSAnY3Jvc3Mtb3JpZ2luJykgewotICAgICAgYXNzZXJ0X2VxdWFscyhl
bnRyeS5yZXNwb25zZVN0YXJ0LCAwLCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW5fZXF1YWwoZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LmZldGNoU3RhcnQs
IG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIH0gZWxzZSB7Ci0gICAgICBhc3NlcnRfZ3JlYXRl
cl90aGFuX2VxdWFsKGVudHJ5LnJlc3BvbnNlU3RhcnQsIGVudHJ5LmZldGNoU3RhcnQsIG9wdGlv
bnMuZGVzY3JpcHRpb24pOwotICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS5y
ZXNwb25zZUVuZCwgZW50cnkucmVzcG9uc2VTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7Ci0g
ICAgfQotICAgIGFzc2VydF9ncmVhdGVyX3RoYW4oZW50cnkucmVzcG9uc2VFbmQsIGVudHJ5LmZl
dGNoU3RhcnQsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIGFzc2VydF9ncmVhdGVyX3RoYW4o
ZW50cnkuZHVyYXRpb24sIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIGlmIChvcHRpb25z
LnJlc291cmNlLmluZGV4T2YoJ3JlZGlyZWN0LnB5JykgIT0gLTEpIHsKLSAgICAgICAgYXNzZXJ0
X2xlc3NfdGhhbl9lcXVhbChlbnRyeS53b3JrZXJTdGFydCwgZW50cnkucmVkaXJlY3RTdGFydCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmRlc2NyaXB0aW9uKTsKLSAg
ICB9IGVsc2UgewotICAgICAgICBhc3NlcnRfZXF1YWxzKGVudHJ5LnJlZGlyZWN0U3RhcnQsIDAs
IG9wdGlvbnMuZGVzY3JpcHRpb24pOwotICAgIH0KKyAgY29uc3QgdXJsID0gb3B0aW9ucy5tb2Rl
ID09PSAnY3Jvc3Mtb3JpZ2luJyA/IGNyb3NzT3JpZ2luVXJsKG9wdGlvbnMucmVzb3VyY2UpCisg
ICAgOiByZXNvdXJjZVVybChvcHRpb25zLnJlc291cmNlKTsKKyAgY29uc3QgZW50cnlMaXN0ID0g
b3B0aW9ucy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKHVybCwgJ3Jlc291cmNlJyk7Cisg
IGlmIChvcHRpb25zLnNob3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeSkgeworICAgIC8vIFRoZSBw
ZXJmb3JtYW5jZSB0aW1lbGluZSBtYXkgbm90IGhhdmUgYW4gZW50cnkgZm9yIGEgcmVzb3VyY2UK
KyAgICAvLyB3aGljaCBmYWlsZWQgdG8gbG9hZC4KKyAgICBhc3NlcnRfZXF1YWxzKGVudHJ5TGlz
dC5sZW5ndGgsIDAsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICAgIHJldHVybjsKKyAgfQorCisg
IGFzc2VydF9lcXVhbHMoZW50cnlMaXN0Lmxlbmd0aCwgMSwgb3B0aW9ucy5kZXNjcmlwdGlvbik7
CisgIGNvbnN0IGVudHJ5ID0gZW50cnlMaXN0WzBdOworICBhc3NlcnRfZXF1YWxzKGVudHJ5LmVu
dHJ5VHlwZSwgJ3Jlc291cmNlJywgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisKKyAgLy8gd29ya2Vy
U3RhcnQgaXMgcmVjb3JkZWQgYmV0d2VlbiBzdGFydFRpbWUgYW5kIGZldGNoU3RhcnQuCisgIGFz
c2VydF9ncmVhdGVyX3RoYW4oZW50cnkud29ya2VyU3RhcnQsIDAsIG9wdGlvbnMuZGVzY3JpcHRp
b24pOworICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKGVudHJ5LndvcmtlclN0YXJ0LCBlbnRy
eS5zdGFydFRpbWUsIG9wdGlvbnMuZGVzY3JpcHRpb24pOworICBhc3NlcnRfbGVzc190aGFuX2Vx
dWFsKGVudHJ5LndvcmtlclN0YXJ0LCBlbnRyeS5mZXRjaFN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0
aW9uKTsKKworICBpZiAob3B0aW9ucy5tb2RlID09PSAnY3Jvc3Mtb3JpZ2luJykgeworICAgIGFz
c2VydF9lcXVhbHMoZW50cnkucmVzcG9uc2VTdGFydCwgMCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7
CisgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS5yZXNwb25zZUVuZCwgZW50cnku
ZmV0Y2hTdGFydCwgb3B0aW9ucy5kZXNjcmlwdGlvbik7CisgIH0gZWxzZSB7CisgICAgYXNzZXJ0
X2dyZWF0ZXJfdGhhbl9lcXVhbChlbnRyeS5yZXNwb25zZVN0YXJ0LCBlbnRyeS5mZXRjaFN0YXJ0
LCBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKGVu
dHJ5LnJlc3BvbnNlRW5kLCBlbnRyeS5yZXNwb25zZVN0YXJ0LCBvcHRpb25zLmRlc2NyaXB0aW9u
KTsKKyAgfQorCisgIC8vIHJlc3BvbnNlRW5kIGZvbGxvd3MgZmV0Y2hTdGFydC4KKyAgYXNzZXJ0
X2dyZWF0ZXJfdGhhbihlbnRyeS5yZXNwb25zZUVuZCwgZW50cnkuZmV0Y2hTdGFydCwgb3B0aW9u
cy5kZXNjcmlwdGlvbik7CisgIC8vIGR1cmF0aW9uIGFsd2F5cyBoYXMgc29tZSB2YWx1ZS4KKyAg
YXNzZXJ0X2dyZWF0ZXJfdGhhbihlbnRyeS5kdXJhdGlvbiwgMCwgb3B0aW9ucy5kZXNjcmlwdGlv
bik7CisKKyAgaWYgKG9wdGlvbnMucmVzb3VyY2UuaW5kZXhPZigncmVkaXJlY3QucHknKSAhPSAt
MSkgeworICAgIGFzc2VydF9sZXNzX3RoYW5fZXF1YWwoZW50cnkud29ya2VyU3RhcnQsIGVudHJ5
LnJlZGlyZWN0U3RhcnQsCisgICAgICBvcHRpb25zLmRlc2NyaXB0aW9uKTsKKyAgfSBlbHNlIHsK
KyAgICBhc3NlcnRfZXF1YWxzKGVudHJ5LnJlZGlyZWN0U3RhcnQsIDAsIG9wdGlvbnMuZGVzY3Jp
cHRpb24pOworICB9CiB9CiAKLXByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgY29uc3Qg
d29ya2VyX3VybCA9ICdyZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdvcmtlci5qcyc7Ci0gICAg
Y29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL3Jlc291cmNlLXRpbWluZy1pZnJhbWUuc3ViLmh0bWwn
OwotICAgIGxldCByZWdpc3RyYXRpb247Citwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAg
Y29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvcmVzb3VyY2UtdGltaW5nLXdvcmtlci5qcyc7
CisgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctaWZyYW1lLnN1Yi5o
dG1sJzsKIAotICAgIHJldHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rl
cih0LCB3b3JrZXJfdXJsLCBzY29wZSkKLSAgICAgIC50aGVuKGZ1bmN0aW9uKHIpIHsKLSAgICAg
ICAgICByZWdpc3RyYXRpb24gPSByOwotICAgICAgICAgIHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0
LCByLmluc3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKLSAgICAgICAgfSkKLSAgICAgIC50aGVuKGZ1
bmN0aW9uKCkgewotICAgICAgICAgIHJldHVybiB3aXRoX2lmcmFtZShzY29wZSk7Ci0gICAgICAg
IH0pCi0gICAgICAudGhlbihmdW5jdGlvbihmcmFtZSkgewotICAgICAgICAgIGNvbnN0IHBlcmZv
cm1hbmNlID0gZnJhbWUuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKLSAgICAgICAgICB2ZXJp
ZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAg
ICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2R1bW15LmpzJywKLSAgICAgICAgICAgICAgbW9kZTog
J3NhbWUtb3JpZ2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZWQgcmVz
cG9uc2UnLAotICAgICAgICAgIH0pOwotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAgICAgICAg
IHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6ICdyZXNv
dXJjZXMvZW1wdHkuanMnLAotICAgICAgICAgICAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAg
ICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJhY2snLAotICAgICAgICAgIH0p
OwotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAgICAgICAgIHBlcmZvcm1hbmNlOiBwZXJmb3Jt
YW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvcmVkaXJlY3QucHk/UmVk
aXJlY3Q9ZW1wdHkuanMnLAotICAgICAgICAgICAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAg
ICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1JlZGlyZWN0JywKLSAgICAgICAgICB9KTsKLSAgICAg
ICAgICB2ZXJpZnkoewotICAgICAgICAgICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0g
ICAgICAgICAgICAgIHJlc291cmNlOiAncmVzb3VyY2VzL3NxdWFyZS5wbmcnLAotICAgICAgICAg
ICAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05l
dHdvcmsgZmFsbGJhY2sgaW1hZ2UnLAotICAgICAgICAgIH0pOwotICAgICAgICAgIC8vIFRlc3Qg
dGhhdCB3b3JrZXIgc3RhcnQgaXMgYXZhaWxhYmxlIG9uIGNyb3NzLW9yaWdpbiBuby1jb3JzCi0g
ICAgICAgICAgLy8gc3VicmVzb3VyY2VzLgotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAgICAg
ICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6ICdy
ZXNvdXJjZXMvc3F1YXJlLnBuZycsCi0gICAgICAgICAgICAgIG1vZGU6ICdjcm9zcy1vcmlnaW4n
LAotICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJhY2sgY3Jvc3Mtb3Jp
Z2luIGltYWdlJywKLSAgICAgICAgICB9KTsKKyAgY29uc3QgcmVnaXN0cmF0aW9uID0gYXdhaXQg
c2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgd29ya2VyX3VybCwgc2Nv
cGUpOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCkpOwor
ICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCByZWdpc3RyYXRpb24uaW5zdGFsbGluZywgJ2FjdGl2
YXRlZCcpOworICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHNjb3BlKTsKKyAgdC5h
ZGRfY2xlYW51cCgoKSA9PiBmcmFtZS5yZW1vdmUoKSk7CiAKLSAgICAgICAgICAvLyBUZXN0cyBm
b3IgcmVzb3VjZXMgd2hpY2ggZmFpbGVkIHRvIGxvYWQuCi0gICAgICAgICAgdmVyaWZ5KHsKLSAg
ICAgICAgICAgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAotICAgICAgICAgICAgICByZXNv
dXJjZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZycsCi0gICAgICAgICAgICAgIG1vZGU6ICdzYW1l
LW9yaWdpbicsCi0gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBmYWxsYmFjayBs
b2FkIGZhaWx1cmUnLAotICAgICAgICAgIH0pOwotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAg
ICAgICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6
ICdyZXNvdXJjZXMvbWlzc2luZy5qcGcnLAotICAgICAgICAgICAgICBtb2RlOiAnY3Jvc3Mtb3Jp
Z2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGNyb3Nz
LW9yaWdpbiBsb2FkIGZhaWx1cmUnLAotICAgICAgICAgIH0pOwotICAgICAgICAgIC8vIFRlc3Rz
IGZvciByZXNwb25kV2l0aChmZXRjaCgpKS4KLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAg
ICAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAn
cmVzb3VyY2VzL21pc3NpbmcuanBnP1NXUmVzcG9uZHNXaXRoRmV0Y2gnLAotICAgICAgICAgICAg
ICBtb2RlOiAnc2FtZS1vcmlnaW4nLAotICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Jlc291
cmNlIGluIGlmcmFtZSwgbm9uZXhpc3RlbnQgYnV0IHJlc3BvbmRlZCB3aXRoIGZldGNoIHRvIGFu
b3RoZXIuJywKLSAgICAgICAgICB9KTsKLSAgICAgICAgICB2ZXJpZnkoewotICAgICAgICAgICAg
ICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCi0gICAgICAgICAgICAgIHJlc291cmNlOiAncmVz
b3VyY2VzL2R1bW15LnR4dD9TV0ZldGNoZWQnLAotICAgICAgICAgICAgICBtb2RlOiAnc2FtZS1v
cmlnaW4nLAotICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Jlc291cmNlIGZldGNoZWQgYXMg
cmVzcG9uc2UgZnJvbSBtaXNzaW5nLmpwZz9TV1Jlc3BvbmRzV2l0aEZldGNoLicsCi0gICAgICAg
ICAgICAgIHNob3VsZF9ub19wZXJmb3JtYW5jZV9lbnRyeTogdHJ1ZSwKLSAgICAgICAgICB9KTsK
LSAgICAgICAgICAvLyBUZXN0IGZvciBhIG5vcm1hbCByZXNvdXJjZSB0aGF0IGlzIHVuYWZmZWN0
ZWQgYnkgdGhlIFNlcnZpY2UgV29ya2VyLgotICAgICAgICAgIHZlcmlmeSh7Ci0gICAgICAgICAg
ICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKLSAgICAgICAgICAgICAgcmVzb3VyY2U6ICdy
ZXNvdXJjZXMvZW1wdHktd29ya2VyLmpzJywKLSAgICAgICAgICAgICAgbW9kZTogJ3NhbWUtb3Jp
Z2luJywKLSAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdSZXNvdXJjZSB1bnRvdWNoZWQgYnkg
dGhlIFNlcnZpY2UgV29ya2VyLicsCi0gICAgICAgICAgfSk7CisgIGNvbnN0IHBlcmZvcm1hbmNl
ID0gZnJhbWUuY29udGVudFdpbmRvdy5wZXJmb3JtYW5jZTsKKyAgdmVyaWZ5KHsKKyAgICBwZXJm
b3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6ICdyZXNvdXJjZXMvc2FtcGxlLmpz
JywKKyAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAorICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGVk
IHJlc3BvbnNlJywKKyAgfSk7CisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1h
bmNlLAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL2VtcHR5LmpzJywKKyAgICBtb2RlOiAnc2Ft
ZS1vcmlnaW4nLAorICAgIGRlc2NyaXB0aW9uOiAnTmV0d29yayBmYWxsYmFjaycsCisgIH0pOwor
ICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTog
J3Jlc291cmNlcy9yZWRpcmVjdC5weT9SZWRpcmVjdD1lbXB0eS5qcycsCisgICAgbW9kZTogJ3Nh
bWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ1JlZGlyZWN0JywKKyAgfSk7CisgIHZlcmlm
eSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3Vy
Y2VzL3NxdWFyZS5wbmcnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisgICAgZGVzY3JpcHRp
b246ICdOZXR3b3JrIGZhbGxiYWNrIGltYWdlJywKKyAgfSk7CisgIC8vIFRlc3QgdGhhdCB3b3Jr
ZXIgc3RhcnQgaXMgYXZhaWxhYmxlIG9uIGNyb3NzLW9yaWdpbiBuby1jb3JzCisgIC8vIHN1YnJl
c291cmNlcy4KKyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAg
cmVzb3VyY2U6ICdyZXNvdXJjZXMvc3F1YXJlLnBuZycsCisgICAgbW9kZTogJ2Nyb3NzLW9yaWdp
bicsCisgICAgZGVzY3JpcHRpb246ICdOZXR3b3JrIGZhbGxiYWNrIGNyb3NzLW9yaWdpbiBpbWFn
ZScsCisgIH0pOwogCi0gICAgICAgICAgZnJhbWUucmVtb3ZlKCk7Ci0gICAgICAgICAgcmV0dXJu
IHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCk7Ci0gICAgICB9KTsKKyAgLy8gVGVzdHMgZm9yIHJl
c291Y2VzIHdoaWNoIGZhaWxlZCB0byBsb2FkLgorICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNl
OiBwZXJmb3JtYW5jZSwKKyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9taXNzaW5nLmpwZycsCisg
ICAgbW9kZTogJ3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJh
Y2sgbG9hZCBmYWlsdXJlJywKKyAgfSk7CisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBl
cmZvcm1hbmNlLAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL21pc3NpbmcuanBnJywKKyAgICBt
b2RlOiAnY3Jvc3Mtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgZmFsbGJhY2sg
Y3Jvc3Mtb3JpZ2luIGxvYWQgZmFpbHVyZScsCisgIH0pOworICAvLyBUZXN0cyBmb3IgcmVzcG9u
ZFdpdGgoZmV0Y2goKSkuCisgIHZlcmlmeSh7CisgICAgcGVyZm9ybWFuY2U6IHBlcmZvcm1hbmNl
LAorICAgIHJlc291cmNlOiAncmVzb3VyY2VzL21pc3NpbmcuanBnP1NXUmVzcG9uZHNXaXRoRmV0
Y2gnLAorICAgIG1vZGU6ICdzYW1lLW9yaWdpbicsCisgICAgZGVzY3JpcHRpb246ICdSZXNvdXJj
ZSBpbiBpZnJhbWUsIG5vbmV4aXN0ZW50IGJ1dCByZXNwb25kZWQgd2l0aCBmZXRjaCB0byBhbm90
aGVyLicsCisgIH0pOworICB2ZXJpZnkoeworICAgIHBlcmZvcm1hbmNlOiBwZXJmb3JtYW5jZSwK
KyAgICByZXNvdXJjZTogJ3Jlc291cmNlcy9zYW1wbGUudHh0P1NXRmV0Y2hlZCcsCisgICAgbW9k
ZTogJ3NhbWUtb3JpZ2luJywKKyAgICBkZXNjcmlwdGlvbjogJ1Jlc291cmNlIGZldGNoZWQgYXMg
cmVzcG9uc2UgZnJvbSBtaXNzaW5nLmpwZz9TV1Jlc3BvbmRzV2l0aEZldGNoLicsCisgICAgc2hv
dWxkX25vX3BlcmZvcm1hbmNlX2VudHJ5OiB0cnVlLAorICB9KTsKKyAgLy8gVGVzdCBmb3IgYSBu
b3JtYWwgcmVzb3VyY2UgdGhhdCBpcyB1bmFmZmVjdGVkIGJ5IHRoZSBTZXJ2aWNlIFdvcmtlci4K
KyAgdmVyaWZ5KHsKKyAgICBwZXJmb3JtYW5jZTogcGVyZm9ybWFuY2UsCisgICAgcmVzb3VyY2U6
ICdyZXNvdXJjZXMvZW1wdHktd29ya2VyLmpzJywKKyAgICBtb2RlOiAnc2FtZS1vcmlnaW4nLAor
ICAgIGRlc2NyaXB0aW9uOiAnUmVzb3VyY2UgdW50b3VjaGVkIGJ5IHRoZSBTZXJ2aWNlIFdvcmtl
ci4nLAorICB9KTsKIH0sICdDb250cm9sbGVkIHJlc291cmNlIGxvYWRzJyk7CiAKIHRlc3QoKCkg
PT4gewotICAgIGNvbnN0IHVybCA9IHJlc291cmNlVXJsKCdyZXNvdXJjZXMvdGVzdC1oZWxwZXJz
LnN1Yi5qcycpOwotICAgIGNvbnN0IGVudHJ5ID0gd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeU5hbWUodXJsLCAncmVzb3VyY2UnKVswXTsKLSAgICBhc3NlcnRfZXF1YWxzKGVudHJ5Lndv
cmtlclN0YXJ0LCAwLCAnTm9uLWNvbnRyb2xsZWQnKTsKKyAgY29uc3QgdXJsID0gcmVzb3VyY2VV
cmwoJ3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzJyk7CisgIGNvbnN0IGVudHJ5ID0gd2lu
ZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUodXJsLCAncmVzb3VyY2UnKVswXTsKKyAg
YXNzZXJ0X2VxdWFscyhlbnRyeS53b3JrZXJTdGFydCwgMCwgJ05vbi1jb250cm9sbGVkJyk7CiB9
LCAnTm9uLWNvbnRyb2xsZWQgcmVzb3VyY2UgbG9hZHMnKTsKIAogPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLTIuanMgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLTIuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTg5
YjFjODdmZWU3NWM4NmNhMDgzNTE4NzJlNDAyYjg0YjhiODQ0ZgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUtMi5qcwpAQCAtMCwwICsx
IEBACitleHBvcnQgZGVmYXVsdCAnaGVsbG8gYWdhaW4hJzsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9iYXNpYy1tb2R1bGUuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvYmFzaWMtbW9kdWxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc4OWE4OWJjNjMwODQ3ZTRjZGMx
MTVmMGQyOWYxMDNjOTdiZWRlZWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvYmFzaWMtbW9kdWxlLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBkZWZhdWx0
ICdoZWxsbyEnOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsYWlt
LWJsb2ItdXJsLXdvcmtlci1mZXRjaC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9jbGFpbS1ibG9iLXVybC13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMTJhZTFhODcyNThmNzIzNWM2MTY1MDI5YjQ4ZTdiNGRjMmZmOTBkMgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGFpbS1ibG9iLXVybC13b3JrZXIt
ZmV0Y2gtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSwyMSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8c2Ny
aXB0PgorY29uc3QgYmFzZUxvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uOworY29uc3Qgd29ya2Vy
U2NyaXB0ID0KKyAgYHNlbGYub25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsKKyAgICBjb25zdCB1
cmwgPSBuZXcgVVJMKGUuZGF0YSwgJyR7YmFzZUxvY2F0aW9ufScpLmhyZWY7CisgICAgY29uc3Qg
cmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwpOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNw
b25zZS50ZXh0KCk7CisgICAgc2VsZi5wb3N0TWVzc2FnZSh0ZXh0KTsKKyAgfTtgOworY29uc3Qg
YmxvYiA9IG5ldyBCbG9iKFt3b3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQn
IH0pOworY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7Citjb25zdCB3
b3JrZXIgPSBuZXcgV29ya2VyKGJsb2JVcmwpOworCitmdW5jdGlvbiBmZXRjaF9pbl93b3JrZXIo
dXJsKSB7CisgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geworICAgIHdvcmtlci5v
bm1lc3NhZ2UgPSAoZSkgPT4gcmVzb2x2ZShlLmRhdGEpOworICAgIHdvcmtlci5wb3N0TWVzc2Fn
ZSh1cmwpOworICB9KTsKK30KKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2NsaWVudC1uYXZpZ2F0ZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcwppbmRleCBkMTQ5MjFmZWY3NGU3
ODNhMGNlNWVlZTAwMzNiOTFiMzdlOGY4ZGRmLi42MTAxZDVkOGY5MmNjZDBlYzc5OGMyN2EyYWIx
Y2QzM2RlNWZjMWJiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xp
ZW50LW5hdmlnYXRlLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
Y2xpZW50LW5hdmlnYXRlLXdvcmtlci5qcwpAQCAtMyw2ICszLDggQEAgaW1wb3J0U2NyaXB0cygi
dGVzdC1oZWxwZXJzLnN1Yi5qcyIpOwogaW1wb3J0U2NyaXB0cygiL2NvbW1vbi9nZXQtaG9zdC1p
bmZvLnN1Yi5qcyIpCiBpbXBvcnRTY3JpcHRzKCJ0ZXN0aGFybmVzcy1oZWxwZXJzLmpzIikKIAor
c2V0dXAoeyBleHBsaWNpdF9kb25lOiB0cnVlIH0pOworCiBzZWxmLm9uZmV0Y2ggPSBmdW5jdGlv
bihlKSB7CiAgIGlmIChlLnJlcXVlc3QudXJsLmluZGV4T2YoImNsaWVudC1uYXZpZ2F0ZS1mcmFt
ZS5odG1sIikgPj0gMCkgewogICAgIHJldHVybjsKQEAgLTM1LDYgKzM3LDcgQEAgc2VsZi5vbm1l
c3NhZ2UgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAg
ICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKTsKICAgICB9LCAiUmV0dXJuIHZhbHVl
IHNob3VsZCBiZSBpbnN0YW5jZSBvZiBXaW5kb3dDbGllbnQiKTsKKyAgICBkb25lKCk7CiAgIH0g
ZWxzZSBpZiAodGVzdCA9PT0gInRlc3RfY2xpZW50X25hdmlnYXRlX2Nyb3NzX29yaWdpbiIpIHsK
ICAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAgdGhpcy5hZGRfY2xlYW51cCgo
KSA9PiBwb3J0LnBvc3RNZXNzYWdlKHBhc3ModGVzdCwgY2xpZW50VXJsKSkpOwpAQCAtNDksNiAr
NTIsNyBAQCBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAg
fSkKICAgICAgICAgICAgICAgICAgLmNhdGNoKHVucmVhY2hlZF9yZWplY3Rpb24odCkpOwogICAg
IH0sICJOYXZpZ2F0aW5nIHRvIGRpZmZlcmVudCBvcmlnaW4gc2hvdWxkIHJlc29sdmUgd2l0aCBu
dWxsIik7CisgICAgZG9uZSgpOwogICB9IGVsc2UgaWYgKHRlc3QgPT09ICJ0ZXN0X2NsaWVudF9u
YXZpZ2F0ZV9hYm91dF9ibGFuayIpIHsKICAgICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewog
ICAgICAgdGhpcy5hZGRfY2xlYW51cChmdW5jdGlvbigpIHsgcG9ydC5wb3N0TWVzc2FnZShwYXNz
KHRlc3QsICIiKSk7IH0pOwpAQCAtNTYsNiArNjAsNyBAQCBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0
aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgLnRoZW4oY2xpZW50ID0+IHByb21pc2VfcmVqZWN0
c19qcyh0LCBUeXBlRXJyb3IsIGNsaWVudC5uYXZpZ2F0ZSgiYWJvdXQ6YmxhbmsiKSkpCiAgICAg
ICAgICAgICAgICAgIC5jYXRjaCh1bnJlYWNoZWRfcmVqZWN0aW9uKHQpKTsKICAgICB9LCAiTmF2
aWdhdGluZyB0byBhYm91dDpibGFuayBzaG91bGQgcmVqZWN0IHdpdGggVHlwZUVycm9yIik7Cisg
ICAgZG9uZSgpOwogICB9IGVsc2UgaWYgKHRlc3QgPT09ICJ0ZXN0X2NsaWVudF9uYXZpZ2F0ZV9t
aXhlZF9jb250ZW50IikgewogICAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAgICAgICB0
aGlzLmFkZF9jbGVhbnVwKGZ1bmN0aW9uKCkgeyBwb3J0LnBvc3RNZXNzYWdlKHBhc3ModGVzdCwg
IiIpKTsgfSk7CkBAIC02Nyw2ICs3Miw3IEBAIHNlbGYub25tZXNzYWdlID0gZnVuY3Rpb24oZSkg
ewogICAgICAgICAgICAgICAgICAudGhlbihjbGllbnQgPT4gcHJvbWlzZV9yZWplY3RzX2pzKHQs
IFR5cGVFcnJvciwgY2xpZW50Lm5hdmlnYXRlKHVybCkpKQogICAgICAgICAgICAgICAgICAuY2F0
Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSk7CiAgICAgfSwgIk5hdmlnYXRpbmcgdG8gbWl4ZWQt
Y29udGVudCBpZnJhbWUgc2hvdWxkIHJlamVjdCB3aXRoIFR5cGVFcnJvciIpOworICAgIGRvbmUo
KTsKICAgfSBlbHNlIGlmICh0ZXN0ID09PSAidGVzdF9jbGllbnRfbmF2aWdhdGVfcmVkaXJlY3Qi
KSB7CiAgICAgdmFyIGhvc3RfaW5mbyA9IGdldF9ob3N0X2luZm8oKTsKICAgICB2YXIgdXJsID0g
bmV3IFVSTChob3N0X2luZm9bJ0hUVFBTX1JFTU9URV9PUklHSU4nXSkudG9TdHJpbmcoKSArCkBA
IC03Nyw5ICs4MywxMCBAQCBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAg
ICAgICAgICAgLnRoZW4oY2xpZW50ID0+IGNsaWVudC5uYXZpZ2F0ZSgicmVkaXJlY3QucHk/UmVk
aXJlY3Q9IiArIHVybCkpCiAgICAgICAgICAgICAgICAgIC50aGVuKGNsaWVudCA9PiB7CiAgICAg
ICAgICAgICAgICAgICAgY2xpZW50VXJsID0gKGNsaWVudCAmJiBjbGllbnQudXJsKSB8fCAiIgot
ICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGNsaWVudCA9PT0gbnVsbCk7CisgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQsIG51bGwpOwogICAgICAgICAgICAgICAg
ICB9KQogICAgICAgICAgICAgICAgICAuY2F0Y2godW5yZWFjaGVkX3JlamVjdGlvbih0KSk7CiAg
ICAgfSwgIlJlZGlyZWN0aW5nIHRvIGFub3RoZXIgb3JpZ2luIHNob3VsZCByZXNvbHZlIHdpdGgg
bnVsbCIpOworICAgIGRvbmUoKTsKICAgfQogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJsb2ItdXJsLXdvcmtlci5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMDBmNmFjZWRlOGViNGZhZmJiZjZhMjQ4Yzc1ZGI4NGRiYTNlZmM0MAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9m
LWJsb2ItdXJsLXdvcmtlci5odG1sCkBAIC0wLDAgKzEsMjYgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8c2NyaXB0PgorCisvLyBSZXR1cm4gYSBVUkwgb2YgYSBjbGllbnQgd2hlbiBpdCdz
IHN1Y2Nlc3NmdWwuCitmdW5jdGlvbiBjcmVhdGVBbmRGZXRjaEZyb21CbG9iV29ya2VyKCkgewor
ICBjb25zdCBmZXRjaFVSTCA9IG5ldyBVUkwoJ2dldC13b3JrZXItY2xpZW50LXVybC50eHQnLCB3
aW5kb3cubG9jYXRpb24pLmhyZWY7CisgIGNvbnN0IHdvcmtlclNjcmlwdCA9CisgICAgYHNlbGYu
b25tZXNzYWdlID0gYXN5bmMgKGUpID0+IHsKKyAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQg
ZmV0Y2goZS5kYXRhLnVybCk7CisgICAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4
dCgpOworICAgICAgc2VsZi5wb3N0TWVzc2FnZSh7InJlc3VsdCI6IHRleHQsICJleHBlY3RlZCI6
IHNlbGYubG9jYXRpb24uaHJlZn0pOworICAgIH07YDsKKyAgY29uc3QgYmxvYiA9IG5ldyBCbG9i
KFt3b3JrZXJTY3JpcHRdLCB7IHR5cGU6ICd0ZXh0L2phdmFzY3JpcHQnIH0pOworICBjb25zdCBi
bG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKKworICBjb25zdCB3b3JrZXIgPSBu
ZXcgV29ya2VyKGJsb2JVcmwpOworICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVj
dCkgPT4geworICAgIHdvcmtlci5vbm1lc3NhZ2UgPSBlID0+IHJlc29sdmUoZS5kYXRhKTsKKyAg
ICB3b3JrZXIub25lcnJvciA9IGUgPT4gcmVqZWN0KGUubWVzc2FnZSk7CisgICAgd29ya2VyLnBv
c3RNZXNzYWdlKHsidXJsIjogZmV0Y2hVUkx9KTsKKyAgfSk7Cit9CisKKzwvc2NyaXB0PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudC11cmwt
b2YtYmxvYi11cmwtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVu
dC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkNzU0ZjgyNTBkYTBhMDQ2
NGI5NjA3NjdmOWU3YWI5N2Y1Mjc0YjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13b3JrZXIuanMKQEAgLTAsMCAr
MSwxMCBAQAorYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBlID0+IHsKKyAgaWYgKGUucmVxdWVz
dC51cmwuaW5jbHVkZXMoJ2dldC13b3JrZXItY2xpZW50LXVybCcpKSB7CisgICAgZS5yZXNwb25k
V2l0aCgoYXN5bmMgKCkgPT4geworICAgICAgY29uc3QgY2xpZW50cyA9IGF3YWl0IHNlbGYuY2xp
ZW50cy5tYXRjaEFsbCh7dHlwZTogJ3dvcmtlcid9KTsKKyAgICAgIGlmIChjbGllbnRzLmxlbmd0
aCAhPSAxKQorICAgICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKCdvbmUgd29ya2VyIGNsaWVudCBz
aG91bGQgZXhpc3QnKTsKKyAgICAgIHJldHVybiBuZXcgUmVzcG9uc2UoY2xpZW50c1swXS51cmwp
OworICAgIH0pKCkpOworICB9Cit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtYmxvYi11cmwtd29ya2VyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWU4OWEwZDhiM2VlNzUxM2ZmMzgxNzYzMmRiMzJhOWY1ZjJjMTYyYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLW1hdGNo
YWxsLWJsb2ItdXJsLXdvcmtlci5odG1sCkBAIC0wLDAgKzEsMjAgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8c2NyaXB0PgorY29uc3Qgd29ya2VyU2NyaXB0ID0gYAorICBzZWxmLm9ubWVz
c2FnZSA9IChlKSA9PiB7CisgICAgc2VsZi5wb3N0TWVzc2FnZSgiV29ya2VyIGlzIHJlYWR5LiIp
OworICB9OworYDsKK2NvbnN0IGJsb2IgPSBuZXcgQmxvYihbd29ya2VyU2NyaXB0XSwgeyB0eXBl
OiAndGV4dC9qYXZhc2NyaXB0JyB9KTsKK2NvbnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0
VVJMKGJsb2IpOworY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihibG9iVXJsKTsKKworZnVuY3Rp
b24gd2FpdEZvcldvcmtlcigpIHsKKyAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gewor
ICAgIHdvcmtlci5vbm1lc3NhZ2UgPSByZXNvbHZlOworICAgIHdvcmtlci5wb3N0TWVzc2FnZSgi
UGluZyB0byB3b3JrZXIuIik7CisgIH0pOworfQorPC9zY3JpcHQ+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLWJsb2ItdXJsLXdvcmtlci5q
cyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jcmVhdGUtYmxvYi11cmwtd29ya2VyLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjU3ZTQ4ODJjMjRmNzI3M2UzNDY5YjliNjA2NDlmZmE0YjRmMzk2MTcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLWJsb2It
dXJsLXdvcmtlci5qcwpAQCAtMCwwICsxLDIyIEBACitjb25zdCBjaGlsZFdvcmtlclNjcmlwdCA9
IGAKKyAgc2VsZi5vbm1lc3NhZ2UgPSBhc3luYyAoZSkgPT4geworICAgIGNvbnN0IHJlc3BvbnNl
ID0gYXdhaXQgZmV0Y2goZS5kYXRhKTsKKyAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcmVzcG9uc2Uu
dGV4dCgpOworICAgIHNlbGYucG9zdE1lc3NhZ2UodGV4dCk7CisgIH07CitgOworY29uc3QgYmxv
YiA9IG5ldyBCbG9iKFtjaGlsZFdvcmtlclNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlw
dCcgfSk7Citjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKK2NvbnN0
IGNoaWxkV29ya2VyID0gbmV3IFdvcmtlcihibG9iVXJsKTsKKworLy8gV2hlbiBhIG1lc3NhZ2Ug
Y29tZXMgZnJvbSB0aGUgcGFyZW50IGZyYW1lLCBzZW5kcyBhIHJlc291cmNlIHVybCB0byB0aGUg
Y2hpbGQKKy8vIHdvcmtlci4KK3NlbGYub25tZXNzYWdlID0gKGUpID0+IHsKKyAgY2hpbGRXb3Jr
ZXIucG9zdE1lc3NhZ2UoZS5kYXRhKTsKK307CisKKy8vIFdoZW4gYSBtZXNzYWdlIGNvbWVzIGZy
b20gdGhlIGNoaWxkIHdvcmtlciwgc2VuZHMgYSBjb250ZW50IG9mIGZldGNoKCkgdG8gdGhlCisv
LyBwYXJlbnQgZnJhbWUuCitjaGlsZFdvcmtlci5vbm1lc3NhZ2UgPSAoZSkgPT4geworICBzZWxm
LnBvc3RNZXNzYWdlKGUuZGF0YSk7Cit9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2NyZWF0ZS1vdXQtb2Ytc2NvcGUtd29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvY3JlYXRlLW91dC1vZi1zY29wZS13b3JrZXIuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iNTFjNDUxNzUwOTQ3MGNlNWYyOTQwYjFhYzY0MjQyZDY1ODg1ZWMyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NyZWF0ZS1vdXQtb2Ytc2NvcGUtd29y
a2VyLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8c2NyaXB0PgorY29u
c3Qgd29ya2VyVXJsID0gJy4uL291dC1vZi1zY29wZS9zYW1wbGUtc3ludGhlc2l6ZWQtd29ya2Vy
LmpzP2RlZGljYXRlZCc7Citjb25zdCB3b3JrZXIgPSBuZXcgV29ya2VyKHdvcmtlclVybCk7Citj
b25zdCB3b3JrZXJQcm9taXNlID0gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgIHdvcmtlci5v
bm1lc3NhZ2UgPSBlID0+IHsKKyAgICAvLyBgZS5kYXRhYCBpcyAnd29ya2VyIGxvYWRpbmcgaW50
ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXInIHdoZW4gYSB3b3JrZXIKKyAgICAvLyBpcyBpbnRl
cmNlcHRlZCBieSBhIHNlcnZpY2Ugd29ya2VyLgorICAgIHJlc29sdmUoZS5kYXRhKTsKKyAgfQor
ICB3b3JrZXIub25lcnJvciA9IF8gPT4geworICAgIHJlc29sdmUoJ3dvcmtlciBsb2FkaW5nIHdh
cyBub3QgaW50ZXJjZXB0ZWQgYnkgc2VydmljZSB3b3JrZXInKTsKKyAgfQorfSk7CisKK2Z1bmN0
aW9uIGdldFdvcmtlclByb21pc2UoKSB7CisgIHJldHVybiB3b3JrZXJQcm9taXNlOworfQorPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXktd29y
a2VyLWludGVyY2VwdG9yLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15LXdv
cmtlci1pbnRlcmNlcHRvci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTEyOWVk
NTFlYTU1MGMyMTBhYmM1M2UxMTIwOWU3YTNlOWRjMzZiMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVt
bXktd29ya2VyLWludGVyY2VwdG9yLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAot
aW1wb3J0U2NyaXB0cygnL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcycpOwotCi1jb25zdCB0
ZXh0ID0gJ3dvcmtlciBsb2FkaW5nIGludGVyY2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyJzsKLWNv
bnN0IGRlZGljYXRlZF93b3JrZXJfc2NyaXB0ID0gYHBvc3RNZXNzYWdlKCcke3RleHR9Jyk7YDsK
LWNvbnN0IHNoYXJlZF93b3JrZXJfc2NyaXB0ID0KLSAgICBgb25jb25uZWN0ID0gZXZ0ID0+IGV2
dC5wb3J0c1swXS5wb3N0TWVzc2FnZSgnJHt0ZXh0fScpO2A7Ci0KLXNlbGYub25mZXRjaCA9IGV2
ZW50ID0+IHsKLSAgY29uc3QgdXJsID0gZXZlbnQucmVxdWVzdC51cmw7Ci0gIGNvbnN0IGRlc3Rp
bmF0aW9uID0gZXZlbnQucmVxdWVzdC5kZXN0aW5hdGlvbjsKLQotICAvLyBSZXF1ZXN0IGhhbmRs
ZXIgZm9yIGEgc3ludGhlc2l6ZWQgcmVzcG9uc2UuCi0gIGlmICh1cmwuaW5kZXhPZignc3ludGhl
c2l6ZWQnKSAhPSAtMSkgewotICAgIGxldCBzY3JpcHRfaGVhZGVycyA9IG5ldyBIZWFkZXJzKHsg
IkNvbnRlbnQtVHlwZSI6ICJ0ZXh0L2phdmFzY3JpcHQiIH0pOwotICAgIGlmIChkZXN0aW5hdGlv
biA9PT0gJ3dvcmtlcicpCi0gICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoZGVk
aWNhdGVkX3dvcmtlcl9zY3JpcHQsIHsgJ2hlYWRlcnMnOiBzY3JpcHRfaGVhZGVycyB9KSk7Ci0g
ICAgZWxzZSBpZiAoZGVzdGluYXRpb24gPT09ICdzaGFyZWR3b3JrZXInKQotICAgICAgZXZlbnQu
cmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKHNoYXJlZF93b3JrZXJfc2NyaXB0LCB7ICdoZWFkZXJz
Jzogc2NyaXB0X2hlYWRlcnMgfSkpOwotICAgIGVsc2UKLSAgICAgIGV2ZW50LnJlc3BvbmRXaXRo
KG5ldyBSZXNwb25zZSgnVW5leHBlY3RlZCByZXF1ZXN0ISAnICsgZGVzdGluYXRpb24pKTsKLSAg
ICByZXR1cm47Ci0gIH0KLQotICAvLyBSZXF1ZXN0IGhhbmRsZXIgZm9yIGEgc2FtZS1vcmlnaW4g
cmVzcG9uc2UuCi0gIGlmICh1cmwuaW5kZXhPZignc2FtZS1vcmlnaW4nKSAhPSAtMSkgewotICAg
IGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKCdwb3N0bWVzc2FnZS1vbi1sb2FkLXdvcmtlci5qcycp
KTsKLSAgICByZXR1cm47Ci0gIH0KLQotICAvLyBSZXF1ZXN0IGhhbmRsZXIgZm9yIGEgY3Jvc3Mt
b3JpZ2luIHJlc3BvbnNlLgotICBpZiAodXJsLmluZGV4T2YoJ2NvcnMnKSAhPSAtMSkgewotICAg
IGNvbnN0IGZpbGVuYW1lID0gJ3Bvc3RtZXNzYWdlLW9uLWxvYWQtd29ya2VyLmpzJzsKLSAgICBj
b25zdCBwYXRoID0gKG5ldyBVUkwoZmlsZW5hbWUsIHNlbGYubG9jYXRpb24pKS5wYXRobmFtZTsK
LSAgICBsZXQgbmV3X3VybCA9IGdldF9ob3N0X2luZm8oKVsnSFRUUFNfUkVNT1RFX09SSUdJTidd
ICsgcGF0aDsKLSAgICBsZXQgbW9kZTsKLSAgICBpZiAodXJsLmluZGV4T2YoJ25vLWNvcnMnKSAh
PSAtMSkgewotICAgICAgLy8gVGVzdCBuby1jb3JzIG1vZGUuCi0gICAgICBtb2RlID0gJ25vLWNv
cnMnOwotICAgIH0gZWxzZSB7Ci0gICAgICAvLyBUZXN0IGNvcnMgbW9kZS4KLSAgICAgIG5ld191
cmwgKz0gJz9waXBlPWhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKiknOwotICAg
ICAgbW9kZSA9ICdjb3JzJzsKLSAgICB9Ci0gICAgZXZlbnQucmVzcG9uZFdpdGgoZmV0Y2gobmV3
X3VybCwgeyBtb2RlOiBtb2RlIH0pKTsKLSAgfQotfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9kdW1teS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2R1bW15Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEyYTE3OTk4MGRmMmZm
NjBjMjU4ODI3MTE5Yzc4YTY0NWUxYTc0YTcuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2R1bW15Lmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGJvZHk+SGVs
bG8gd29ybGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA4MDI5OTJjNDIyMGRlMTlhOTA3NjdmMzAwMGE3OWEzMWI5OGQwZGY3
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBA
Ci1IZWxsbyB3b3JsZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLWV2ZW50LXRlc3Qtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLWV2ZW50LXRlc3Qtd29ya2VyLmpzCmluZGV4IDBhNTJhODIwMWVhOTZkNTBkM2ZhNmVlMzAy
ZjZhYTkwYjQ0MzVkYTYuLmJiNTliYzkyODY1MWFjZDUyNzQ0MzFlNmQzMTcxMWM0Mjg4NTIzYmEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1ldmVudC10ZXN0
LXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtZXZlbnQt
dGVzdC13b3JrZXIuanMKQEAgLTE1NSw2ICsxNTUsMjkgQEAgZnVuY3Rpb24gaGFuZGxlSXNIaXN0
b3J5TmF2aWdhdGlvbihldmVudCkgewogICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2Uo
Ym9keSkpOwogfQogCitmdW5jdGlvbiBoYW5kbGVVc2VBbmRJZ25vcmUoZXZlbnQpIHsKKyAgY29u
c3QgcmVxdWVzdCA9IGV2ZW50LnJlcXVlc3Q7CisgIHJlcXVlc3QudGV4dCgpOworICByZXR1cm47
Cit9CisKK2Z1bmN0aW9uIGhhbmRsZUNsb25lQW5kSWdub3JlKGV2ZW50KSB7CisgIGNvbnN0IHJl
cXVlc3QgPSBldmVudC5yZXF1ZXN0OworICByZXF1ZXN0LmNsb25lKCkudGV4dCgpOworICByZXR1
cm47Cit9CisKK3ZhciBoYW5kbGVfc3RhdHVzX2NvdW50ID0gMDsKK2Z1bmN0aW9uIGhhbmRsZVN0
YXR1cyhldmVudCkgeworICBoYW5kbGVfc3RhdHVzX2NvdW50Kys7CisgIGV2ZW50LnJlc3BvbmRX
aXRoKGFzeW5jIGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGV2ZW50
LnJlcXVlc3QpOworICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpOworICAgIHJldHVy
biBuZXcgUmVzcG9uc2UoYCR7dGV4dH0uIFJlcXVlc3Qgd2FzIHNlbnQgJHtoYW5kbGVfc3RhdHVz
X2NvdW50fSB0aW1lcy5gLAorICAgICAgeyJzdGF0dXMiOiBuZXcgVVJMKGV2ZW50LnJlcXVlc3Qu
dXJsKS5zZWFyY2hQYXJhbXMuZ2V0KCJzdGF0dXMiKX0pOworICB9KCkpOworfQorCiBzZWxmLmFk
ZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICB2YXIgdXJsID0g
ZXZlbnQucmVxdWVzdC51cmw7CiAgICAgdmFyIGhhbmRsZXJzID0gWwpAQCAtMTgwLDYgKzIwMyw5
IEBAIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAg
ICAgeyBwYXR0ZXJuOiAnP2tlZXBhbGl2ZScsIGZuOiBoYW5kbGVLZWVwYWxpdmUgfSwKICAgICAg
IHsgcGF0dGVybjogJz9pc1JlbG9hZE5hdmlnYXRpb24nLCBmbjogaGFuZGxlSXNSZWxvYWROYXZp
Z2F0aW9uIH0sCiAgICAgICB7IHBhdHRlcm46ICc/aXNIaXN0b3J5TmF2aWdhdGlvbicsIGZuOiBo
YW5kbGVJc0hpc3RvcnlOYXZpZ2F0aW9uIH0sCisgICAgICB7IHBhdHRlcm46ICc/dXNlLWFuZC1p
Z25vcmUnLCBmbjogaGFuZGxlVXNlQW5kSWdub3JlIH0sCisgICAgICB7IHBhdHRlcm46ICc/Y2xv
bmUtYW5kLWlnbm9yZScsIGZuOiBoYW5kbGVDbG9uZUFuZElnbm9yZSB9LAorICAgICAgeyBwYXR0
ZXJuOiAnP3N0YXR1cycsIGZuOiBoYW5kbGVTdGF0dXMgfSwKICAgICBdOwogCiAgICAgdmFyIGhh
bmRsZXIgPSBudWxsOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLWV2ZW50LXdpdGhpbi1zdy13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtZXZlbnQtd2l0aGluLXN3LXdvcmtlci5qcwppbmRleCBmMzE4MGQ3NzZjNWIwMmVk
MmNmMjAyYzI5OGZhYmZkMWU4ZjhlYTExLi41OTAzYmFiOTY4ZGM0N2FlYzhkNWE1MWRhMTQyMmQx
ZWNjYmRiMDc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gt
ZXZlbnQtd2l0aGluLXN3LXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtZXZlbnQtd2l0aGluLXN3LXdvcmtlci5qcwpAQCAtNSwyMCArNSwyMCBAQCBhZGRF
dmVudExpc3RlbmVyKCdmZXRjaCcsIGV2ZW50ID0+IHsKIAogICBpZiAodXJsLm9yaWdpbiAhPSBs
b2NhdGlvbi5vcmlnaW4pIHJldHVybjsKIAotICBpZiAodXJsLnBhdGhuYW1lLmVuZHNXaXRoKCcv
ZHVtbXkudHh0JykpIHsKKyAgaWYgKHVybC5wYXRobmFtZS5lbmRzV2l0aCgnL3NhbXBsZS50eHQn
KSkgewogICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZSgnaW50ZXJjZXB0ZWQnKSk7
CiAgICAgcmV0dXJuOwogICB9CiAKLSAgaWYgKHVybC5wYXRobmFtZS5lbmRzV2l0aCgnL2R1bW15
LnR4dC1pbm5lci1mZXRjaCcpKSB7Ci0gICAgZXZlbnQucmVzcG9uZFdpdGgoZmV0Y2goJ2R1bW15
LnR4dCcpKTsKKyAgaWYgKHVybC5wYXRobmFtZS5lbmRzV2l0aCgnL3NhbXBsZS50eHQtaW5uZXIt
ZmV0Y2gnKSkgeworICAgIGV2ZW50LnJlc3BvbmRXaXRoKGZldGNoKCdzYW1wbGUudHh0JykpOwog
ICAgIHJldHVybjsKICAgfQogCi0gIGlmICh1cmwucGF0aG5hbWUuZW5kc1dpdGgoJy9kdW1teS50
eHQtaW5uZXItY2FjaGUnKSkgeworICBpZiAodXJsLnBhdGhuYW1lLmVuZHNXaXRoKCcvc2FtcGxl
LnR4dC1pbm5lci1jYWNoZScpKSB7CiAgICAgZXZlbnQucmVzcG9uZFdpdGgoCiAgICAgICBjYWNo
ZXMub3BlbigndGVzdC1pbm5lci1jYWNoZScpLnRoZW4oY2FjaGUgPT4KLSAgICAgICAgY2FjaGUu
YWRkKCdkdW1teS50eHQnKS50aGVuKCgpID0+IGNhY2hlLm1hdGNoKCdkdW1teS50eHQnKSkKKyAg
ICAgICAgY2FjaGUuYWRkKCdzYW1wbGUudHh0JykudGhlbigoKSA9PiBjYWNoZS5tYXRjaCgnc2Ft
cGxlLnR4dCcpKQogICAgICAgKQogICAgICk7CiAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1peGVkLWNvbnRlbnQtaWZyYW1lLWluc2Nv
cGUtdG8taW5zY29wZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1p
eGVkLWNvbnRlbnQtaWZyYW1lLWluc2NvcGUtdG8taW5zY29wZS5odG1sCmluZGV4IGI2YTI2MGQw
NjZiZmJhMDQwMjNhZTM1Y2Y1YmZiNTY5MGM5ZjljNWUuLjY0YTYzNGU5ZGI3Yjk1NWJjYjI5MWZm
YTAyYjIzZGEzYjg5NjJmNDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9mZXRjaC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLWluc2NvcGUuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtbWl4ZWQtY29udGVudC1pZnJhbWUt
aW5zY29wZS10by1pbnNjb3BlLmh0bWwKQEAgLTE1LDcgKzE1LDcgQEAgZnVuY3Rpb24gdGVzdDEo
KSB7CiAgICAgcmVzdWx0cyArPSAnRkFJTCgxKSc7CiAgICAgdGVzdDIoKTsKICAgfTsKLSAgaW1n
LnNyYyA9ICcuL2R1bW15P3VybD0nICsKKyAgaW1nLnNyYyA9ICcuL3NhbXBsZT91cmw9JyArCiAg
ICAgICAgICAgICBlbmNvZGVVUklDb21wb25lbnQoaG9zdF9pbmZvWydIVFRQU19PUklHSU4nXSAr
IGltYWdlX3BhdGgpOwogfQogCkBAIC0yOSw3ICsyOSw3IEBAIGZ1bmN0aW9uIHRlc3QyKCkgewog
ICAgIHJlc3VsdHMgKz0gJ0ZBSUwoMiknOwogICAgIHRlc3QzKCk7CiAgIH07Ci0gIGltZy5zcmMg
PSAnLi9kdW1teT9tb2RlPW5vLWNvcnMmdXJsPScgKworICBpbWcuc3JjID0gJy4vc2FtcGxlP21v
ZGU9bm8tY29ycyZ1cmw9JyArCiAgICAgICAgICAgICBlbmNvZGVVUklDb21wb25lbnQoaG9zdF9p
bmZvWydIVFRQU19SRU1PVEVfT1JJR0lOJ10gKyBpbWFnZV9wYXRoKTsKIH0KIApAQCAtNDMsNyAr
NDMsNyBAQCBmdW5jdGlvbiB0ZXN0MygpIHsKICAgaW1nLm9uZXJyb3IgPSBmdW5jdGlvbigpIHsK
ICAgICB0ZXN0NCgpOwogICB9OwotICBpbWcuc3JjID0gJy4vZHVtbXk/bW9kZT1uby1jb3JzJnVy
bD0nICsKKyAgaW1nLnNyYyA9ICcuL3NhbXBsZT9tb2RlPW5vLWNvcnMmdXJsPScgKwogICAgICAg
ICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGhvc3RfaW5mb1snSFRUUF9PUklHSU4nXSArIGltYWdl
X3BhdGgpOwogfQogCkBAIC01Nyw3ICs1Nyw3IEBAIGZ1bmN0aW9uIHRlc3Q0KCkgewogICBpbWcu
b25lcnJvciA9IGZ1bmN0aW9uKCkgewogICAgIGZpbmlzaCgpOwogICB9OwotICBpbWcuc3JjID0g
Jy4vZHVtbXk/bW9kZT1uby1jb3JzJnVybD0nICsKKyAgaW1nLnNyYyA9ICcuL3NhbXBsZT9tb2Rl
PW5vLWNvcnMmdXJsPScgKwogICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KGhvc3RfaW5m
b1snSFRUUF9SRU1PVEVfT1JJR0lOJ10gKyBpbWFnZV9wYXRoKTsKIH0KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLW1peGVkLWNvbnRlbnQtaWZyYW1lLWlu
c2NvcGUtdG8tb3V0c2NvcGUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRj
aC1taXhlZC1jb250ZW50LWlmcmFtZS1pbnNjb3BlLXRvLW91dHNjb3BlLmh0bWwKaW5kZXggYjhj
OTQwYzJhMGE1NjgwYWEyMjgyY2I3ZTNiNjE5NDA4ZWQ4MmY4Ni4uYmUwYjVjOGY1NjFkZWZjZjdi
MTA5NzdmNTRkMjcwYWI4MzhiYzA5ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLW1peGVkLWNvbnRlbnQtaWZyYW1lLWluc2NvcGUtdG8tb3V0c2NvcGUuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtbWl4ZWQtY29udGVudC1p
ZnJhbWUtaW5zY29wZS10by1vdXRzY29wZS5odG1sCkBAIC02Nyw3ICs2Nyw3IEBAIGZ1bmN0aW9u
IHRlc3Q1KCkgewogICAgIHJlc3VsdHMgKz0gJ0ZBSUwoNSknOwogICAgIGZpbmlzaCgpOwogICB9
OwotICBpbWcuc3JjID0gJy4vZHVtbXk/Z2VuZXJhdGUtcG5nJzsKKyAgaW1nLnNyYyA9ICcuL3Nh
bXBsZT9nZW5lcmF0ZS1wbmcnOwogfQogCiBmdW5jdGlvbiBmaW5pc2goKSB7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwt
c3R5bGUuY3NzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3Nz
LWJhc2UtdXJsLXN0eWxlLmNzcwppbmRleCA3NjQzZjY2N2FkYmMyNjMyNDNkOTNmNmZhM2EzYjQ2
YTc3ZDRkZTExLi5mMTRmY2FhZTcyNzVkNDJmNjhjYWM4M2VlZDZkNzg3Mjc0NjFhNmUzIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFz
ZS11cmwtc3R5bGUuY3NzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1y
ZXF1ZXN0LWNzcy1iYXNlLXVybC1zdHlsZS5jc3MKQEAgLTEgKzEgQEAKLWJvZHkgeyBiYWNrZ3Jv
dW5kLWltYWdlOiB1cmwoIi4vZHVtbXkucG5nIik7fQorYm9keSB7IGJhY2tncm91bmQtaW1hZ2U6
IHVybCgiLi9zYW1wbGUucG5nIik7fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLXdvcmtlci5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWNzcy1iYXNlLXVybC13b3JrZXIuanMKaW5k
ZXggZThkYmQyNzI1YzY4ZjkzMjZjNDFhZTVlN2JkZTY1MTU4OTcwYTI3Mi4uMTBkM2IxODgwOTM0
ZTYzM2VjYWFmOWEwZGM1OTA1NDdjZTQ2ZTQ2MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtY3NzLWJhc2UtdXJsLXdvcmtlci5qcworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1jc3MtYmFzZS11cmwtd29y
a2VyLmpzCkBAIC0yMyw3ICsyMyw3IEBAIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBl
dmVudCA9PiB7CiAgICAgfQogICAgIC8vIFJlc3BvbmQgd2l0aCBuZXcgUmVzcG9uc2UoKS4KICAg
ICBlbHNlIGlmICh1cmwuc2VhcmNoID09ICc/bmV3UmVzcG9uc2UnKSB7Ci0gICAgICBjb25zdCBz
dHlsZVN0cmluZyA9ICdib2R5IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCIuL2R1bW15LnBuZyIp
O30nOworICAgICAgY29uc3Qgc3R5bGVTdHJpbmcgPSAnYm9keSB7IGJhY2tncm91bmQtaW1hZ2U6
IHVybCgiLi9zYW1wbGUucG5nIik7fSc7CiAgICAgICBjb25zdCBoZWFkZXJzID0geydjb250ZW50
LXR5cGUnOiAndGV4dC9jc3MnfTsKICAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25z
ZShzdHlsZVN0cmluZywgaGVhZGVycykpOwogICAgIH0KQEAgLTMxLDcgKzMxLDcgQEAgc2VsZi5h
ZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGV2ZW50ID0+IHsKIAogICAvLyBUaGUgaW1hZ2UgcmVx
dWVzdCBpbmRpY2F0ZXMgd2hhdCB0aGUgYmFzZSBVUkwgb2YgdGhlIENTUyB3YXMuIE1lc3NhZ2Ug
dGhlCiAgIC8vIHJlc3VsdCBiYWNrIHRvIHRoZSB0ZXN0IHBhZ2UuCi0gIGVsc2UgaWYgKHVybC5w
YXRobmFtZS5pbmRleE9mKCdkdW1teS5wbmcnKSAhPSAtMSkgeworICBlbHNlIGlmICh1cmwucGF0
aG5hbWUuaW5kZXhPZignc2FtcGxlLnBuZycpICE9IC0xKSB7CiAgICAgLy8gRm9yIHNvbWUgcmVh
c29uIHxzb3VyY2V8IGlzIHVuZGVmaW5lZCBoZXJlIHdoZW4gcnVubmluZyB0aGUgdGVzdCBtYW51
YWxseQogICAgIC8vIGluIEZpcmVmb3guIFRoZSB0ZXN0IGF1dGhvciBleHBlcmltZW50ZWQgd2l0
aCBib3RoIHVzaW5nIENsaWVudAogICAgIC8vIChldmVudC5zb3VyY2UpIGFuZCBNZXNzYWdlUG9y
dCB0byB0cnkgdG8gZ2V0IHRoZSB0ZXN0IHRvIHBhc3MsIGJ1dApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBvcnRzLWlmcmFtZS5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBv
cnRzLWlmcmFtZS5odG1sCmluZGV4IDc5NTE4NTk0NGU5NDIzMDM4ZTcwNDIxYmNiODZlZDQ1Mzdl
MDY4N2YuLjA3YTA4NDI1N2E4Y2ZlYzNhMWU2MzEwNDMzYzZkNWIwYjc2OTNmNTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0bWwtaW1wb3J0
cy1pZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVx
dWVzdC1odG1sLWltcG9ydHMtaWZyYW1lLmh0bWwKQEAgLTgsNiArOCw2IEBACiAgICAgICBsaW5r
LmhyZWYgPSB1cmw7CiAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYXBwZW5kQ2hpbGQo
bGluayk7CiAgICAgfTsKLSAgbWFrZUxpbmsoJ3NhbWUnLCBob3N0SW5mby5IVFRQU19PUklHSU4g
KyAnL2R1bW15LWRpci9zYW1lLmh0bWwnKTsKLSAgbWFrZUxpbmsoJ290aGVyJywgaG9zdEluZm8u
SFRUUFNfUkVNT1RFX09SSUdJTiArICcvZHVtbXktZGlyL290aGVyLmh0bWwnKTsKKyAgbWFrZUxp
bmsoJ3NhbWUnLCBob3N0SW5mby5IVFRQU19PUklHSU4gKyAnL3NhbXBsZS1kaXIvc2FtZS5odG1s
Jyk7CisgIG1ha2VMaW5rKCdvdGhlcicsIGhvc3RJbmZvLkhUVFBTX1JFTU9URV9PUklHSU4gKyAn
L3NhbXBsZS1kaXIvb3RoZXIuaHRtbCcpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1odG1sLWltcG9ydHMtd29ya2VyLmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtaHRtbC1pbXBvcnRz
LXdvcmtlci5qcwppbmRleCA1NTI1ZDUyNjg2NmFmOGE5OTQxMDMxZDBiYzU0NjIxYjJjNmQ2MmJm
Li4xMTA3MjdiZDUyY2Y2MjI0Mjc3ODQ4MmU0OWE2Y2NmN2E5MDJiZmI5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1odG1sLWltcG9ydHMtd29y
a2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LWh0
bWwtaW1wb3J0cy13b3JrZXIuanMKQEAgLTMsMjcgKzMsMjcgQEAgdmFyIGhvc3RfaW5mbyA9IGdl
dF9ob3N0X2luZm8oKTsKIAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0aW9u
KGV2ZW50KSB7CiAgICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICAgIGlmICh1cmwu
aW5kZXhPZignZHVtbXktZGlyJykgPT0gLTEpIHsKKyAgICBpZiAodXJsLmluZGV4T2YoJ3NhbXBs
ZS1kaXInKSA9PSAtMSkgewogICAgICAgcmV0dXJuOwogICAgIH0KICAgICB2YXIgcmVzdWx0ID0g
J21vZGU9JyArIGV2ZW50LnJlcXVlc3QubW9kZSArCiAgICAgICAnIGNyZWRlbnRpYWxzPScgKyBl
dmVudC5yZXF1ZXN0LmNyZWRlbnRpYWxzOwotICAgIGlmICh1cmwgPT0gaG9zdF9pbmZvLkhUVFBT
X09SSUdJTiArICcvZHVtbXktZGlyL3NhbWUuaHRtbCcpIHsKKyAgICBpZiAodXJsID09IGhvc3Rf
aW5mby5IVFRQU19PUklHSU4gKyAnL3NhbXBsZS1kaXIvc2FtZS5odG1sJykgewogICAgICAgZXZl
bnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKAogICAgICAgICByZXN1bHQgKwogICAgICAgICAn
PGxpbmsgaWQ9InNhbWUtc2FtZSIgcmVsPSJpbXBvcnQiICcgKwotICAgICAgICAnaHJlZj0iJyAr
IGhvc3RfaW5mby5IVFRQU19PUklHSU4gKyAnL2R1bW15LWRpci9zYW1lLXNhbWUuaHRtbCI+JyAr
CisgICAgICAgICdocmVmPSInICsgaG9zdF9pbmZvLkhUVFBTX09SSUdJTiArICcvc2FtcGxlLWRp
ci9zYW1lLXNhbWUuaHRtbCI+JyArCiAgICAgICAgICc8bGluayBpZD0ic2FtZS1vdGhlciIgcmVs
PSJpbXBvcnQiICcgKwogICAgICAgICAnIGhyZWY9IicgKyBob3N0X2luZm8uSFRUUFNfUkVNT1RF
X09SSUdJTiArCi0gICAgICAgICcvZHVtbXktZGlyL3NhbWUtb3RoZXIuaHRtbCI+JykpOwotICAg
IH0gZWxzZSBpZiAodXJsID09IGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJR0lOICsgJy9kdW1t
eS1kaXIvb3RoZXIuaHRtbCcpIHsKKyAgICAgICAgJy9zYW1wbGUtZGlyL3NhbWUtb3RoZXIuaHRt
bCI+JykpOworICAgIH0gZWxzZSBpZiAodXJsID09IGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJ
R0lOICsgJy9zYW1wbGUtZGlyL290aGVyLmh0bWwnKSB7CiAgICAgICBldmVudC5yZXNwb25kV2l0
aChuZXcgUmVzcG9uc2UoCiAgICAgICAgIHJlc3VsdCArCiAgICAgICAgICc8bGluayBpZD0ib3Ro
ZXItc2FtZSIgcmVsPSJpbXBvcnQiICcgKwotICAgICAgICAnIGhyZWY9IicgKyBob3N0X2luZm8u
SFRUUFNfT1JJR0lOICsgJy9kdW1teS1kaXIvb3RoZXItc2FtZS5odG1sIj4nICsKKyAgICAgICAg
JyBocmVmPSInICsgaG9zdF9pbmZvLkhUVFBTX09SSUdJTiArICcvc2FtcGxlLWRpci9vdGhlci1z
YW1lLmh0bWwiPicgKwogICAgICAgICAnPGxpbmsgaWQ9Im90aGVyLW90aGVyIiByZWw9ImltcG9y
dCIgJyArCiAgICAgICAgICcgaHJlZj0iJyArIGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJR0lO
ICsKLSAgICAgICAgJy9kdW1teS1kaXIvb3RoZXItb3RoZXIuaHRtbCI+JykpOworICAgICAgICAn
L3NhbXBsZS1kaXIvb3RoZXItb3RoZXIuaHRtbCI+JykpOwogICAgIH0gZWxzZSB7CiAgICAgICBl
dmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UocmVzdWx0KSk7CiAgICAgfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLWlm
cmFtZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVl
c3QtcmVzb3VyY2VzLWlmcmFtZS5odHRwcy5odG1sCmluZGV4IGI5NzgzMDcxZTEyNTE1YjdlOWNi
NjgzY2UzMzk3MGEzMTMwNGNlMmQuLjg2ZTlmNGJiMzU5OGE1OTUxOTIwZDEzZTFlMDAyZDc4ZmUw
YWEyMWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1
ZXN0LXJlc291cmNlcy1pZnJhbWUuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMtaWZyYW1lLmh0dHBzLmh0bWwKQEAgLTQ0
LDcgKzQ0LDEwIEBAIGZ1bmN0aW9uIGxvYWRfY3NzX2ltYWdlKHVybCwgdHlwZSkgewogZnVuY3Rp
b24gbG9hZF9jc3NfaW1hZ2Vfc2V0KHVybCwgdHlwZSkgewogICBjb25zdCBkaXYgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYp
OwotICBkaXYuc3R5bGVbdHlwZV0gPSAnLXdlYmtpdC1pbWFnZS1zZXQodXJsKCcgKyB1cmwgKyAn
KSAxeCknOworICBkaXYuc3R5bGVbdHlwZV0gPSAnaW1hZ2Utc2V0KHVybCgnICsgdXJsICsgJykg
MXgpJzsKKyAgaWYgKCFkaXYuc3R5bGVbdHlwZV0pIHsKKyAgICBkaXYuc3R5bGVbdHlwZV0gPSAn
LXdlYmtpdC1pbWFnZS1zZXQodXJsKCcgKyB1cmwgKyAnKSAxeCknOworICB9CiB9CiAKIGZ1bmN0
aW9uIGxvYWRfc2NyaXB0X3dpdGhfaW50ZWdyaXR5KHVybCwgaW50ZWdyaXR5KSB7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMt
d29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QtcmVz
b3VyY2VzLXdvcmtlci5qcwppbmRleCA1YzllODZkNjY4NDY2MDVhOTZhOWZkNjE4ODllNzFiN2Fk
NGI3ZDAwLi45ODNjY2NiOGRiNzg5NWQ4ZDcyOTQzMDYxYjY2NjBhODZmZTk5YTA0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC1yZXNvdXJjZXMt
d29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0
LXJlc291cmNlcy13b3JrZXIuanMKQEAgLTExLDcgKzExLDcgQEAgc2VsZi5vbm1lc3NhZ2UgPSBl
ID0+IHsKIAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGUgPT4gewogICBjb25zdCB1
cmwgPSBlLnJlcXVlc3QudXJsOwotICBpZiAoIXVybC5pbmNsdWRlcygnZHVtbXk/dGVzdCcpKSB7
CisgIGlmICghdXJsLmluY2x1ZGVzKCdzYW1wbGU/dGVzdCcpKSB7CiAgICAgcmV0dXJuOwogICB9
CiAgIHBvcnQucG9zdE1lc3NhZ2UoewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVz
b3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLWlmcmFtZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJlcXVlc3QteGhyLWlmcmFtZS5odHRwcy5odG1sCmluZGV4
IDY1ZmE1MTcxYjNkNDMwYjA3YWNjZjkxNzE4MTAzM2Q2ZmNhYTNkZjAuLmIzZGRlYzFhNzAxYjQz
ODAyNWQ5YjVkZDIwNzU2NjJkYWRiNzliZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1pZnJhbWUuaHR0cHMuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItaWZyYW1lLmh0dHBzLmh0
bWwKQEAgLTMyLDcgKzMyLDcgQEAgZnVuY3Rpb24geGhyX3NlbmQodXJsX2Jhc2UsIG1ldGhvZCwg
ZGF0YSwgd2l0aF9jcmVkZW50aWFscykgewogICAgICAgaWYgKHdpdGhfY3JlZGVudGlhbHMpIHsK
ICAgICAgICAgeGhyLndpdGhDcmVkZW50aWFscyA9IHRydWU7CiAgICAgICB9Ci0gICAgICB4aHIu
b3BlbihtZXRob2QsIHVybF9iYXNlICsgJy9kdW1teT90ZXN0JywgdHJ1ZSk7CisgICAgICB4aHIu
b3BlbihtZXRob2QsIHVybF9iYXNlICsgJy9zYW1wbGU/dGVzdCcsIHRydWUpOwogICAgICAgeGhy
LnNlbmQoZGF0YSk7CiAgICAgfSk7CiB9CkBAIC0xNjEsNyArMTYxLDcgQEAgZnVuY3Rpb24gZm9y
bV9kYXRhX3Rlc3QoKSB7CiAgICAgICAgICAgJ1xyXG4nICsKICAgICAgICAgICAnZmlsZSBjb250
ZW50XHJcbicgKwogICAgICAgICAgICctLScgKyBib3VuZGFyeSArICctLVxyXG4nOwotICAgICAg
ICBhc3NlcnRfdHJ1ZShyZXNwb25zZS5ib2R5ID09PSBleHBlY3RlZF9ib2R5LCAiZm9ybSBkYXRh
IHJlc3BvbnNlIGNvbnRlbnQgaXMgYXMgZXhwZWN0ZWQiKTsKKyAgICAgICAgYXNzZXJ0X2VxdWFs
cyhyZXNwb25zZS5ib2R5LCBleHBlY3RlZF9ib2R5LCAiZm9ybSBkYXRhIHJlc3BvbnNlIGNvbnRl
bnQgaXMgYXMgZXhwZWN0ZWQiKTsKICAgICAgIH0pOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci13b3JrZXIu
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1l
cnJvci13b3JrZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjhkM2RiOTliY2M4MTFmOTU2MjA3MzVjODg3YTlk
OTFlNGRhMmMyZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLWVycm9yLXdvcmtlci5qcwpAQCAtMCwwICsxLDE5IEBA
CisidXNlIHN0cmljdCI7CisKK3NlbGYub25mZXRjaCA9IGV2ZW50ID0+IHsKKyAgaWYgKGV2ZW50
LnJlcXVlc3QudXJsLmVuZHNXaXRoKCJub24tZXhpc3RlbnQtc3RyZWFtLTEudHh0IikpIHsKKyAg
ICBjb25zdCByczEgPSBuZXcgUmVhZGFibGVTdHJlYW0oKTsKKyAgICBldmVudC5yZXNwb25kV2l0
aChuZXcgUmVzcG9uc2UocnMxKSk7CisgICAgcnMxLmNhbmNlbCgxKTsKKyAgfSBlbHNlIGlmIChl
dmVudC5yZXF1ZXN0LnVybC5lbmRzV2l0aCgibm9uLWV4aXN0ZW50LXN0cmVhbS0yLnR4dCIpKSB7
CisgICAgY29uc3QgcnMyID0gbmV3IFJlYWRhYmxlU3RyZWFtKHsKKyAgICAgIHN0YXJ0KGNvbnRy
b2xsZXIpIHsgY29udHJvbGxlci5lcnJvcigxKSB9CisgICAgfSk7CisgICAgZXZlbnQucmVzcG9u
ZFdpdGgobmV3IFJlc3BvbnNlKHJzMikpOworICB9IGVsc2UgaWYgKGV2ZW50LnJlcXVlc3QudXJs
LmVuZHNXaXRoKCJub24tZXhpc3RlbnQtc3RyZWFtLTMudHh0IikpIHsKKyAgICBjb25zdCByczMg
PSBuZXcgUmVhZGFibGVTdHJlYW0oeworICAgICAgcHVsbChjb250cm9sbGVyKSB7IGNvbnRyb2xs
ZXIuZXJyb3IoMSkgfQorICAgIH0pOworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25z
ZShyczMpKTsKKyAgfQorfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9mZXRjaC1yZXF1ZXN0LXhoci13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvZmV0Y2gtcmVxdWVzdC14aHItd29ya2VyLmpzCmluZGV4IDkxYjNhYmIxNGQ5YzY3NWEwYmQ4
ODYzNDRhMjY0ODJmMzZiYjU3NzAuLjRlNDI4Mzc0YmMyMjcxOTFjMWJmN2FjMjNkMjdiODIwYWE1
NmRkOWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1
ZXN0LXhoci13b3JrZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNo
LXJlcXVlc3QteGhyLXdvcmtlci5qcwpAQCAtMSw2ICsxLDYgQEAKIHNlbGYuYWRkRXZlbnRMaXN0
ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAgIHZhciB1cmwgPSBldmVudC5yZXF1
ZXN0LnVybDsKLSAgICBpZiAodXJsLmluZGV4T2YoJ2R1bW15P3Rlc3QnKSA9PSAtMSkgeworICAg
IGlmICh1cmwuaW5kZXhPZignc2FtcGxlP3Rlc3QnKSA9PSAtMSkgewogICAgICAgcmV0dXJuOwog
ICAgIH0KICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZl
KSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVzcG9u
c2UteGhyLWlmcmFtZS5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Zl
dGNoLXJlc3BvbnNlLXhoci1pZnJhbWUuaHR0cHMuaHRtbAppbmRleCA2MTJjOTM0MWViNzg1NzY4
YTNkNGY5YWQ1YmEyOTEwZmM5MGY2NzdkLi5jMjZlZWJlZTQ5ZDgzZTc2OGI5ZTU4ZjU1ZDZlNDY4
N2EyYzVjMTEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gt
cmVzcG9uc2UteGhyLWlmcmFtZS5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9mZXRjaC1yZXNwb25zZS14aHItaWZyYW1lLmh0dHBzLmh0bWwKQEAgLTEzLDcgKzEz
LDcgQEAgZnVuY3Rpb24geGhyX3NlbmQobWV0aG9kLCBkYXRhKSB7CiAgICAgICAgIHJlamVjdCgn
WEhSIHNob3VsZCBzdWNjZWVkLicpOwogICAgICAgfTsKICAgICAgIHhoci5yZXNwb25zZVR5cGUg
PSAndGV4dCc7Ci0gICAgICB4aHIub3BlbihtZXRob2QsICcuL2R1bW15P3Rlc3QnLCB0cnVlKTsK
KyAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4vc2FtcGxlP3Rlc3QnLCB0cnVlKTsKICAgICAgIHho
ci5zZW5kKGRhdGEpOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ZldGNoLXJlc3BvbnNlLXhoci13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvZmV0Y2gtcmVzcG9uc2UteGhyLXdvcmtlci5qcwppbmRleCA0NjVmYmM5MWJh
YTcxNjY5Y2E5YzNmMzIxMTdlZTgzNGRlODI5NGQwLi4wMzAxYjEyYzE4YTU0YjJjMjRlYzQzMGM0
NjkzOTA1NDVhYmQ3YTUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZmV0Y2gtcmVzcG9uc2UteGhyLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZmV0Y2gtcmVzcG9uc2UteGhyLXdvcmtlci5qcwpAQCAtMSw2ICsxLDYgQEAKIHNlbGYu
YWRkRXZlbnRMaXN0ZW5lcignZmV0Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAgIHZhciB1cmwg
PSBldmVudC5yZXF1ZXN0LnVybDsKLSAgICBpZiAodXJsLmluZGV4T2YoJ2R1bW15P3Rlc3QnKSA9
PSAtMSkgeworICAgIGlmICh1cmwuaW5kZXhPZignc2FtcGxlP3Rlc3QnKSA9PSAtMSkgewogICAg
ICAgcmV0dXJuOwogICAgIH0KICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUHJvbWlzZShmdW5j
dGlvbihyZXNvbHZlKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
ZmV0Y2gtcmV3cml0ZS13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0
Y2gtcmV3cml0ZS13b3JrZXIuanMKaW5kZXggZjJkNDllMjcwNmE0MGZiNTVmMDk4ZjVlMzNkYzZj
MTdhOTNiZjFjYi4uNDYzMWU4M2UwY2VhYWI1MDkyYTliODRkY2JiNDI5YTk5MWM5MTQ0NiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ZldGNoLXJld3JpdGUtd29ya2Vy
LmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXdyaXRlLXdvcmtl
ci5qcwpAQCAtMTMzLDYgKzEzMywxMCBAQCBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywg
ZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICAgICAgIH0KICAgICAgICAgICB9CiAKKyAgICAgICAg
ICBpZiAocGFyYW1zWydjbG9uZSddKSB7CisgICAgICAgICAgICByZXNwb25zZSA9IHJlc3BvbnNl
LmNsb25lKCk7CisgICAgICAgICAgfQorCiAgICAgICAgICAgLy8gfGNhY2hlfCBtZWFucyB0byBi
b3VuY2UgcmVzcG9uc2VzIHRocm91Z2ggQ2FjaGUgU3RvcmFnZSBhbmQgYmFjay4KICAgICAgICAg
ICBpZiAocGFyYW1zWydjYWNoZSddKSB7CiAgICAgICAgICAgICB2YXIgY2FjaGVOYW1lID0gImNh
Y2hlZC1mZXRjaGVzLSIgKyBwZXJmb3JtYW5jZS5ub3coKSArICItIiArCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2aWNld29y
a2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltbXV0YWJsZS1wcm90b3R5cGUt
c2VydmljZXdvcmtlci5qcwppbmRleCAzNDZiOTk4Y2VhYzAwNGI5M2EzZmM1MDU4MjhhMjYxNGZi
ZWYxNTYwLi5kOGE5NGFkNDZiZWZiMDg1NzkxZDEzZjIxZTY4NzBlMDkyODRhYmUwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2
aWNld29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbW11dGFibGUt
cHJvdG90eXBlLXNlcnZpY2V3b3JrZXIuanMKQEAgLTIsOSArMiw5IEBAIGZ1bmN0aW9uIHByb3Rv
dHlwZUNoYWluKGdsb2JhbCkgewogICBsZXQgcmVzdWx0ID0gW107CiAgIHdoaWxlIChnbG9iYWwg
IT09IG51bGwpIHsKICAgICBsZXQgdGhyb3duID0gZmFsc2U7Ci0gICAgbGV0IG5leHQgPSBnbG9i
YWwuX19wcm90b19fOworICAgIGxldCBuZXh0ID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKGdsb2Jh
bCk7CiAgICAgdHJ5IHsKLSAgICAgIGdsb2JhbC5fX3Byb3RvX18gPSB7fTsKKyAgICAgIE9iamVj
dC5zZXRQcm90b3R5cGVPZihnbG9iYWwsIHt9KTsKICAgICAgIHJlc3VsdC5wdXNoKCdtdXRhYmxl
Jyk7CiAgICAgfSBjYXRjaCAoZSkgewogICAgICAgcmVzdWx0LnB1c2goJ2ltbXV0YWJsZScpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1lY2hvLWNvb2tp
ZS13b3JrZXItbW9kdWxlLnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1l
Y2hvLWNvb2tpZS13b3JrZXItbW9kdWxlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhmMGI2OGU1YTNhYWU2Nzdm
ZjAxODFlOGM1MzZkYWI4OGQ2NWE4MzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvaW1wb3J0LWVjaG8tY29va2llLXdvcmtlci1tb2R1bGUucHkKQEAgLTAs
MCArMSw2IEBACitkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6CisgICMgVGhpcyBzY3JpcHQg
Z2VuZXJhdGVzIGEgd29ya2VyIHNjcmlwdCBmb3Igc3RhdGljIGltcG9ydHMgZnJvbSBtb2R1bGUK
KyAgIyBzZXJ2aWNlIHdvcmtlcnMuCisgIGhlYWRlcnMgPSBbKGInQ29udGVudC1UeXBlJywgYid0
ZXh0L2phdmFzY3JpcHQnKV0KKyAgYm9keSA9IGIiaW1wb3J0ICcuL2VjaG8tY29va2llLXdvcmtl
ci5weT9rZXk9JXMnIiAlIHJlcXVlc3QuR0VUW2Ina2V5J10KKyAgcmV0dXJuIGhlYWRlcnMsIGJv
ZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0
cy1jcm9zcy1vcmlnaW4td29ya2VyLnN1Yi5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4td29ya2VyLnN1Yi5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
NDMyODU0ZGI4YmM3ZjgyOTJjNDM0MzRkOGMyNGEzZmZlOTdkZWMwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdp
bi13b3JrZXIuc3ViLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydFNjcmlwdHMoJ2h0dHBzOi8ve3tk
b21haW5zW3d3dzFdfX06e3twb3J0c1todHRwc11bMF19fS9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1zY3JpcHRzLXZlcnNpb24ucHknKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0eXBlLWlmcmFtZS5o
dHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxvYnR5cGUt
aWZyYW1lLmh0dHBzLmh0bWwKaW5kZXggMWU2Y2FjYjU1ZDdmODBmNmM3MWUzYmU1MTNjMTBhNzU2
ZDY2NTQzYi4uMDRhOWNiNTE1ZTA5MjE1M2VlMDE2ZmE5YTNlM2RhNjM2MzVjNTViMSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxvYnR5cGUtaWZyYW1l
Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxv
YnR5cGUtaWZyYW1lLmh0dHBzLmh0bWwKQEAgLTE0LDcgKzE0LDcgQEAgZnVuY3Rpb24geGhyX3Nl
bmQobWV0aG9kLCBkYXRhKSB7CiAgICAgICAgIHJlamVjdCgnWEhSIG11c3Qgc3VjY2VlZC4nKTsK
ICAgICAgIH07CiAgICAgICB4aHIucmVzcG9uc2VUeXBlID0gJ3RleHQnOwotICAgICAgeGhyLm9w
ZW4obWV0aG9kLCAnLi9kdW1teT90ZXN0JywgdHJ1ZSk7CisgICAgICB4aHIub3BlbihtZXRob2Qs
ICcuL3NhbXBsZT90ZXN0JywgdHJ1ZSk7CiAgICAgICB4aHIuc2VuZChkYXRhKTsKICAgICB9KTsK
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0
eXBlLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWJsb2J0
eXBlLXdvcmtlci5qcwppbmRleCA5M2Y0OTZlZjQ0ZTcxM2NhMjQ2ZmI4MmUxY2JmNzEzOTExNDNi
Y2VmLi44NjVkYzMwZDQyODIyOGQ5ZmM1YzAxNjFkNjY5MzYwZjg0ZGY3NjYwIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1ibG9idHlwZS13b3JrZXIuanMK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtYmxvYnR5cGUtd29ya2Vy
LmpzCkBAIC0xLDYgKzEsNiBAQAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGZ1bmN0
aW9uKGV2ZW50KSB7CiAgICAgdmFyIHVybCA9IGV2ZW50LnJlcXVlc3QudXJsOwotICAgIGlmICh1
cmwuaW5kZXhPZignZHVtbXk/dGVzdCcpID09IC0xKSB7CisgICAgaWYgKHVybC5pbmRleE9mKCdz
YW1wbGU/dGVzdCcpID09IC0xKSB7CiAgICAgICByZXR1cm47CiAgICAgfQogICAgIGV2ZW50LnJl
c3BvbmRXaXRoKG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWhlYWRlci1pZnJhbWUuaHR0cHMuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZhbGlkLWhlYWRlci1pZnJhbWUuaHR0
cHMuaHRtbAppbmRleCA4MDUzMWI3OWRiOTU3MjNmODgwZDZiYjhmMzYzMzJmMWQ0MWFjM2RlLi44
ZjBlNmJhY2ExNzU3Y2ZjMThjOTI5NDM4YjcyNzUwOTIwMzAzMzQzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItaWZyYW1lLmh0dHBzLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLWlmcmFtZS5o
dHRwcy5odG1sCkBAIC0xMSw3ICsxMSw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKG1ldGhvZCwgZGF0
YSkgewogICAgICAgICByZXNvbHZlKCk7CiAgICAgICB9OwogICAgICAgeGhyLnJlc3BvbnNlVHlw
ZSA9ICd0ZXh0JzsKLSAgICAgIHhoci5vcGVuKG1ldGhvZCwgJy4vZHVtbXk/dGVzdCcsIHRydWUp
OworICAgICAgeGhyLm9wZW4obWV0aG9kLCAnLi9zYW1wbGU/dGVzdCcsIHRydWUpOwogICAgICAg
eGhyLnNlbmQoZGF0YSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvaW52YWxpZC1oZWFkZXItd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2ludmFsaWQtaGVhZGVyLXdvcmtlci5qcwppbmRleCAzMWU3ZjI5ZDA2ZmQ3ZTRm
MmQzODU2MDMzOWVjNDQ0NWVlYzUxMzI4Li44NTA4NzRiODExNmRhYmMyYTg2ZGU5YzE4M2NhNDMw
YjJhNDE1ZjA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW52YWxp
ZC1oZWFkZXItd29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbnZh
bGlkLWhlYWRlci13b3JrZXIuanMKQEAgLTEsNiArMSw2IEBACiBzZWxmLmFkZEV2ZW50TGlzdGVu
ZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICB2YXIgdXJsID0gZXZlbnQucmVxdWVz
dC51cmw7Ci0gICAgaWYgKHVybC5pbmRleE9mKCdkdW1teT90ZXN0JykgPT0gLTEpIHsKKyAgICBp
ZiAodXJsLmluZGV4T2YoJ3NhbXBsZT90ZXN0JykgPT0gLTEpIHsKICAgICAgIHJldHVybjsKICAg
ICB9CiAgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSkg
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEtaGVh
ZGVyLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEt
aGVhZGVyLWlmcmFtZS5odG1sCmluZGV4IDkwZTNmNjk4Y2ZhNmJiNmQxMmVlODE4NDk1M2I0Zjdm
YmRlNzE5ZTQuLmNmMmZhOGQxNGY3YzYwODlkMTE5NzllNGJlNDA5NGY0ZTdmYmFiMjUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4xLWhlYWRlci1pZnJh
bWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFk
ZXItaWZyYW1lLmh0bWwKQEAgLTksNyArOSw3IEBAIGZ1bmN0aW9uIHhocl9zZW5kKG1ldGhvZCwg
ZGF0YSkgewogICAgICAgICByZWplY3QoJ1hIUiBtdXN0IHN1Y2NlZWQuJyk7CiAgICAgICB9Owog
ICAgICAgeGhyLnJlc3BvbnNlVHlwZSA9ICd0ZXh0JzsKLSAgICAgIHhoci5vcGVuKG1ldGhvZCwg
Jy4vZHVtbXk/dGVzdCcsIHRydWUpOworICAgICAgeGhyLm9wZW4obWV0aG9kLCAnLi9zYW1wbGU/
dGVzdCcsIHRydWUpOwogICAgICAgeGhyLnNlbmQoZGF0YSk7CiAgICAgfSk7CiB9CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFkZXItd29ya2Vy
LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lzby1sYXRpbjEtaGVhZGVyLXdvcmtl
ci5qcwppbmRleCAzYWI1YzdlNzMxODZiNDlkODhlYWFlOTcxY2U4YzJhNmJlZjVkNDMxLi5kOWVj
Y2EyNzdiM2ZhZTViYzQ2OThmZjQ2N2E4NTcxNGJlN2IxNWEzIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvaXNvLWxhdGluMS1oZWFkZXItd29ya2VyLmpzCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pc28tbGF0aW4xLWhlYWRlci13b3JrZXIuanMKQEAg
LTEsNiArMSw2IEBACiBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZl
bnQpIHsKICAgICB2YXIgdXJsID0gZXZlbnQucmVxdWVzdC51cmw7Ci0gICAgaWYgKHVybC5pbmRl
eE9mKCdkdW1teT90ZXN0JykgPT0gLTEpIHsKKyAgICBpZiAodXJsLmluZGV4T2YoJ3NhbXBsZT90
ZXN0JykgPT0gLTEpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1jb250cm9sbGVyLWZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29u
dHJvbGxlci1mcmFtZS5odG1sCmluZGV4IGIzMzFmODhkNDcxNzllZjE1ZDNmMjYzNGY4NGQ2YTI3
OTEwMDE5MzQuLjU1MjBjM2EzMWJmNzBhODhlYzc0NDFmMjljYzdkNWFiMzQwMTMzMmYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1jb250
cm9sbGVyLWZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2xvY2Fs
LXVybC1pbmhlcml0LWNvbnRyb2xsZXItZnJhbWUuaHRtbApAQCAtMiw3ICsyLDcgQEAKIDxodG1s
PgogPHNjcmlwdD4KIAotY29uc3QgZmV0Y2hVUkwgPSBuZXcgVVJMKCdkdW1teS50eHQnLCB3aW5k
b3cubG9jYXRpb24pLmhyZWY7Citjb25zdCBmZXRjaFVSTCA9IG5ldyBVUkwoJ3NhbXBsZS50eHQn
LCB3aW5kb3cubG9jYXRpb24pLmhyZWY7CiAKIGNvbnN0IGZyYW1lQ29udHJvbGxlclRleHQgPQog
YDxzY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbG9jYWwt
dXJsLWluaGVyaXQtY29udHJvbGxlci13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvbG9jYWwtdXJsLWluaGVyaXQtY29udHJvbGxlci13b3JrZXIuanMKaW5kZXggOWQ4OTU1
ZjExMWY2ZjM2MjRkYThhMzFlMDMzNTQ0ZTczOGJhMjc1MS4uNGI3YWFkMGY1OGE4NTBmMGU5ZjY3
NjViODRhZTA4Y2NjYzYyZjZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2xvY2FsLXVybC1pbmhlcml0LWNvbnRyb2xsZXItd29ya2VyLmpzCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9sb2NhbC11cmwtaW5oZXJpdC1jb250cm9sbGVyLXdvcmtlci5q
cwpAQCAtMSw1ICsxLDUgQEAKIGFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZXZ0ID0+IHsKLSAg
aWYgKGV2dC5yZXF1ZXN0LnVybC5pbmNsdWRlcygnZHVtbXknKSkgeworICBpZiAoZXZ0LnJlcXVl
c3QudXJsLmluY2x1ZGVzKCdzYW1wbGUnKSkgewogICAgIGV2dC5yZXNwb25kV2l0aChuZXcgUmVz
cG9uc2UoJ2ludGVyY2VwdGVkJykpOwogICB9CiB9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2VyLWNyZWF0ZWQtZnJvbS13b3Jr
ZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29y
a2VyLWNyZWF0ZWQtZnJvbS13b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYzA0OGUyODhlOTAzZTZj
NTU4YzU1MThkMTMzZjJjMmVjOTYyMjNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL25lc3RlZC1ibG9iLXVybC13b3JrZXItY3JlYXRlZC1mcm9tLXdvcmtl
ci5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2NvbnN0
IGJhc2VMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsKK2NvbnN0IHdvcmtlclVybCA9IG5ldyBV
UkwoJ2NyZWF0ZS1ibG9iLXVybC13b3JrZXIuanMnLCBiYXNlTG9jYXRpb24pLmhyZWY7Citjb25z
dCB3b3JrZXIgPSBuZXcgV29ya2VyKHdvcmtlclVybCk7CisKK2Z1bmN0aW9uIGZldGNoX2luX3dv
cmtlcih1cmwpIHsKKyAgY29uc3QgcmVzb3VyY2VVcmwgPSBuZXcgVVJMKHVybCwgYmFzZUxvY2F0
aW9uKS5ocmVmOworICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICB3b3Jr
ZXIub25tZXNzYWdlID0gKGV2ZW50KSA9PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOwor
ICAgIH07CisgICAgd29ya2VyLnBvc3RNZXNzYWdlKHJlc291cmNlVXJsKTsKKyAgfSk7Cit9Cis8
L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQt
YmxvYi11cmwtd29ya2Vycy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25lc3Rl
ZC1ibG9iLXVybC13b3JrZXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjBlYWZjZDNlMDFjM2YxODU3ZWVl
N2ZjZWQ3OGEzYTQ5NGE4YWZiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9uZXN0ZWQtYmxvYi11cmwtd29ya2Vycy5odG1sCkBAIC0wLDAgKzEsMzggQEAK
KzwhZG9jdHlwZSBodG1sPgorPHNjcmlwdD4KK2NvbnN0IGJhc2VMb2NhdGlvbiA9IHdpbmRvdy5s
b2NhdGlvbjsKK2NvbnN0IHBhcmVudFdvcmtlclNjcmlwdCA9IGAKKyAgY29uc3QgY2hpbGRXb3Jr
ZXJTY3JpcHQgPSAnc2VsZi5vbm1lc3NhZ2UgPSBhc3luYyAoZSkgPT4geycgKworICAgICcgIGNv
bnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goZS5kYXRhKTsnICsKKyAgICAnICBjb25zdCB0ZXh0
ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpOycgKworICAgICcgIHNlbGYucG9zdE1lc3NhZ2UodGV4
dCk7JyArCisgICAgJ307JzsKKyAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtjaGlsZFdvcmtlclNj
cmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSk7CisgIGNvbnN0IGJsb2JVcmwgPSBV
UkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworICBjb25zdCBjaGlsZFdvcmtlciA9IG5ldyBXb3Jr
ZXIoYmxvYlVybCk7CisKKyAgLy8gV2hlbiBhIG1lc3NhZ2UgY29tZXMgZnJvbSB0aGUgcGFyZW50
IGZyYW1lLCBzZW5kcyBhIHJlc291cmNlIHVybCB0byB0aGUKKyAgLy8gY2hpbGQgd29ya2VyLgor
ICBzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7CisgICAgY2hpbGRXb3JrZXIucG9zdE1lc3NhZ2Uo
ZS5kYXRhKTsKKyAgfTsKKyAgLy8gV2hlbiBhIG1lc3NhZ2UgY29tZXMgZnJvbSB0aGUgY2hpbGQg
d29ya2VyLCBzZW5kcyBhIGNvbnRlbnQgb2YgZmV0Y2goKSB0bworICAvLyB0aGUgcGFyZW50IGZy
YW1lLgorICBjaGlsZFdvcmtlci5vbm1lc3NhZ2UgPSAoZSkgPT4geworICAgIHNlbGYucG9zdE1l
c3NhZ2UoZS5kYXRhKTsKKyAgfTsKK2A7Citjb25zdCBibG9iID0gbmV3IEJsb2IoW3BhcmVudFdv
cmtlclNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSk7Citjb25zdCBibG9iVXJs
ID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKK2NvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIo
YmxvYlVybCk7CisKK2Z1bmN0aW9uIGZldGNoX2luX3dvcmtlcih1cmwpIHsKKyAgY29uc3QgcmVz
b3VyY2VVcmwgPSBuZXcgVVJMKHVybCwgYmFzZUxvY2F0aW9uKS5ocmVmOworICByZXR1cm4gbmV3
IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICB3b3JrZXIub25tZXNzYWdlID0gKGV2ZW50KSA9
PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOworICAgIH07CisgICAgd29ya2VyLnBvc3RN
ZXNzYWdlKHJlc291cmNlVXJsKTsKKyAgfSk7Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9i
LXVybC13b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWQtd29y
a2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZmFkMmM5
MjI4Y2ViMTU3M2EwOWExOGNiYTQ4MGZkZDY3NDdjZGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25lc3RlZC13b3JrZXItY3JlYXRlZC1mcm9tLWJsb2It
dXJsLXdvcmtlci5odG1sCkBAIC0wLDAgKzEsMzMgQEAKKzwhZG9jdHlwZSBodG1sPgorPHNjcmlw
dD4KK2NvbnN0IGJhc2VMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsKK2NvbnN0IHBhcmVudFdv
cmtlclNjcmlwdCA9IGAKKyAgY29uc3Qgd29ya2VyVXJsID0KKyAgICBuZXcgVVJMKCdwb3N0bWVz
c2FnZS1mZXRjaGVkLXRleHQuanMnLCAnJHtiYXNlTG9jYXRpb259JykuaHJlZjsKKyAgY29uc3Qg
Y2hpbGRXb3JrZXIgPSBuZXcgV29ya2VyKHdvcmtlclVybCk7CisKKyAgLy8gV2hlbiBhIG1lc3Nh
Z2UgY29tZXMgZnJvbSB0aGUgcGFyZW50IGZyYW1lLCBzZW5kcyBhIHJlc291cmNlIHVybCB0byB0
aGUKKyAgLy8gY2hpbGQgd29ya2VyLgorICBzZWxmLm9ubWVzc2FnZSA9IChlKSA9PiB7CisgICAg
Y2hpbGRXb3JrZXIucG9zdE1lc3NhZ2UoZS5kYXRhKTsKKyAgfTsKKyAgLy8gV2hlbiBhIG1lc3Nh
Z2UgY29tZXMgZnJvbSB0aGUgY2hpbGQgd29ya2VyLCBzZW5kcyBhIGNvbnRlbnQgb2YgZmV0Y2go
KSB0bworICAvLyB0aGUgcGFyZW50IGZyYW1lLgorICBjaGlsZFdvcmtlci5vbm1lc3NhZ2UgPSAo
ZSkgPT4geworICAgIHNlbGYucG9zdE1lc3NhZ2UoZS5kYXRhKTsKKyAgfTsKK2A7Citjb25zdCBi
bG9iID0gbmV3IEJsb2IoW3BhcmVudFdvcmtlclNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNj
cmlwdCcgfSk7Citjb25zdCBibG9iVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKK2Nv
bnN0IHdvcmtlciA9IG5ldyBXb3JrZXIoYmxvYlVybCk7CisKK2Z1bmN0aW9uIGZldGNoX2luX3dv
cmtlcih1cmwpIHsKKyAgY29uc3QgcmVzb3VyY2VVcmwgPSBuZXcgVVJMKHVybCwgYmFzZUxvY2F0
aW9uKS5ocmVmOworICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICB3b3Jr
ZXIub25tZXNzYWdlID0gKGV2ZW50KSA9PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOwor
ICAgIH07CisgICAgd29ya2VyLnBvc3RNZXNzYWdlKHJlc291cmNlVXJsKTsKKyAgfSk7Cit9Cis8
L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uby1keW5h
bWljLWltcG9ydC5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uby1keW5hbWljLWlt
cG9ydC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5lY2VkZDZjNWQ3NWM3ZDY2NzU0M2EyY2JkMmVhODQ5MTk0ZDMx
YmM4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25vLWR5
bmFtaWMtaW1wb3J0LmpzCkBAIC0wLDAgKzEsMTggQEAKKy8qKiBAdHlwZSB7W25hbWU6IHN0cmlu
ZywgdXJsOiBzdHJpbmddW119ICovCitjb25zdCBpbXBvcnRVcmxUZXN0cyA9IFsKKyAgWyJNb2R1
bGUgVVJMIiwgIi4vYmFzaWMtbW9kdWxlLmpzIl0sCisgIC8vIEluIG5vLWR5bmFtaWMtaW1wb3J0
LWluLW1vZHVsZS5hbnkuanMsIHRoaXMgbW9kdWxlIGlzIGFsc28gc3RhdGljYWxseSBpbXBvcnRl
ZAorICBbIkFub3RoZXIgbW9kdWxlIFVSTCIsICIuL2Jhc2ljLW1vZHVsZS0yLmpzIl0sCisgIFsK
KyAgICAiTW9kdWxlIGRhdGE6IFVSTCIsCisgICAgImRhdGE6dGV4dC9qYXZhc2NyaXB0O2NoYXJz
ZXQ9dXRmLTgsIiArCisgICAgICBlbmNvZGVVUklDb21wb25lbnQoYGV4cG9ydCBkZWZhdWx0ICdo
ZWxsbyEnO2ApLAorICBdLAorXTsKKworZm9yIChjb25zdCBbbmFtZSwgdXJsXSBvZiBpbXBvcnRV
cmxUZXN0cykgeworICBwcm9taXNlX3Rlc3QoCisgICAgKHQpID0+IHByb21pc2VfcmVqZWN0c19q
cyh0LCBUeXBlRXJyb3IsIGltcG9ydCh1cmwpLCAiSW1wb3J0IG11c3QgcmVqZWN0IiksCisgICAg
bmFtZQorICApOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bl
cmZvcm1hbmNlLXRpbWVsaW5lLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9wZXJmb3JtYW5jZS10aW1lbGluZS13b3JrZXIuanMKaW5kZXggY2FjMzI3YzM0YmY5ZGYxODQ5
MTNjNTYxYjU4NGIwMzhmMzUwNGM5NC4uNmM2ZGZjYmQyODExNzM1NDk1MzVhZjljYmFiNGY0NjFi
MWUyYjIxYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3BlcmZvcm1h
bmNlLXRpbWVsaW5lLXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
cGVyZm9ybWFuY2UtdGltZWxpbmUtd29ya2VyLmpzCkBAIC0zMCwxMiArMzAsMTIgQEAgcHJvbWlz
ZV90ZXN0KGZ1bmN0aW9uKHRlc3QpIHsKICAgfSwgJ1VzZXIgVGltaW5nJyk7CiAKIHByb21pc2Vf
dGVzdChmdW5jdGlvbih0ZXN0KSB7Ci0gICAgcmV0dXJuIGZldGNoKCdkdW1teS50eHQnKQorICAg
IHJldHVybiBmZXRjaCgnc2FtcGxlLnR4dCcpCiAgICAgICAudGhlbihmdW5jdGlvbihyZXNwKSB7
CiAgICAgICAgICAgcmV0dXJuIHJlc3AudGV4dCgpOwogICAgICAgICB9KQogICAgICAgLnRoZW4o
ZnVuY3Rpb24odGV4dCkgewotICAgICAgICAgIHZhciBleHBlY3RlZFJlc291cmNlcyA9IFsndGVz
dGhhcm5lc3MuanMnLCAnZHVtbXkudHh0J107CisgICAgICAgICAgdmFyIGV4cGVjdGVkUmVzb3Vy
Y2VzID0gWyd0ZXN0aGFybmVzcy5qcycsICdzYW1wbGUudHh0J107CiAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCdyZXNvdXJjZScpLmxlbmd0aCwg
ZXhwZWN0ZWRSZXNvdXJjZXMubGVuZ3RoKTsKICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGV4cGVjdGVkUmVzb3VyY2VzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgIHZhciBlbnRy
eSA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoJ3Jlc291cmNlJylbaV07CkBAIC00OSw3
ICs0OSw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0ZXN0KSB7CiAgICAgICAgICAgICAgICAg
cmVzb2x2ZSgnYnVmZmVyZnVsbCcpOwogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIHBl
cmZvcm1hbmNlLnNldFJlc291cmNlVGltaW5nQnVmZmVyU2l6ZShleHBlY3RlZFJlc291cmNlcy5s
ZW5ndGgpOwotICAgICAgICAgICAgICBmZXRjaCgnZHVtbXkudHh0Jyk7CisgICAgICAgICAgICAg
IGZldGNoKCdzYW1wbGUudHh0Jyk7CiAgICAgICAgICAgfSk7CiAgICAgICAgIH0pCiAgICAgICAu
dGhlbihmdW5jdGlvbihyZXN1bHQpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9wb3N0bWVzc2FnZS1mZXRjaGVkLXRleHQuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZmV0Y2hlZC10ZXh0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlmYzY3MTcx
ZDA1ZGQyOGQ2MzE3ZTllMmFiOTg2YjBiNjhhN2ZjMTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZmV0Y2hlZC10ZXh0LmpzCkBAIC0w
LDAgKzEsNSBAQAorc2VsZi5vbm1lc3NhZ2UgPSBhc3luYyAoZSkgPT4geworICBjb25zdCByZXNw
b25zZSA9IGF3YWl0IGZldGNoKGUuZGF0YSk7CisgIGNvbnN0IHRleHQgPSBhd2FpdCByZXNwb25z
ZS50ZXh0KCk7CisgIHNlbGYucG9zdE1lc3NhZ2UodGV4dCk7Cit9OwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZGlyZWN0LXdvcmtlci5qcyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9yZWRpcmVjdC13b3JrZXIuanMKaW5kZXggZGRjYzJjZjU0Nzg5NDIy
OTJkYzhjNWUzMGQxNTZkYzQyODg2MzY1ZS4uODJlMjFmYzI2ZmRiOTQyMzYwMjBkZjk2OGViOWZh
M2IyODZkOWUxOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZGly
ZWN0LXdvcmtlci5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVkaXJlY3Qt
d29ya2VyLmpzCkBAIC0xMTcsNiArMTE3LDEzIEBAIHNlbGYuYWRkRXZlbnRMaXN0ZW5lcignZmV0
Y2gnLCBmdW5jdGlvbihldmVudCkgewogICAgIGV2ZW50LnJlc3BvbmRXaXRoKHdhaXRVbnRpbFBy
b21pc2UudGhlbihhc3luYyAoKSA9PiB7CiAgICAgICBpZiAocGFyYW1zWydzdyddID09ICdnZW4n
KSB7CiAgICAgICAgIHJldHVybiBSZXNwb25zZS5yZWRpcmVjdChwYXJhbXNbJ3VybCddKTsKKyAg
ICAgIH0gZWxzZSBpZiAocGFyYW1zWydzdyddID09ICdnZW4tbWFudWFsJykgeworICAgICAgICAv
LyBOb3RlIHRoaXMgZGlmZmVycyBmcm9tIFJlc3BvbnNlLnJlZGlyZWN0KCkgaW4gdGhhdCByZWxh
dGl2ZSBVUkxzIGFyZQorICAgICAgICAvLyBwcmVzZXJ2ZWQuCisgICAgICAgIHJldHVybiBuZXcg
UmVzcG9uc2UoIiIsIHsKKyAgICAgICAgICBzdGF0dXM6IDMwMSwKKyAgICAgICAgICBoZWFkZXJz
OiB7bG9jYXRpb246IHBhcmFtc1sndXJsJ119LAorICAgICAgICB9KTsKICAgICAgIH0gZWxzZSBp
ZiAocGFyYW1zWydzdyddID09ICdmZXRjaCcpIHsKICAgICAgICAgcmV0dXJuIGZldGNoKGV2ZW50
LnJlcXVlc3QpOwogICAgICAgfSBlbHNlIGlmIChwYXJhbXNbJ3N3J10gPT0gJ2ZldGNoLXVybCcp
IHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3RyYXRpb24t
dGVzdHMtYmFzaWMuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9u
LXRlc3RzLWJhc2ljLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZWRiOTgwYTBm
YzRkMWQyNDQxNTNhZmQ2MzU3YTU2OWFkOThkMTg3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3Ry
YXRpb24tdGVzdHMtYmFzaWMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw0NCArMCwwIEBACi0vLyBC
YXNpYyByZWdpc3RyYXRpb24gdGVzdHMgdGhhdCBzdWNjZWVkLiBXZSBkb24ndCB3YW50IHRvbyBt
YW55IHN1Y2Nlc3NmdWwKLS8vIHJlZ2lzdHJhdGlvbiB0ZXN0cyBpbiB0aGUgc2FtZSBmaWxlIHNp
bmNlIHN0YXJ0aW5nIGEgc2VydmljZSB3b3JrZXIgY2FuIGJlCi0vLyBzbG93LgotZnVuY3Rpb24g
cmVnaXN0cmF0aW9uX3Rlc3RzX2Jhc2ljKHJlZ2lzdGVyX21ldGhvZCwgY2hlY2tfZXJyb3JfdHlw
ZXMpIHsKLSAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICAgIHZhciBzY3JpcHQgPSAn
cmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi13b3JrZXIuanMnOwotICAgICAgdmFyIHNjb3BlID0gJ3Jl
c291cmNlcy9yZWdpc3RyYXRpb24vbm9ybWFsJzsKLSAgICAgIHJldHVybiByZWdpc3Rlcl9tZXRo
b2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSkKLSAgICAgICAgLnRoZW4oZnVuY3Rpb24ocmVnaXN0
cmF0aW9uKSB7Ci0gICAgICAgICAgICBhc3NlcnRfdHJ1ZSgKLSAgICAgICAgICAgICAgcmVnaXN0
cmF0aW9uIGluc3RhbmNlb2YgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbiwKLSAgICAgICAgICAg
ICAgJ1N1Y2Nlc3NmdWxseSByZWdpc3RlcmVkLicpOwotICAgICAgICAgICAgcmV0dXJuIHJlZ2lz
dHJhdGlvbi51bnJlZ2lzdGVyKCk7Ci0gICAgICAgICAgfSk7Ci0gICAgfSwgJ1JlZ2lzdGVyaW5n
IG5vcm1hbCBzY29wZScpOwotCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgICB2
YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9yZWdpc3RyYXRpb24td29ya2VyLmpzJzsKLSAgICAgIHZh
ciBzY29wZSA9ICdyZXNvdXJjZXMvcmVnaXN0cmF0aW9uL3Njb3BlLXdpdGgtZnJhZ21lbnQjcmVm
JzsKLSAgICAgIHJldHVybiByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSkK
LSAgICAgICAgLnRoZW4oZnVuY3Rpb24ocmVnaXN0cmF0aW9uKSB7Ci0gICAgICAgICAgICBhc3Nl
cnRfdHJ1ZSgKLSAgICAgICAgICAgICAgcmVnaXN0cmF0aW9uIGluc3RhbmNlb2YgU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbiwKLSAgICAgICAgICAgICAgJ1N1Y2Nlc3NmdWxseSByZWdpc3RlcmVk
LicpOwotICAgICAgICAgICAgYXNzZXJ0X2VxdWFscygKLSAgICAgICAgICAgICAgcmVnaXN0cmF0
aW9uLnNjb3BlLAotICAgICAgICAgICAgICBub3JtYWxpemVVUkwoJ3Jlc291cmNlcy9yZWdpc3Ry
YXRpb24vc2NvcGUtd2l0aC1mcmFnbWVudCcpLAotICAgICAgICAgICAgICAnQSBmcmFnbWVudCBz
aG91bGQgYmUgcmVtb3ZlZCBmcm9tIHNjb3BlJykKLSAgICAgICAgICAgIHJldHVybiByZWdpc3Ry
YXRpb24udW5yZWdpc3RlcigpOwotICAgICAgICAgIH0pOwotICAgIH0sICdSZWdpc3RlcmluZyBz
Y29wZSB3aXRoIGZyYWdtZW50Jyk7Ci0KLSAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAg
ICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi13b3JrZXIuanMnOwotICAg
ICAgdmFyIHNjb3BlID0gJ3Jlc291cmNlcy8nOwotICAgICAgcmV0dXJuIHJlZ2lzdGVyX21ldGhv
ZChzY3JpcHQsIHtzY29wZTogc2NvcGV9KQotICAgICAgICAudGhlbihmdW5jdGlvbihyZWdpc3Ry
YXRpb24pIHsKLSAgICAgICAgICAgIGFzc2VydF90cnVlKAotICAgICAgICAgICAgICByZWdpc3Ry
YXRpb24gaW5zdGFuY2VvZiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLAotICAgICAgICAgICAg
ICAnU3VjY2Vzc2Z1bGx5IHJlZ2lzdGVyZWQuJyk7Ci0gICAgICAgICAgICByZXR1cm4gcmVnaXN0
cmF0aW9uLnVucmVnaXN0ZXIoKTsKLSAgICAgICAgICB9KTsKLSAgICB9LCAnUmVnaXN0ZXJpbmcg
c2FtZSBzY29wZSBhcyB0aGUgc2NyaXB0IGRpcmVjdG9yeScpOwotfQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJhdGlvbi10ZXN0cy1zY3JpcHQuanMgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLXNjcmlwdC5qcwpp
bmRleCA0ZDA4ZWZkMjFmODczZjY4OTg4MDkwNGU4NmFmZjJjMTJmYWQ5OWE1Li5lNWJkYWY0Mjkx
YTQyMDVmYjUyMDVlYWIwYzc2ZWMwYmMwMmJkZDdiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLXNjcmlwdC5qcworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRlc3RzLXNjcmlwdC5qcwpAQCAtMSw2
ICsxLDYgQEAKIC8vIFJlZ2lzdHJhdGlvbiB0ZXN0cyB0aGF0IG1vc3RseSBleGVyY2lzZSB0aGUg
c2VydmljZSB3b3JrZXIgc2NyaXB0IGNvbnRlbnRzIG9yCiAvLyByZXNwb25zZS4KLWZ1bmN0aW9u
IHJlZ2lzdHJhdGlvbl90ZXN0c19zY3JpcHQocmVnaXN0ZXJfbWV0aG9kKSB7CitmdW5jdGlvbiBy
ZWdpc3RyYXRpb25fdGVzdHNfc2NyaXB0KHJlZ2lzdGVyX21ldGhvZCwgdHlwZSkgewogICBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvaW52
YWxpZC1jaHVua2VkLWVuY29kaW5nLnB5JzsKICAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMv
c2NvcGUvaW52YWxpZC1jaHVua2VkLWVuY29kaW5nLyc7CkBAIC00NiwxNCArNDYsNDUgQEAgZnVu
Y3Rpb24gcmVnaXN0cmF0aW9uX3Rlc3RzX3NjcmlwdChyZWdpc3Rlcl9tZXRob2QpIHsKICAgICAg
ICAgICAnUmVnaXN0cmF0aW9uIG9mIHNjcmlwdCBpbmNsdWRpbmcgdW5jYXVnaHQgZXhjZXB0aW9u
IHNob3VsZCBmYWlsLicpOwogICAgIH0sICdSZWdpc3RlcmluZyBzY3JpcHQgaW5jbHVkaW5nIHVu
Y2F1Z2h0IGV4Y2VwdGlvbicpOwogCi0gIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAg
ICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQtd29ya2VyLnB5P2ltcG9ydC1tYWxm
b3JtZWQtc2NyaXB0JzsKLSAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2NvcGUvaW1wb3J0
LW1hbGZvcm1lZC1zY3JpcHQnOwotICAgICAgcmV0dXJuIHByb21pc2VfcmVqZWN0c19qcyh0LAot
ICAgICAgICAgIFR5cGVFcnJvciwKLSAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7
c2NvcGU6IHNjb3BlfSksCi0gICAgICAgICAgJ1JlZ2lzdHJhdGlvbiBvZiBzY3JpcHQgaW1wb3J0
aW5nIG1hbGZvcm1lZCBzY3JpcHQgc2hvdWxkIGZhaWwuJyk7Ci0gICAgfSwgJ1JlZ2lzdGVyaW5n
IHNjcmlwdCBpbXBvcnRpbmcgbWFsZm9ybWVkIHNjcmlwdCcpOworICBpZiAodHlwZSA9PT0gJ2Ns
YXNzaWMnKSB7CisgICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgICAgICAgdmFyIHNj
cmlwdCA9ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5weT9pbXBvcnQtbWFsZm9ybWVkLXNj
cmlwdCc7CisgICAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2NvcGUvaW1wb3J0LW1hbGZv
cm1lZC1zY3JpcHQnOworICAgICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKHQsCisgICAg
ICAgICAgICBUeXBlRXJyb3IsCisgICAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7
c2NvcGU6IHNjb3BlfSksCisgICAgICAgICAgICAnUmVnaXN0cmF0aW9uIG9mIHNjcmlwdCBpbXBv
cnRpbmcgbWFsZm9ybWVkIHNjcmlwdCBzaG91bGQgZmFpbC4nKTsKKyAgICAgIH0sICdSZWdpc3Rl
cmluZyBzY3JpcHQgaW1wb3J0aW5nIG1hbGZvcm1lZCBzY3JpcHQnKTsKKyAgfQorCisgIGlmICh0
eXBlID09PSAnbW9kdWxlJykgeworICAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CisgICAg
ICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIucHk/dG9wLWxldmVs
LWF3YWl0JzsKKyAgICAgICAgdmFyIHNjb3BlID0gJ3Jlc291cmNlcy9zY29wZS90b3AtbGV2ZWwt
YXdhaXQnOworICAgICAgICByZXR1cm4gcHJvbWlzZV9yZWplY3RzX2pzKHQsCisgICAgICAgICAg
ICBUeXBlRXJyb3IsCisgICAgICAgICAgICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6
IHNjb3BlfSksCisgICAgICAgICAgICAnUmVnaXN0cmF0aW9uIG9mIHNjcmlwdCB3aXRoIHRvcC1s
ZXZlbCBhd2FpdCBzaG91bGQgZmFpbC4nKTsKKyAgICAgIH0sICdSZWdpc3RlcmluZyBzY3JpcHQg
d2l0aCB0b3AtbGV2ZWwgYXdhaXQnKTsKKworICAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7
CisgICAgICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIucHk/aW5z
dGFudGlhdGlvbi1lcnJvcic7CisgICAgICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvc2NvcGUv
aW5zdGFudGlhdGlvbi1lcnJvcic7CisgICAgICAgIHJldHVybiBwcm9taXNlX3JlamVjdHNfanMo
dCwKKyAgICAgICAgICAgIFR5cGVFcnJvciwKKyAgICAgICAgICAgIHJlZ2lzdGVyX21ldGhvZChz
Y3JpcHQsIHtzY29wZTogc2NvcGV9KSwKKyAgICAgICAgICAgICdSZWdpc3RyYXRpb24gb2Ygc2Ny
aXB0IHdpdGggbW9kdWxlIGluc3RhbnRpYXRpb24gZXJyb3Igc2hvdWxkIGZhaWwuJyk7CisgICAg
ICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IHdpdGggbW9kdWxlIGluc3RhbnRpYXRpb24gZXJyb3In
KTsKKworICAgIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CisgICAgICAgIHZhciBzY3JpcHQg
PSAncmVzb3VyY2VzL21hbGZvcm1lZC13b3JrZXIucHk/aW5zdGFudGlhdGlvbi1lcnJvci1hbmQt
dG9wLWxldmVsLWF3YWl0JzsKKyAgICAgICAgdmFyIHNjb3BlID0gJ3Jlc291cmNlcy9zY29wZS9p
bnN0YW50aWF0aW9uLWVycm9yLWFuZC10b3AtbGV2ZWwtYXdhaXQnOworICAgICAgICByZXR1cm4g
cHJvbWlzZV9yZWplY3RzX2pzKHQsCisgICAgICAgICAgICBUeXBlRXJyb3IsCisgICAgICAgICAg
ICByZWdpc3Rlcl9tZXRob2Qoc2NyaXB0LCB7c2NvcGU6IHNjb3BlfSksCisgICAgICAgICAgICAn
UmVnaXN0cmF0aW9uIG9mIHNjcmlwdCB3aXRoIG1vZHVsZSBpbnN0YW50aWF0aW9uIGVycm9yIGFu
ZCB0b3AtbGV2ZWwgYXdhaXQgc2hvdWxkIGZhaWwuJyk7CisgICAgICB9LCAnUmVnaXN0ZXJpbmcg
c2NyaXB0IHdpdGggbW9kdWxlIGluc3RhbnRpYXRpb24gZXJyb3IgYW5kIHRvcC1sZXZlbCBhd2Fp
dCcpOworICB9CiAKICAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKICAgICAgIHZhciBzY3Jp
cHQgPSAncmVzb3VyY2VzL25vLXN1Y2gtd29ya2VyLmpzJzsKQEAgLTY0LDE0ICs5NSwxNiBAQCBm
dW5jdGlvbiByZWdpc3RyYXRpb25fdGVzdHNfc2NyaXB0KHJlZ2lzdGVyX21ldGhvZCkgewogICAg
ICAgICAgICdSZWdpc3RyYXRpb24gb2Ygbm9uLWV4aXN0ZW50IHNjcmlwdCBzaG91bGQgZmFpbC4n
KTsKICAgICB9LCAnUmVnaXN0ZXJpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdCcpOwogCi0gIHByb21p
c2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxm
b3JtZWQtd29ya2VyLnB5P2ltcG9ydC1uby1zdWNoLXNjcmlwdCc7Ci0gICAgICB2YXIgc2NvcGUg
PSAncmVzb3VyY2VzL3Njb3BlL2ltcG9ydC1uby1zdWNoLXNjcmlwdCc7Ci0gICAgICByZXR1cm4g
cHJvbWlzZV9yZWplY3RzX2pzKHQsCi0gICAgICAgICAgVHlwZUVycm9yLAotICAgICAgICAgIHJl
Z2lzdGVyX21ldGhvZChzY3JpcHQsIHtzY29wZTogc2NvcGV9KSwKLSAgICAgICAgICAnUmVnaXN0
cmF0aW9uIG9mIHNjcmlwdCBpbXBvcnRpbmcgbm9uLWV4aXN0ZW50IHNjcmlwdCBzaG91bGQgZmFp
bC4nKTsKLSAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IGltcG9ydGluZyBub24tZXhpc3RlbnQg
c2NyaXB0Jyk7CisgIGlmICh0eXBlID09PSAnY2xhc3NpYycpIHsKKyAgICBwcm9taXNlX3Rlc3Qo
ZnVuY3Rpb24odCkgeworICAgICAgICB2YXIgc2NyaXB0ID0gJ3Jlc291cmNlcy9tYWxmb3JtZWQt
d29ya2VyLnB5P2ltcG9ydC1uby1zdWNoLXNjcmlwdCc7CisgICAgICAgIHZhciBzY29wZSA9ICdy
ZXNvdXJjZXMvc2NvcGUvaW1wb3J0LW5vLXN1Y2gtc2NyaXB0JzsKKyAgICAgICAgcmV0dXJuIHBy
b21pc2VfcmVqZWN0c19qcyh0LAorICAgICAgICAgICAgVHlwZUVycm9yLAorICAgICAgICAgICAg
cmVnaXN0ZXJfbWV0aG9kKHNjcmlwdCwge3Njb3BlOiBzY29wZX0pLAorICAgICAgICAgICAgJ1Jl
Z2lzdHJhdGlvbiBvZiBzY3JpcHQgaW1wb3J0aW5nIG5vbi1leGlzdGVudCBzY3JpcHQgc2hvdWxk
IGZhaWwuJyk7CisgICAgICB9LCAnUmVnaXN0ZXJpbmcgc2NyaXB0IGltcG9ydGluZyBub24tZXhp
c3RlbnQgc2NyaXB0Jyk7CisgIH0KIAogICBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAg
ICAgdmFyIHNjcmlwdCA9ICdyZXNvdXJjZXMvbWFsZm9ybWVkLXdvcmtlci5weT9jYXVnaHQtZXhj
ZXB0aW9uJzsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJj
ZS10aW1pbmctaWZyYW1lLnN1Yi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jl
c291cmNlLXRpbWluZy1pZnJhbWUuc3ViLmh0bWwKaW5kZXggNDFiYzJlNzdjMWI0YWNiM2E1N2E4
M2Y5Yzk4ODlmNGU5YzUzODEwMy4uMzg0YzI5YjUzNmJmMWRiODI5NTMyYjk0ODVkNDEwMjBmODVi
ZWQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jlc291cmNlLXRp
bWluZy1pZnJhbWUuc3ViLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Jl
c291cmNlLXRpbWluZy1pZnJhbWUuc3ViLmh0bWwKQEAgLTEsNiArMSw2IEBACiA8IURPQ1RZUEUg
aHRtbD4KIDxzY3JpcHQgc3JjPSJlbXB0eS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iZHVt
bXkuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InNhbXBsZS5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0icmVkaXJlY3QucHk/UmVkaXJlY3Q9ZW1wdHkuanMiPjwvc2NyaXB0PgogPGltZyBz
cmM9InNxdWFyZS5wbmciPgogPGltZyBzcmM9Imh0dHBzOi8ve3tob3N0c1thbHRdW119fTp7e3Bv
cnRzW2h0dHBzXVswXX19L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c3F1YXJlLnBuZyI+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVz
b3VyY2UtdGltaW5nLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNv
dXJjZS10aW1pbmctd29ya2VyLmpzCmluZGV4IDViYzZlZjM0NzQ4ZjZkZTRiNDE4ZmQxNmQyMjYx
YTQyNzY0ODNhNmEuLmI3NGU4Y2Q2YTIzNmJkN2M0NDc3OTEwYTA2NGYzNjZlM2RhODQ3MGIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmctd29y
a2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZXNvdXJjZS10aW1pbmct
d29ya2VyLmpzCkBAIC0xLDUgKzEsNSBAQAogc2VsZi5hZGRFdmVudExpc3RlbmVyKCdmZXRjaCcs
IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gIGlmIChldmVudC5yZXF1ZXN0LnVybC5pbmRleE9mKCdkdW1t
eS5qcycpICE9IC0xKSB7CisgIGlmIChldmVudC5yZXF1ZXN0LnVybC5pbmRleE9mKCdzYW1wbGUu
anMnKSAhPSAtMSkgewogICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBQcm9taXNlKHJlc29sdmUg
PT4gewogICAgICAgLy8gU2xpZ2h0bHkgZGVsYXkgdGhlIHJlc3BvbnNlIHNvIHdlIGVuc3VyZSB3
ZSBnZXQgYSBub24temVybwogICAgICAgLy8gZHVyYXRpb24uCkBAIC03LDYgKzcsNiBAQCBzZWxm
LmFkZEV2ZW50TGlzdGVuZXIoJ2ZldGNoJywgZnVuY3Rpb24oZXZlbnQpIHsKICAgICB9KSk7CiAg
IH0KICAgZWxzZSBpZiAoZXZlbnQucmVxdWVzdC51cmwuaW5kZXhPZignbWlzc2luZy5qcGc/U1dS
ZXNwb25kc1dpdGhGZXRjaCcpICE9IC0xKSB7Ci0gICAgZXZlbnQucmVzcG9uZFdpdGgoZmV0Y2go
J2R1bW15LnR4dD9TV0ZldGNoZWQnKSk7CisgICAgZXZlbnQucmVzcG9uZFdpdGgoZmV0Y2goJ3Nh
bXBsZS50eHQ/U1dGZXRjaGVkJykpOwogICB9CiB9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3IuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTEyOWVkNTFlYTU1MGMyMTBhYmM1M2UxMTIwOWU3YTNlOWRjMzZiMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2Vw
dG9yLmpzCkBAIC0wLDAgKzEsNDYgQEAKK2ltcG9ydFNjcmlwdHMoJy9jb21tb24vZ2V0LWhvc3Qt
aW5mby5zdWIuanMnKTsKKworY29uc3QgdGV4dCA9ICd3b3JrZXIgbG9hZGluZyBpbnRlcmNlcHRl
ZCBieSBzZXJ2aWNlIHdvcmtlcic7Citjb25zdCBkZWRpY2F0ZWRfd29ya2VyX3NjcmlwdCA9IGBw
b3N0TWVzc2FnZSgnJHt0ZXh0fScpO2A7Citjb25zdCBzaGFyZWRfd29ya2VyX3NjcmlwdCA9Cisg
ICAgYG9uY29ubmVjdCA9IGV2dCA9PiBldnQucG9ydHNbMF0ucG9zdE1lc3NhZ2UoJyR7dGV4dH0n
KTtgOworCitzZWxmLm9uZmV0Y2ggPSBldmVudCA9PiB7CisgIGNvbnN0IHVybCA9IGV2ZW50LnJl
cXVlc3QudXJsOworICBjb25zdCBkZXN0aW5hdGlvbiA9IGV2ZW50LnJlcXVlc3QuZGVzdGluYXRp
b247CisKKyAgLy8gUmVxdWVzdCBoYW5kbGVyIGZvciBhIHN5bnRoZXNpemVkIHJlc3BvbnNlLgor
ICBpZiAodXJsLmluZGV4T2YoJ3N5bnRoZXNpemVkJykgIT0gLTEpIHsKKyAgICBsZXQgc2NyaXB0
X2hlYWRlcnMgPSBuZXcgSGVhZGVycyh7ICJDb250ZW50LVR5cGUiOiAidGV4dC9qYXZhc2NyaXB0
IiB9KTsKKyAgICBpZiAoZGVzdGluYXRpb24gPT09ICd3b3JrZXInKQorICAgICAgZXZlbnQucmVz
cG9uZFdpdGgobmV3IFJlc3BvbnNlKGRlZGljYXRlZF93b3JrZXJfc2NyaXB0LCB7ICdoZWFkZXJz
Jzogc2NyaXB0X2hlYWRlcnMgfSkpOworICAgIGVsc2UgaWYgKGRlc3RpbmF0aW9uID09PSAnc2hh
cmVkd29ya2VyJykKKyAgICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5ldyBSZXNwb25zZShzaGFyZWRf
d29ya2VyX3NjcmlwdCwgeyAnaGVhZGVycyc6IHNjcmlwdF9oZWFkZXJzIH0pKTsKKyAgICBlbHNl
CisgICAgICBldmVudC5yZXNwb25kV2l0aChuZXcgUmVzcG9uc2UoJ1VuZXhwZWN0ZWQgcmVxdWVz
dCEgJyArIGRlc3RpbmF0aW9uKSk7CisgICAgcmV0dXJuOworICB9CisKKyAgLy8gUmVxdWVzdCBo
YW5kbGVyIGZvciBhIHNhbWUtb3JpZ2luIHJlc3BvbnNlLgorICBpZiAodXJsLmluZGV4T2YoJ3Nh
bWUtb3JpZ2luJykgIT0gLTEpIHsKKyAgICBldmVudC5yZXNwb25kV2l0aChmZXRjaCgncG9zdG1l
c3NhZ2Utb24tbG9hZC13b3JrZXIuanMnKSk7CisgICAgcmV0dXJuOworICB9CisKKyAgLy8gUmVx
dWVzdCBoYW5kbGVyIGZvciBhIGNyb3NzLW9yaWdpbiByZXNwb25zZS4KKyAgaWYgKHVybC5pbmRl
eE9mKCdjb3JzJykgIT0gLTEpIHsKKyAgICBjb25zdCBmaWxlbmFtZSA9ICdwb3N0bWVzc2FnZS1v
bi1sb2FkLXdvcmtlci5qcyc7CisgICAgY29uc3QgcGF0aCA9IChuZXcgVVJMKGZpbGVuYW1lLCBz
ZWxmLmxvY2F0aW9uKSkucGF0aG5hbWU7CisgICAgbGV0IG5ld191cmwgPSBnZXRfaG9zdF9pbmZv
KClbJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIHBhdGg7CisgICAgbGV0IG1vZGU7CisgICAgaWYg
KHVybC5pbmRleE9mKCduby1jb3JzJykgIT0gLTEpIHsKKyAgICAgIC8vIFRlc3Qgbm8tY29ycyBt
b2RlLgorICAgICAgbW9kZSA9ICduby1jb3JzJzsKKyAgICB9IGVsc2UgeworICAgICAgLy8gVGVz
dCBjb3JzIG1vZGUuCisgICAgICBuZXdfdXJsICs9ICc/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRy
b2wtQWxsb3ctT3JpZ2luLCopJzsKKyAgICAgIG1vZGUgPSAnY29ycyc7CisgICAgfQorICAgIGV2
ZW50LnJlc3BvbmRXaXRoKGZldGNoKG5ld191cmwsIHsgbW9kZTogbW9kZSB9KSk7CisgIH0KK307
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTJhMTc5
OTgwZGYyZmY2MGMyNTg4MjcxMTljNzhhNjQ1ZTFhNzRhNwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zYW1wbGUuaHRtbApAQCAtMCwwICsxLDIgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGJvZHk+SGVsbG8gd29ybGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zYW1wbGUudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3NhbXBsZS50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODAyOTkyYzQyMjBkZTE5YTkwNzY3ZjMwMDBhNzlhMzFi
OThkMGRmNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9z
YW1wbGUudHh0CkBAIC0wLDAgKzEgQEAKK0hlbGxvIHdvcmxkCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXJlZGly
ZWN0LXRvLXNjb3BlMi5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEvbW9k
dWxlLXdvcmtlci1pbXBvcnRpbmctcmVkaXJlY3QtdG8tc2NvcGUyLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFl
NjgxYmEzMGUwYjAxZjFlYzZjNjQyYWQ0ZGFjMTlmMGNjOWRjNjkKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0
aW5nLXJlZGlyZWN0LXRvLXNjb3BlMi5qcwpAQCAtMCwwICsxIEBACitpbXBvcnQgKiBhcyBtb2R1
bGUgZnJvbSAnLi9yZWRpcmVjdC5weT9SZWRpcmVjdD0vc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9zY29wZTIvaW1wb3J0ZWQtbW9kdWxlLXNjcmlwdC5qcyc7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXIt
aW1wb3J0aW5nLXNjb3BlMi5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEv
bW9kdWxlLXdvcmtlci1pbXBvcnRpbmctc2NvcGUyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUyODUwNTI0OWMy
ODE3MzU0NDE4MzAzMTlhOTQ2OGJlYmE4YmI1NDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL21vZHVsZS13b3JrZXItaW1wb3J0aW5nLXNjb3Bl
Mi5qcwpAQCAtMCwwICsxIEBACitpbXBvcnQgKiBhcyBtb2R1bGUgZnJvbSAnLi4vc2NvcGUyL2lt
cG9ydGVkLW1vZHVsZS1zY3JpcHQuanMnOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Njb3BlMS93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zY29wZTEvdzNjLWltcG9ydC5sb2cKaW5kZXggYTY3MDc3NTBmNDJjNjFkZTEzN2EwMThj
OTczOTljYWVhNDZkNDliYi4uNGVmNDY4YzliM2JjYTNiYWI0MDYxMDNiY2JjMjU1OTAyMTQ4MzQ3
YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS93M2MtaW1w
b3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUxL3czYy1pbXBv
cnQubG9nCkBAIC0xNCw0ICsxNCw2IEBAIFByb3BlcnR5IHZhbHVlcyByZXF1aXJpbmcgdmVuZG9y
IHByZWZpeGVzOgogTm9uZQogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBMaXN0IG9mIGZpbGVzOgorL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTEvbW9kdWxlLXdvcmtlci1pbXBvcnRpbmctcmVk
aXJlY3QtdG8tc2NvcGUyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMS9t
b2R1bGUtd29ya2VyLWltcG9ydGluZy1zY29wZTIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvc2NvcGUxL3JlZGlyZWN0LnB5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYTE4ZTcwNGEzYzU4ZmJkZTM5OTI4ZDJhY2JmYzA5NTBmNTZjNDVlYwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTIvaW1wb3J0ZWQtbW9kdWxl
LXNjcmlwdC5qcwpAQCAtMCwwICsxLDQgQEAKK2V4cG9ydCBjb25zdCBpbXBvcnRlZCA9ICdBIG1v
ZHVsZSBzY3JpcHQuJzsKK29ubWVzc2FnZSA9IG1zZyA9PiB7CisgICAgbXNnLnNvdXJjZS5wb3N0
TWVzc2FnZSgncG9uZycpOworfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291
cmNlcy9zY29wZTIvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c2NvcGUyL3czYy1pbXBvcnQubG9nCmluZGV4IDc2OTM3MzQ3NWNiMjE2OWJmODQzZTBkM2JkMTA1
N2RlNjg4ZDA2ZDcuLjU4YzUwZmFiYzRiNjA5NGJkZWQzNWExZjgxZjU1YTFmNjU1N2QyMTggMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zY29wZTIvdzNjLWltcG9ydC5s
b2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Njb3BlMi93M2MtaW1wb3J0Lmxv
ZwpAQCAtMTQsNCArMTQsNSBAQCBQcm9wZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVm
aXhlczoKIE5vbmUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogTGlzdCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL2ltcG9ydGVkLW1vZHVsZS1zY3JpcHQuanMKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2NvcGUyL3dvcmtlcl9pbnRlcmNlcHRpb25fcmVkaXJl
Y3Rfd2Vid29ya2VyLnB5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c3ViZGlyL2JsYW5rLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc3ViZGlyL2Js
YW5rLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYTNjM2E0Njg5YTYyYjQ1YjFlNDI5ZjZiN2E5NDY5MGU1NTZh
MTI1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9zdWJk
aXIvYmxhbmsuaHRtbApAQCAtMCwwICsxLDIgQEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkVt
cHR5IGRvYzwvdGl0bGU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
c3ViZGlyL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3N1YmRp
ci93M2MtaW1wb3J0LmxvZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NzU3YzFmOTE2MzQ3NWEwZTU1OTFhNjdjMDIx
MDRiNmI2MzkzYzc2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL3N1YmRpci93M2MtaW1wb3J0LmxvZwpAQCAtMCwwICsxLDE3IEBACitUaGUgdGVzdHMgaW4g
dGhpcyBkaXJlY3Rvcnkgd2VyZSBpbXBvcnRlZCBmcm9tIHRoZSBXM0MgcmVwb3NpdG9yeS4KK0Rv
IE5PVCBtb2RpZnkgdGhlc2UgdGVzdHMgZGlyZWN0bHkgaW4gV2ViS2l0LgorSW5zdGVhZCwgY3Jl
YXRlIGEgcHVsbCByZXF1ZXN0IG9uIHRoZSBXUFQgZ2l0aHViOgorCWh0dHBzOi8vZ2l0aHViLmNv
bS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0CisKK1RoZW4gcnVuIHRoZSBUb29scy9TY3JpcHRzL2lt
cG9ydC13M2MtdGVzdHMgaW4gV2ViS2l0IHRvIHJlaW1wb3J0CisKK0RvIE5PVCBtb2RpZnkgb3Ig
cmVtb3ZlIHRoaXMgZmlsZS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitQcm9wZXJ0aWVzIHJlcXVpcmlu
ZyB2ZW5kb3IgcHJlZml4ZXM6CitOb25lCitQcm9wZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRv
ciBwcmVmaXhlczoKK05vbmUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorTGlzdCBvZiBmaWxlczoKKy9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc3ViZGlyL2JsYW5rLmh0bWwKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMKaW5kZXggYmJkMTZhYmNlNGIz
NzAzYTJmNzQ5OWU3YzJjNGM3NTkwNTY2ZDMzZS4uM2Y2YTIwNTVmNjhiZDMzZDEyNDc3NGMzZjE0
MzAxYmE1M2Y3NjUzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rl
c3QtaGVscGVycy5zdWIuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3Qt
aGVscGVycy5zdWIuanMKQEAgLTkyLDU2ICs5Miw2NiBAQCBmdW5jdGlvbiB3YWl0X2Zvcl91cGRh
dGUodGVzdCwgcmVnaXN0cmF0aW9uKSB7CiAgICAgfSkpOwogfQogCi1mdW5jdGlvbiB3YWl0X2Zv
cl9zdGF0ZSh0ZXN0LCB3b3JrZXIsIHN0YXRlKSB7Ci0gIGlmICghd29ya2VyIHx8IHdvcmtlci5z
dGF0ZSA9PSB1bmRlZmluZWQpIHsKLSAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9y
KAotICAgICAgJ3dhaXRfZm9yX3N0YXRlIG11c3QgYmUgcGFzc2VkIGEgU2VydmljZVdvcmtlcicp
KTsKLSAgfQotICBpZiAod29ya2VyLnN0YXRlID09PSBzdGF0ZSkKLSAgICByZXR1cm4gUHJvbWlz
ZS5yZXNvbHZlKHN0YXRlKTsKLQotICBpZiAoc3RhdGUgPT09ICdpbnN0YWxsaW5nJykgewotICAg
IHN3aXRjaCAod29ya2VyLnN0YXRlKSB7CisvLyBSZXR1cm4gdHJ1ZSBpZiB8c3RhdGVfYXwgaXMg
bW9yZSBhZHZhbmNlZCB0aGFuIHxzdGF0ZV9ifC4KK2Z1bmN0aW9uIGlzX3N0YXRlX2FkdmFuY2Vk
KHN0YXRlX2EsIHN0YXRlX2IpIHsKKyAgaWYgKHN0YXRlX2IgPT09ICdpbnN0YWxsaW5nJykgewor
ICAgIHN3aXRjaCAoc3RhdGVfYSkgewogICAgICAgY2FzZSAnaW5zdGFsbGVkJzoKICAgICAgIGNh
c2UgJ2FjdGl2YXRpbmcnOgogICAgICAgY2FzZSAnYWN0aXZhdGVkJzoKICAgICAgIGNhc2UgJ3Jl
ZHVuZGFudCc6Ci0gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoCi0gICAg
ICAgICAgJ3dvcmtlciBpcyAnICsgd29ya2VyLnN0YXRlICsgJyBidXQgd2FpdGluZyBmb3IgJyAr
IHN0YXRlKSk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQogCi0gIGlmIChzdGF0
ZSA9PT0gJ2luc3RhbGxlZCcpIHsKLSAgICBzd2l0Y2ggKHdvcmtlci5zdGF0ZSkgeworICBpZiAo
c3RhdGVfYiA9PT0gJ2luc3RhbGxlZCcpIHsKKyAgICBzd2l0Y2ggKHN0YXRlX2EpIHsKICAgICAg
IGNhc2UgJ2FjdGl2YXRpbmcnOgogICAgICAgY2FzZSAnYWN0aXZhdGVkJzoKICAgICAgIGNhc2Ug
J3JlZHVuZGFudCc6Ci0gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoCi0g
ICAgICAgICAgJ3dvcmtlciBpcyAnICsgd29ya2VyLnN0YXRlICsgJyBidXQgd2FpdGluZyBmb3Ig
JyArIHN0YXRlKSk7CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQogCi0gIGlmIChz
dGF0ZSA9PT0gJ2FjdGl2YXRpbmcnKSB7Ci0gICAgc3dpdGNoICh3b3JrZXIuc3RhdGUpIHsKKyAg
aWYgKHN0YXRlX2IgPT09ICdhY3RpdmF0aW5nJykgeworICAgIHN3aXRjaCAoc3RhdGVfYSkgewog
ICAgICAgY2FzZSAnYWN0aXZhdGVkJzoKICAgICAgIGNhc2UgJ3JlZHVuZGFudCc6Ci0gICAgICAg
IHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoCi0gICAgICAgICAgJ3dvcmtlciBpcyAn
ICsgd29ya2VyLnN0YXRlICsgJyBidXQgd2FpdGluZyBmb3IgJyArIHN0YXRlKSk7CisgICAgICAg
IHJldHVybiB0cnVlOwogICAgIH0KICAgfQogCi0gIGlmIChzdGF0ZSA9PT0gJ2FjdGl2YXRlZCcp
IHsKLSAgICBzd2l0Y2ggKHdvcmtlci5zdGF0ZSkgeworICBpZiAoc3RhdGVfYiA9PT0gJ2FjdGl2
YXRlZCcpIHsKKyAgICBzd2l0Y2ggKHN0YXRlX2EpIHsKICAgICAgIGNhc2UgJ3JlZHVuZGFudCc6
Ci0gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoCi0gICAgICAgICAgJ3dv
cmtlciBpcyAnICsgd29ya2VyLnN0YXRlICsgJyBidXQgd2FpdGluZyBmb3IgJyArIHN0YXRlKSk7
CisgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQorICByZXR1cm4gZmFsc2U7Cit9CiAK
LSAgcmV0dXJuIG5ldyBQcm9taXNlKHRlc3Quc3RlcF9mdW5jKGZ1bmN0aW9uKHJlc29sdmUpIHsK
K2Z1bmN0aW9uIHdhaXRfZm9yX3N0YXRlKHRlc3QsIHdvcmtlciwgc3RhdGUpIHsKKyAgaWYgKCF3
b3JrZXIgfHwgd29ya2VyLnN0YXRlID09IHVuZGVmaW5lZCkgeworICAgIHJldHVybiBQcm9taXNl
LnJlamVjdChuZXcgRXJyb3IoCisgICAgICAnd2FpdF9mb3Jfc3RhdGUgbmVlZHMgYSBTZXJ2aWNl
V29ya2VyIG9iamVjdCB0byBiZSBwYXNzZWQuJykpOworICB9CisgIGlmICh3b3JrZXIuc3RhdGUg
PT09IHN0YXRlKQorICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoc3RhdGUpOworCisgIGlmIChp
c19zdGF0ZV9hZHZhbmNlZCh3b3JrZXIuc3RhdGUsIHN0YXRlKSkgeworICAgIHJldHVybiBQcm9t
aXNlLnJlamVjdChuZXcgRXJyb3IoCisgICAgICBgV2FpdGluZyBmb3IgJHtzdGF0ZX0gYnV0IHRo
ZSB3b3JrZXIgaXMgYWxyZWFkeSAke3dvcmtlci5zdGF0ZX0uYCkpOworICB9CisgIHJldHVybiBu
ZXcgUHJvbWlzZSh0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAg
ICAgIHdvcmtlci5hZGRFdmVudExpc3RlbmVyKCdzdGF0ZWNoYW5nZScsIHRlc3Quc3RlcF9mdW5j
KGZ1bmN0aW9uKCkgewogICAgICAgICAgIGlmICh3b3JrZXIuc3RhdGUgPT09IHN0YXRlKQogICAg
ICAgICAgICAgcmVzb2x2ZShzdGF0ZSk7CisKKyAgICAgICAgICBpZiAoaXNfc3RhdGVfYWR2YW5j
ZWQod29ya2VyLnN0YXRlLCBzdGF0ZSkpIHsKKyAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3Io
CisgICAgICAgICAgICAgIGBUaGUgc3RhdGUgb2YgdGhlIHdvcmtlciBiZWNvbWVzICR7d29ya2Vy
LnN0YXRlfSB3aGlsZSB3YWl0aW5nYCArCisgICAgICAgICAgICAgICAgYGZvciAke3N0YXRlfS5g
KSk7CisgICAgICAgICAgfQogICAgICAgICB9KSk7CiAgICAgfSkpOwogfQpAQCAtMjc0LDEzICsy
ODQsMTMgQEAgZnVuY3Rpb24gd2l0aF9zYW5kYm94ZWRfaWZyYW1lKHVybCwgc2FuZGJveCkgewog
ICAgIH0pOwogfQogCi0vLyBSZWdpc3RlcnMsIHdhaXRzIGZvciBhY3RpdmF0aW9uLCB0aGVuIHVu
cmVnaXN0ZXJzIG9uIGEgZHVtbXkgc2NvcGUuCisvLyBSZWdpc3RlcnMsIHdhaXRzIGZvciBhY3Rp
dmF0aW9uLCB0aGVuIHVucmVnaXN0ZXJzIG9uIGEgc2FtcGxlIHNjb3BlLgogLy8KIC8vIFRoaXMg
Y2FuIGJlIHVzZWQgdG8gd2FpdCBmb3IgYSBwZXJpb2Qgb2YgdGltZSBuZWVkZWQgdG8gcmVnaXN0
ZXIsCiAvLyBhY3RpdmF0ZSwgYW5kIHRoZW4gdW5yZWdpc3RlciBhIHNlcnZpY2Ugd29ya2VyLiAg
V2hlbiBjaGVja2luZyB0aGF0CiAvLyBjZXJ0YWluIGJlaGF2aW9yIGRvZXMgKk5PVCogaGFwcGVu
LCB0aGlzIGlzIHByZWZlcmFibGUgdG8gdXNpbmcgYW4KIC8vIGFyYml0cmFyeSBkZWxheS4KLWFz
eW5jIGZ1bmN0aW9uIHdhaXRfZm9yX2FjdGl2YXRpb25fb25fZHVtbXlfc2NvcGUodCwgd2luZG93
X29yX3dvcmtlcmdsb2JhbHNjb3BlKSB7Cithc3luYyBmdW5jdGlvbiB3YWl0X2Zvcl9hY3RpdmF0
aW9uX29uX3NhbXBsZV9zY29wZSh0LCB3aW5kb3dfb3Jfd29ya2VyZ2xvYmFsc2NvcGUpIHsKICAg
Y29uc3Qgc2NyaXB0ID0gJy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L2VtcHR5LXdvcmtlci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gJ3Jlc291cmNlcy90aGVyZS9pcy9u
by90aGVyZS90aGVyZT8nICsgRGF0ZS5ub3coKTsKICAgbGV0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0
IHdpbmRvd19vcl93b3JrZXJnbG9iYWxzY29wZS5uYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdp
c3RlcihzY3JpcHQsIHsgc2NvcGUgfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZXNvdXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NjZlMmU5
OTg0YjVkNmI1ZDNhNzk3Mzg1NDJmMWIyYjI0ZDFmNmIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5qcwpAQCAt
MCwwICsxLDEwIEBACisvLyBBZGQgYSB1bmlxdWUgVVVJRCBwZXIgcmVxdWVzdCB0byBpbmR1Y2Ug
c2VydmljZSB3b3JrZXIgc2NyaXB0IHVwZGF0ZS4KKy8vIFRpbWUgc3RhbXA6ICVVVUlEJQorCisv
LyBUaGUgc2VydmVyIGluamVjdHMgdGhlIHJlcXVlc3QgaGVhZGVycyBoZXJlIGFzIGEgSlNPTiBz
dHJpbmcuCitjb25zdCBoZWFkZXJzQXNKc29uID0gYCVIRUFERVJTJWA7Citjb25zdCBoZWFkZXJz
ID0gSlNPTi5wYXJzZShoZWFkZXJzQXNKc29uKTsKKworc2VsZi5hZGRFdmVudExpc3RlbmVyKCdt
ZXNzYWdlJywgYXN5bmMgKGUpID0+IHsKKyAgZS5zb3VyY2UucG9zdE1lc3NhZ2UoaGVhZGVycyk7
Cit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LXJlcXVl
c3QtbW9kZS13b3JrZXIucHkgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1yZXF1
ZXN0LW1vZGUtd29ya2VyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg0NDk4NDFhOTkzMDc5NmZkY2ZmMDMwN2Mx
ZTJiMDQzYjJhNmI3ZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2VyLnB5CkBAIC0wLDAgKzEsMjIgQEAKK2ltcG9y
dCBqc29uCitpbXBvcnQgb3MKK2ltcG9ydCB1dWlkCitpbXBvcnQgc3lzCisKK2Zyb20gd3B0c2Vy
dmUudXRpbHMgaW1wb3J0IGlzb21vcnBoaWNfZGVjb2RlCisKK2RlZiBtYWluKHJlcXVlc3QsIHJl
c3BvbnNlKToKKyAgcGF0aCA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoaXNvbW9ycGhp
Y19kZWNvZGUoX19maWxlX18pKSwKKyAgICAgICAgICAgICAgICAgICAgICB1InRlc3QtcmVxdWVz
dC1tb2RlLXdvcmtlci5qcyIpCisgIGJvZHkgPSBvcGVuKHBhdGgsIHUicmIiKS5yZWFkKCkKKwor
ICBkYXRhID0ge2lzb21vcnBoaWNfZGVjb2RlKGtleSk6aXNvbW9ycGhpY19kZWNvZGUocmVxdWVz
dC5oZWFkZXJzW2tleV0pIGZvciBrZXksIHZhbHVlIGluIHJlcXVlc3QuaGVhZGVycy5pdGVtcygp
fQorCisgIGJvZHkgPSBib2R5LnJlcGxhY2UoYiIlSEVBREVSUyUiLCBqc29uLmR1bXBzKGRhdGEp
LmVuY29kZSgidXRmLTgiKSkKKyAgYm9keSA9IGJvZHkucmVwbGFjZShiIiVVVUlEJSIsIHN0cih1
dWlkLnV1aWQ0KCkpLmVuY29kZSgidXRmLTgiKSkKKworICBoZWFkZXJzID0gW10KKyAgaGVhZGVy
cy5hcHBlbmQoKGIiRVRhZyIsIGIiZXRhZyIpKQorICBoZWFkZXJzLmFwcGVuZCgoYiJDb250ZW50
LVR5cGUiLCBiJ3RleHQvamF2YXNjcmlwdCcpKQorCisgIHJldHVybiBoZWFkZXJzLCBib2R5CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdGhhcm5lc3MtaGVscGVy
cy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpz
CmluZGV4IDdiN2I1ZWZlNjliZGU3MThjODBmODI3NjZiN2FhZmM0OWMwNDE4NTQuLmIxYTViOTYw
ZTA2NTZhYzM2ZTU1M2M3MDk2NWFlYmY3YjgzNDRjOTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy90ZXN0aGFybmVzcy1oZWxwZXJzLmpzCkBAIC0yOCw3ICsyOCw3IEBA
IHNlbGYuYXNzZXJ0X29iamVjdF9lcXVhbHMgPSBmdW5jdGlvbihhY3R1YWwsIGV4cGVjdGVkLCBk
ZXNjcmlwdGlvbikgewogICAgICAgYXNzZXJ0X2VxdWFscyhhY3R1YWwsIGV4cGVjdGVkLCBwcmVm
aXgpOwogICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBhc3NlcnRfdHJ1ZSh0eXBlb2YgZXhwZWN0
ZWQgPT09ICdvYmplY3QnLCBwcmVmaXgpOworICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGV4cGVj
dGVkLCAnb2JqZWN0JywgcHJlZml4KTsKICAgICBhc3NlcnRfZXF1YWxzKG9iamVjdF9zdGFjay5p
bmRleE9mKGFjdHVhbCksIC0xLAogICAgICAgICAgICAgICAgICAgcHJlZml4ICsgJyBtdXN0IG5v
dCBjb250YWluIGN5Y2xpYyByZWZlcmVuY2VzLicpOwogCkBAIC0xMDcsNyArMTA3LDcgQEAgZnVu
Y3Rpb24gYXNzZXJ0X2FycmF5X29iamVjdHNfZXF1YWxzKGFjdHVhbCwgZXhwZWN0ZWQsIGRlc2Ny
aXB0aW9uKSB7CiAvLyBGSVhNRTogUmVtb3ZlIGFzc2VydF93aWxsX2JlX2lkbF9hdHRyaWJ1dGUg
b25jZSB3ZSBjb21wbGV0ZSB0aGUgdHJhbnNpdGlvbgogLy8gb2YgbW92aW5nIHRoZSBET00gYXR0
cmlidXRlcyB0byBwcm90b3R5cGUgY2hhaW5zLiAgKGh0dHA6Ly9jcmJ1Zy5jb20vNDMzOTQpCiBm
dW5jdGlvbiBhc3NlcnRfd2lsbF9iZV9pZGxfYXR0cmlidXRlKG9iamVjdCwgYXR0cmlidXRlX25h
bWUsIGRlc2NyaXB0aW9uKSB7Ci0gIGFzc2VydF90cnVlKHR5cGVvZiBvYmplY3QgPT09ICJvYmpl
Y3QiLCBkZXNjcmlwdGlvbik7CisgIGFzc2VydF9lcXVhbHModHlwZW9mIG9iamVjdCwgIm9iamVj
dCIsIGRlc2NyaXB0aW9uKTsKIAogICBhc3NlcnRfdHJ1ZSgiaGFzT3duUHJvcGVydHkiIGluIG9i
amVjdCwgZGVzY3JpcHRpb24pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvdHlwZS1jaGVjay13b3JrZXIuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMv
dHlwZS1jaGVjay13b3JrZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTc3OWUyMzIzZDkyYzRjMWNmMmI1Yjc4
OTkzMmY4ZTU3ZDg2MDU2MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy90eXBlLWNoZWNrLXdvcmtlci5qcwpAQCAtMCwwICsxLDEwIEBACitsZXQgdHlwZSA9
ICcnOwordHJ5IHsKKyAgaW1wb3J0U2NyaXB0cygnZW1wdHkuanMnKTsKKyAgdHlwZSA9ICdjbGFz
c2ljJzsKK30gY2F0Y2ggKGUpIHsKKyAgdHlwZSA9ICdtb2R1bGUnOworfQorb25tZXNzYWdlID0g
ZSA9PiB7CisgIGUuc291cmNlLnBvc3RNZXNzYWdlKHR5cGUpOworfTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJlZ2lzdGVyLWltbWVkaWF0ZWx5LWhlbHBlcnMu
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdW5yZWdpc3Rlci1pbW1lZGlhdGVseS1o
ZWxwZXJzLmpzCmluZGV4IDg2ZmIyNGQ4Zjk4OGM4MTBhMjMzMGYxNDFhYjkzNDM5ZDIwMzQ5OTUu
LjkxYTMwZGU1Yjc3N2Y5ZDUyZmVkNmVmNzI0YmQ1MWU2MDQ5YWYzZjIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJlZ2lzdGVyLWltbWVkaWF0ZWx5LWhlbHBlcnMu
anMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3VucmVnaXN0ZXItaW1tZWRpYXRl
bHktaGVscGVycy5qcwpAQCAtMTQsNiArMTQsNiBAQCBhc3luYyBmdW5jdGlvbiBhc3NlcnRfbm9f
cmVnaXN0cmF0aW9uc19leGlzdCgpIHsKIGFzeW5jIGZ1bmN0aW9uIGFkZF9jb250cm9sbGVkX2lm
cmFtZSh0ZXN0LCB1cmwpIHsKICAgY29uc3QgZnJhbWUgPSBhd2FpdCB3aXRoX2lmcmFtZSh1cmwp
OwogICB0ZXN0LmFkZF9jbGVhbnVwKCgpID0+IHsgZnJhbWUucmVtb3ZlKCk7IH0pOwotICBhc3Nl
cnRfdHJ1ZShmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRy
b2xsZXIgIT09IG51bGwpOworICBhc3NlcnRfbm90X2VxdWFscyhmcmFtZS5jb250ZW50V2luZG93
Lm5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIsIG51bGwpOwogICByZXR1cm4gZnJh
bWU7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdzNjLWltcG9y
dC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvdzNjLWltcG9ydC5sb2cKaW5kZXgg
MGVmNmMxNmM3ZTViNTFiMjFlYzZmNmRhMDVlNjg2OWQ5NzAyMmYxOS4uMzNhZTYyNmVlZmRlODdi
NGI4ZThiZTdiZGU4MWRmMjlkZGFkMWU2MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL3czYy1pbXBvcnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy93M2MtaW1wb3J0LmxvZwpAQCAtMjcsOSArMjcsMTIgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYXBwY2FjaGUtb3JkZXJpbmcuaXMtYXBwY2FjaGVkLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvYXBwY2FjaGUtb3JkZXJpbmcuaXMtYXBw
Y2FjaGVkLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2FwcGNhY2hlLW9yZGVyaW5n
Lm1hbmlmZXN0CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS0yLmpz
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2Jhc2ljLW1vZHVsZS5qcwogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9ibGFuay5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2J5dGVjaGVjay13b3JrZXItaW1wb3J0ZWQtc2NyaXB0LnB5CiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVzb3VyY2VzL2J5dGVjaGVjay13b3JrZXIucHkKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvY2xhaW0tYmxvYi11cmwtd29ya2VyLWZldGNoLWlmcmFtZS5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL2NsYWltLW5lc3RlZC13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xhaW0tbmVzdGVkLXdvcmtlci1mZXRjaC1w
YXJlbnQtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsYWltLXNoYXJl
ZC13b3JrZXItZmV0Y2gtaWZyYW1lLmh0bWwKQEAgLTQzLDYgKzQ2LDggQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLWZyYW1lLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LW5hdmlnYXRlLXdvcmtlci5q
cwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtbmF2aWdhdGVkLWZyYW1lLmh0
bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50LXVybC1vZi1ibG9iLXVybC13
b3JrZXIuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnQtdXJsLW9mLWJs
b2ItdXJsLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jbGllbnRzLWZy
YW1lLWZyZWV6ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NsaWVudHMtZ2V0
LWNsaWVudC10eXBlcy1mcmFtZS13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJj
ZXMvY2xpZW50cy1nZXQtY2xpZW50LXR5cGVzLWZyYW1lLmh0bWwKQEAgLTUzLDYgKzU4LDcgQEAg
TGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1nZXQt
b3RoZXItb3JpZ2luLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1n
ZXQtcmVzdWx0aW5nQ2xpZW50SWQtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3Vy
Y2VzL2NsaWVudHMtZ2V0LXdvcmtlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9j
bGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL2NsaWVudHMtbWF0Y2hhbGwtY2xpZW50LXR5cGVzLWRlZGljYXRlZC13b3JrZXIu
anMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1tYXRjaGFsbC1jbGllbnQt
dHlwZXMtaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY2xpZW50cy1t
YXRjaGFsbC1jbGllbnQtdHlwZXMtc2hhcmVkLXdvcmtlci5qcwpAQCAtNjEsOSArNjcsOCBAQCBM
aXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jb3JzLWFwcHJvdmVk
LnR4dAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jb3JzLWFwcHJvdmVkLnR4dC5oZWFk
ZXJzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2NvcnMtZGVuaWVkLnR4dAotL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3Jlc291cmNlcy9kdW1teS13b3JrZXItaW50ZXJjZXB0b3IuanMKLS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZHVtbXkuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy9kdW1teS50eHQKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvY3JlYXRlLWJs
b2ItdXJsLXdvcmtlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9jcmVhdGUtb3V0
LW9mLXNjb3BlLXdvcmtlci5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2VjaG8t
Y29udGVudC5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9lY2hvLWNvb2tpZS13b3Jr
ZXIucHkKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZWNoby1tZXNzYWdlLXRvLXNvdXJj
ZS13b3JrZXIuanMKQEAgLTEzOSw2ICsxNDQsNyBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy1pZnJhbWUuaHR0cHMu
aHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXJlc291cmNl
cy13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14
aHItaWZyYW1lLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gt
cmVxdWVzdC14aHItc3luYy1lcnJvci13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNv
dXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3Jlc291cmNlcy9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLW9uLXdvcmtlci13b3JrZXIuanMK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvZmV0Y2gtcmVxdWVzdC14aHItc3luYy13b3Jr
ZXIuanMKQEAgLTE1NSwxMiArMTYxLDE0IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL2h0dHAtdG8taHR0cHMtcmVkaXJlY3QtYW5kLXJlZ2lzdGVyLWlmcmFt
ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2lmcmFtZS13aXRoLWltYWdlLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2
aWNld29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1lY2hvLWNv
b2tpZS13b3JrZXItbW9kdWxlLnB5CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9y
dC1lY2hvLWNvb2tpZS13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1w
b3J0LW1pbWUtdHlwZS13b3JrZXIucHkKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1w
b3J0LXJlbGF0aXZlLnhzbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2Ny
aXB0cy00MDQtYWZ0ZXItdXBkYXRlLXBsdXMtdXBkYXRlLXdvcmtlci5qcwogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy00MDQtYWZ0ZXItdXBkYXRlLmpzCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvcmVzb3VyY2VzL2ltcG9ydC1zY3JpcHRzLTQwNC5qcworL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy1jcm9zcy1vcmlnaW4td29ya2VyLnN1
Yi5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2NyaXB0cy1kaWZmLXJl
c291cmNlLW1hcC13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvaW1wb3J0
LXNjcmlwdHMtZWNoby5weQogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9pbXBvcnQtc2Ny
aXB0cy1nZXQucHkKQEAgLTIwOSw4ICsyMTcsMTIgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvbmF2aWdhdGlvbi1yZWRpcmVjdC10by1odHRwLWlmcmFtZS5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25hdmlnYXRpb24tcmVkaXJlY3QtdG8t
aHR0cC13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbmF2aWdhdGlvbi10
aW1pbmctd29ya2VyLmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL25lc3RlZC1ibG9i
LXVybC13b3JrZXItY3JlYXRlZC1mcm9tLXdvcmtlci5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
cmVzb3VyY2VzL25lc3RlZC1ibG9iLXVybC13b3JrZXJzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvbmVzdGVkLWlmcmFtZS1wYXJlbnQuaHRtbAorL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3Jlc291cmNlcy9uZXN0ZWQtd29ya2VyLWNyZWF0ZWQtZnJvbS1ibG9iLXVybC13b3JrZXIuaHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9uZXN0ZWRfbG9hZF93b3JrZXIuanMKKy9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvbm8tZHluYW1pYy1pbXBvcnQuanMKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvbm90aWZpY2F0aW9uX2ljb24ucHkKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9yZXNvdXJjZXMvb2JqZWN0LWltYWdlLWlzLW5vdC1pbnRlcmNlcHRlZC1pZnJhbWUuaHRt
bAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9vYmplY3QtaXMtbm90LWludGVyY2VwdGVk
LWlmcmFtZS5odG1sCkBAIC0yNDUsNiArMjU3LDcgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtYmxvYi11cmwuanMKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtZGljdGlvbmFyeS10cmFuc2ZlcmFibGVzLXdv
cmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1lY2hvLXdv
cmtlci5qcworL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9wb3N0bWVzc2FnZS1mZXRjaGVk
LXRleHQuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcG9zdG1lc3NhZ2UtbXNncG9y
dC10by1jbGllbnQtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bvc3Rt
ZXNzYWdlLW9uLWxvYWQtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3Bv
c3RtZXNzYWdlLXRvLWNsaWVudC13b3JrZXIuanMKQEAgLTI1OCw3ICsyNzEsNiBAQCBMaXN0IG9m
IGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWZlcnJlci1wb2xpY3ktaWZy
YW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0ZXItY2xvc2VkLXdp
bmRvdy1pZnJhbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3Rlci1p
ZnJhbWUuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy9yZWdpc3RyYXRpb24tdGVz
dHMtYmFzaWMuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0aW9uLXRl
c3RzLW1pbWUtdHlwZXMuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVnaXN0cmF0
aW9uLXRlc3RzLXNjb3BlLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3JlZ2lzdHJh
dGlvbi10ZXN0cy1zY3JpcHQtdXJsLmpzCkBAIC0yNzUsNiArMjg3LDkgQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVzcG9uZC13aXRoLWJvZHktYWNjZXNz
ZWQtcmVzcG9uc2UtaWZyYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvcmVz
cG9uZC13aXRoLWJvZHktYWNjZXNzZWQtcmVzcG9uc2Utd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL3Jlc3BvbmQtd2l0aC1ib2R5LWFjY2Vzc2VkLXJlc3BvbnNlLmpzb25w
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3Iu
anMKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLmh0bWwKKy9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvc2FtcGxlLnR4dAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy9zYW5kYm94ZWQtaWZyYW1lLWZldGNoLWV2ZW50LWlmcmFtZS5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL3NhbmRib3hlZC1pZnJhbWUtZmV0Y2gtZXZlbnQtaWZyYW1lLnB5CiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3NhbmRib3hlZC1pZnJhbWUtZmV0Y2gtZXZlbnQt
d29ya2VyLmpzCkBAIC0yOTksOCArMzE0LDExIEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3QtaGVscGVycy5zdWIuanMKIC9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9yZXNvdXJjZXMvdGVzdC1yZXF1ZXN0LWhlYWRlcnMtd29ya2VyLmpzCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvcmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1oZWFkZXJzLXdvcmtlci5weQorL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3Jlc291cmNlcy90ZXN0LXJlcXVlc3QtbW9kZS13b3JrZXIuanMKKy9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9yZXNvdXJjZXMvdGVzdC1yZXF1ZXN0LW1vZGUtd29ya2VyLnB5CiAvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLWhlbHBlcnMuanMKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9yZXNvdXJjZXMvdHJpY2tsZS5weQorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNl
cy90eXBlLWNoZWNrLXdvcmtlci5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy91bnJl
Z2lzdGVyLWNvbnRyb2xsZXItcGFnZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2Vz
L3VucmVnaXN0ZXItaW1tZWRpYXRlbHktaGVscGVycy5qcwogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy91cGRhdGUtY2xhaW0td29ya2VyLnB5CkBAIC0zMzEsNiArMzQ5LDcgQEAgTGlzdCBv
ZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd29ya2VyLWxvYWQtaW50ZXJj
ZXB0b3IuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd29ya2VyLXRlc3RoYXJuZXNz
LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3dvcmtlcl9pbnRlcmNlcHRpb25fcmVk
aXJlY3Rfd2Vid29ya2VyLnB5CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3hoci1jb250
ZW50LWxlbmd0aC13b3JrZXIuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMveGhyLWlm
cmFtZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3hoci1yZXNwb25zZS11cmwt
d29ya2VyLmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3hzbC1iYXNlLXVybC1pZnJh
bWUueG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZXNvdXJjZXMvd2luZG93Y2xp
ZW50LW5hdmlnYXRlLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy93aW5k
b3djbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzCmluZGV4IGM0OTBlODkyZGZlZDg5MjlkZDg2Njhh
NzQwMWY5OTBmYTk0OTU3ZWEuLjM4M2Y2NjYzMWQzYTBkM2I2ZjliMDJmNjg0N2MwMWUxYjE5MjU5
YzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy93aW5kb3djbGllbnQt
bmF2aWdhdGUtd29ya2VyLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy93aW5k
b3djbGllbnQtbmF2aWdhdGUtd29ya2VyLmpzCkBAIC0xLDM0ICsxLDMzIEBACiBpbXBvcnRTY3Jp
cHRzKCcvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzJyk7CiAKLWZ1bmN0aW9uIG1hdGNoX3F1ZXJ5
KHF1ZXJ5X3N0cmluZykgewotICByZXR1cm4gc2VsZi5sb2NhdGlvbi5zZWFyY2guc3Vic3RyKDEp
ID09IHF1ZXJ5X3N0cmluZzsKK2Z1bmN0aW9uIG1hdGNoUXVlcnkocXVlcnlTdHJpbmcpIHsKKyAg
cmV0dXJuIHNlbGYubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKSA9PT0gcXVlcnlTdHJpbmc7CiB9
CiAKLWFzeW5jIGZ1bmN0aW9uIG5hdmlnYXRlX3Rlc3QodCwgZSkgewotICB2YXIgcG9ydCA9IGUu
ZGF0YS5wb3J0OwotICB2YXIgdXJsID0gZS5kYXRhLnVybDsKLSAgdmFyIGV4cGVjdGVkID0gZS5k
YXRhLmV4cGVjdGVkOworYXN5bmMgZnVuY3Rpb24gbmF2aWdhdGVUZXN0KHQsIGUpIHsKKyAgY29u
c3QgcG9ydCA9IGUuZGF0YS5wb3J0OworICBjb25zdCB1cmwgPSBlLmRhdGEudXJsOworICBjb25z
dCBleHBlY3RlZCA9IGUuZGF0YS5leHBlY3RlZDsKIAotICB2YXIgcCA9IGNsaWVudHMubWF0Y2hB
bGwoeyBpbmNsdWRlVW5jb250cm9sbGVkIDogdHJ1ZSB9KQotICAgIC50aGVuKGZ1bmN0aW9uKGNs
aWVudF9saXN0KSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2xpZW50X2xpc3QubGVu
Z3RoOyBpKyspIHsKLSAgICAgICAgICB2YXIgY2xpZW50ID0gY2xpZW50X2xpc3RbaV07Ci0gICAg
ICAgICAgaWYgKGNsaWVudC5mcmFtZVR5cGUgPT0gJ25lc3RlZCcpIHsKLSAgICAgICAgICAgIHJl
dHVybiBjbGllbnQubmF2aWdhdGUodXJsKTsKLSAgICAgICAgICB9CisgIGxldCBwID0gY2xpZW50
cy5tYXRjaEFsbCh7IGluY2x1ZGVVbmNvbnRyb2xsZWQgOiB0cnVlIH0pCisgICAgLnRoZW4oZnVu
Y3Rpb24oY2xpZW50cykgeworICAgICAgZm9yIChjb25zdCBjbGllbnQgb2YgY2xpZW50cykgewor
ICAgICAgICBpZiAoY2xpZW50LnVybCA9PT0gZS5kYXRhLmNsaWVudFVybCkgeworICAgICAgICAg
IGFzc2VydF9lcXVhbHMoY2xpZW50LmZyYW1lVHlwZSwgZS5kYXRhLmZyYW1lVHlwZSk7CisgICAg
ICAgICAgcmV0dXJuIGNsaWVudC5uYXZpZ2F0ZSh1cmwpOwogICAgICAgICB9Ci0gICAgICAgIHRo
cm93ICdDb3VsZCBub3QgbG9jYXRlIHdpbmRvdyBjbGllbnQuJzsKLSAgICAgIH0pCi0gICAgLnRo
ZW4oZnVuY3Rpb24obmV3X2NsaWVudCkgewotICAgICAgICAvLyBJZiB3ZSBkaWRuJ3QgcmVqZWN0
LCB3ZSBiZXR0ZXIgZ2V0IHJlc29sdmVkIHdpdGggdGhlIHJpZ2h0IHRoaW5nLgotICAgICAgICBp
ZiAobmV3X2NsaWVudCA9PT0gbnVsbCkgewotICAgICAgICAgIGFzc2VydF9lcXVhbHMobmV3X2Ns
aWVudCwgZXhwZWN0ZWQpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgIGFzc2VydF9lcXVh
bHMobmV3X2NsaWVudC51cmwsIGV4cGVjdGVkKTsKLSAgICAgICAgfQotICAgICAgfSk7CisgICAg
ICB9CisgICAgICB0aHJvdyAnQ291bGQgbm90IGxvY2F0ZSB3aW5kb3cgY2xpZW50Lic7CisgICAg
fSkudGhlbihmdW5jdGlvbihuZXdDbGllbnQpIHsKKyAgICAgIC8vIElmIHdlIGRpZG4ndCByZWpl
Y3QsIHdlIGJldHRlciBnZXQgcmVzb2x2ZWQgd2l0aCB0aGUgcmlnaHQgdGhpbmcuCisgICAgICBp
ZiAobmV3Q2xpZW50ID09PSBudWxsKSB7CisgICAgICAgIGFzc2VydF9lcXVhbHMobmV3Q2xpZW50
LCBleHBlY3RlZCk7CisgICAgICB9IGVsc2UgeworICAgICAgICBhc3NlcnRfZXF1YWxzKG5ld0Ns
aWVudC51cmwsIGV4cGVjdGVkKTsKKyAgICAgIH0KKyAgICB9KTsKIAotICBpZiAodHlwZW9mIHNl
bGZbZXhwZWN0ZWRdID09ICJmdW5jdGlvbiIpIHsKKyAgaWYgKHR5cGVvZiBzZWxmW2V4cGVjdGVk
XSA9PT0gImZ1bmN0aW9uIikgewogICAgIC8vIEl0J3MgYSBKUyBlcnJvciB0eXBlIG5hbWUuICBX
ZSBhcmUgZXhwZWN0aW5nIG91ciBwcm9taXNlIHRvIGJlIHJlamVjdGVkCiAgICAgLy8gd2l0aCB0
aGF0IGVycm9yLgogICAgIHAgPSBwcm9taXNlX3JlamVjdHNfanModCwgc2VsZltleHBlY3RlZF0s
IHApOwpAQCAtNDAsMzkgKzM5LDM3IEBAIGFzeW5jIGZ1bmN0aW9uIG5hdmlnYXRlX3Rlc3QodCwg
ZSkgewogCiBmdW5jdGlvbiBnZXRUZXN0Q2xpZW50KCkgewogICByZXR1cm4gY2xpZW50cy5tYXRj
aEFsbCh7IGluY2x1ZGVVbmNvbnRyb2xsZWQ6IHRydWUgfSkKLSAgICAudGhlbihmdW5jdGlvbihj
bGllbnRfbGlzdCkgewotICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNsaWVudF9saXN0Lmxl
bmd0aDsgaSsrKSB7Ci0gICAgICAgICAgdmFyIGNsaWVudCA9IGNsaWVudF9saXN0W2ldOwotCi0g
ICAgICAgICAgaWYgKC93aW5kb3djbGllbnQtbmF2aWdhdGVcLmh0dHBzXC5odG1sLy50ZXN0KGNs
aWVudC51cmwpKSB7Ci0gICAgICAgICAgICByZXR1cm4gY2xpZW50OwotICAgICAgICAgIH0KKyAg
ICAudGhlbihmdW5jdGlvbihjbGllbnRzKSB7CisgICAgICBmb3IgKGNvbnN0IGNsaWVudCBvZiBj
bGllbnRzKSB7CisgICAgICAgIGlmIChjbGllbnQudXJsLmluY2x1ZGVzKCd3aW5kb3djbGllbnQt
bmF2aWdhdGUuaHR0cHMuaHRtbCcpKSB7CisgICAgICAgICAgcmV0dXJuIGNsaWVudDsKICAgICAg
ICAgfQorICAgICAgfQogCi0gICAgICAgIHRocm93IG5ldyBFcnJvcignU2VydmljZSB3b3JrZXIg
d2FzIHVuYWJsZSB0byBsb2NhdGUgdGVzdCBjbGllbnQuJyk7Ci0gICAgICB9KTsKKyAgICAgIHRo
cm93IG5ldyBFcnJvcignU2VydmljZSB3b3JrZXIgd2FzIHVuYWJsZSB0byBsb2NhdGUgdGVzdCBj
bGllbnQuJyk7CisgICAgfSk7CiB9CiAKIGZ1bmN0aW9uIHdhaXRGb3JNZXNzYWdlKGNsaWVudCkg
ewotICB2YXIgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpOworICBjb25zdCBjaGFubmVs
ID0gbmV3IE1lc3NhZ2VDaGFubmVsKCk7CiAgIGNsaWVudC5wb3N0TWVzc2FnZSh7IHBvcnQ6IGNo
YW5uZWwucG9ydDIgfSwgW2NoYW5uZWwucG9ydDJdKTsKIAogICByZXR1cm4gbmV3IFByb21pc2Uo
ZnVuY3Rpb24ocmVzb2x2ZSkgewotICAgICAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IHJl
c29sdmU7Ci0gICAgICB9KTsKKyAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IHJlc29sdmU7
CisgIH0pOwogfQogCiAvLyBUaGUgd29ya2VyIG11c3QgcmVtYWluIGluIHRoZSAiaW5zdGFsbGlu
ZyIgc3RhdGUgZm9yIHRoZSBkdXJhdGlvbiBvZiBzb21lCiAvLyBzdWItdGVzdHMuIEluIG9yZGVy
IHRvIGFjaGlldmUgdGhpcyBjb29yZGluYXRpb24gd2l0aG91dCByZWx5aW5nIG9uIGdsb2JhbAog
Ly8gc3RhdGUsIHRoZSB3b3JrZXIgbXVzdCBjcmVhdGUgYSBtZXNzYWdlIGNoYW5uZWwgd2l0aCB0
aGUgY2xpZW50IGZyb20gd2l0aGluCiAvLyB0aGUgImluc3RhbGwiIGV2ZW50IGhhbmRsZXIuCi1p
ZiAobWF0Y2hfcXVlcnkoJ2luc3RhbGxpbmcnKSkgeworaWYgKG1hdGNoUXVlcnkoJ2luc3RhbGxp
bmcnKSkgewogICBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ2luc3RhbGwnLCBmdW5jdGlvbihlKSB7
Ci0gICAgICBlLndhaXRVbnRpbChnZXRUZXN0Q2xpZW50KCkudGhlbih3YWl0Rm9yTWVzc2FnZSkp
OwotICAgIH0pOworICAgIGUud2FpdFVudGlsKGdldFRlc3RDbGllbnQoKS50aGVuKHdhaXRGb3JN
ZXNzYWdlKSk7CisgIH0pOwogfQogCiBzZWxmLmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBm
dW5jdGlvbihlKSB7Ci0gICAgZS53YWl0VW50aWwocHJvbWlzZV90ZXN0KHQgPT4gbmF2aWdhdGVf
dGVzdCh0LCBlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5kYXRhLmRlc2NyaXB0
aW9uICsgIiB3b3JrZXIgc2lkZSIpKTsKLSAgfSk7CisgIGUud2FpdFVudGlsKHByb21pc2VfdGVz
dCh0ID0+IG5hdmlnYXRlVGVzdCh0LCBlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGUu
ZGF0YS5kZXNjcmlwdGlvbiArICIgd29ya2VyIHNpZGUiKSk7Cit9KTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHItY29udGVudC1sZW5ndGgtd29ya2VyLmpzIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzL3hoci1jb250ZW50LWxlbmd0aC13b3JrZXIuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjA0ZGVlY2UyZDI1MmQ2OGI0ZjE1NjQwM2I2MDQxYjAyOTBkNWE5YwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jlc291cmNlcy94aHItY29udGVudC1s
ZW5ndGgtd29ya2VyLmpzCkBAIC0wLDAgKzEsMjIgQEAKKy8vIFNlcnZpY2Ugd29ya2VyIGZvciB0
aGUgeGhyLWNvbnRlbnQtbGVuZ3RoIHRlc3QuCisKK3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigiZmV0
Y2giLCBldmVudCA9PiB7CisgIGNvbnN0IHVybCA9IG5ldyBVUkwoZXZlbnQucmVxdWVzdC51cmwp
OworICBjb25zdCB0eXBlID0gdXJsLnNlYXJjaFBhcmFtcy5nZXQoInR5cGUiKTsKKworICBpZiAo
dHlwZSA9PT0gIm5vLWNvbnRlbnQtbGVuZ3RoIikgeworICAgIGV2ZW50LnJlc3BvbmRXaXRoKG5l
dyBSZXNwb25zZSgiSGVsbG8hIikpOworICB9CisKKyAgaWYgKHR5cGUgPT09ICJsYXJnZXItY29u
dGVudC1sZW5ndGgiKSB7CisgICAgZXZlbnQucmVzcG9uZFdpdGgobmV3IFJlc3BvbnNlKCJtZWVl
ZWgiLCB7IGhlYWRlcnM6IFtbIkNvbnRlbnQtTGVuZ3RoIiwgIjEwMDAwIl1dIH0pKTsKKyAgfQor
CisgIGlmICh0eXBlID09PSAiZG91YmxlLWNvbnRlbnQtbGVuZ3RoIikgeworICAgIGV2ZW50LnJl
c3BvbmRXaXRoKG5ldyBSZXNwb25zZSgibWVlZWVoIiwgeyBoZWFkZXJzOiBbWyJDb250ZW50LUxl
bmd0aCIsICIxMDAwMCJdLCBbIkNvbnRlbnQtTGVuZ3RoIiwgIjEwMDAwIl1dIH0pKTsKKyAgfQor
CisgIGlmICh0eXBlID09PSAiYm9ndXMtY29udGVudC1sZW5ndGgiKSB7CisgICAgZXZlbnQucmVz
cG9uZFdpdGgobmV3IFJlc3BvbnNlKCJtZWVlZWgiLCB7IGhlYWRlcnM6IFtbIkNvbnRlbnQtTGVu
Z3RoIiwgInRlc3QiXV0gfSkpOworICB9Cit9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3N2Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3N2Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OWZiNTI0MDQ5
ZDgwN2I2ZGU4ODdhNWIyMGQxYzE3MjgyNTEwOWRlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvc3ZnLXRhcmdldC1yZWZ0ZXN0LTAwMS1mcmFtZS5odG1sCkBAIC0wLDAgKzEs
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8aW1nIHNyYz0i
L2ltYWdlcy9ncmVlbi5zdmciPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvc3ZnLXRh
cmdldC1yZWZ0ZXN0Lmh0dHBzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9zdmct
dGFyZ2V0LXJlZnRlc3QuaHR0cHMtZXhwZWN0ZWQuaHRtbAppbmRleCA0Njc4MmFjMzI3M2Y3ZGNh
YzkxMWE1YzEzNjgzODMzZWIxMzE0ZjUwLi45YTkzZDNiMzcwNDc1NjBhMWI2ODYyNjY5MzJjMDM5
OTY4NjgzZmNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0LXJlZnRl
c3QuaHR0cHMtZXhwZWN0ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9zdmctdGFyZ2V0
LXJlZnRlc3QuaHR0cHMtZXhwZWN0ZWQuaHRtbApAQCAtMiw0ICsyLDQgQEAKIDxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4KIDx0aXRsZT5HcmVlbiBzdmcgYm94IHJlZmVyZW5jZSBmaWxlPC90aXRsZT4K
IDxwPlBhc3MgaWYgeW91IHNlZSBhIGdyZWVuIGJveCBiZWxvdy48L3A+Ci08aWZyYW1lIHNyYz0i
cmVzb3VyY2VzL3N2Zy10YXJnZXQtcmVmdGVzdC0wMDEtZnJhbWUuaHRtbCI+Cis8aWZyYW1lIHNy
Yz0ic3ZnLXRhcmdldC1yZWZ0ZXN0LTAwMS1mcmFtZS5odG1sIj4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3VwZGF0ZS1hZnRlci1vbmVkYXkuaHR0cHMuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3VwZGF0ZS1hZnRlci1vbmVkYXkuaHR0cHMuaHRtbAppbmRleCBkOWI5ZmNmYjhkYjM3
ZWEzYjBkNTcxMjUwYjIyYjg4Y2E3MzU0NzcyLi5lN2E4YWE0MmQzMDc3OTliMTU3ZmQzOTk0YWMy
OTFkNWM1OTZiZmQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXIt
b25lZGF5Lmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWFmdGVyLW9u
ZWRheS5odHRwcy5odG1sCkBAIC00MCw3ICs0MCw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0
KSB7CiAgICAgICAgIH0pCiAgICAgICAudGhlbihmdW5jdGlvbigpIHsKICAgICAgICAgICAvLyBU
cmlnZ2VyIGEgbm9uLW5hdmlnYXRpb24gZmV0Y2ggZXZlbnQKLSAgICAgICAgICBmcmFtZS5jb250
ZW50V2luZG93LmxvYWRfaW1hZ2Uobm9ybWFsaXplVVJMKCdyZXNvdXJjZXMvdXBkYXRlL2R1bW15
JykpOworICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cubG9hZF9pbWFnZShub3JtYWxpemVV
UkwoJ3Jlc291cmNlcy91cGRhdGUvc2FtcGxlJykpOwogICAgICAgICAgIHJldHVybiB3YWl0X2Zv
cl91cGRhdGUodCwgcmVnaXN0cmF0aW9uKTsKICAgICAgICB9KQogICAgICAgIC50aGVuKGZ1bmN0
aW9uKCkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1j
b3JzLWltcG9ydC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUt
Ynl0ZWNoZWNrLWNvcnMtaW1wb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMTBj
ODc4NmJhMzViZTM5MjcyZDQyZDdmN2FkY2E4YjhhMDAxMmY4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1jb3JzLWltcG9ydC5odHRwcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVz
c2FnZSA9IG51bGwKKworUEFTUyBUZXN0KG1haW46IGRlZmF1bHQsIGltcG9ydGVkOiBkZWZhdWx0
KQorVElNRU9VVCBUZXN0KG1haW46IGRlZmF1bHQsIGltcG9ydGVkOiB0aW1lKSBUZXN0IHRpbWVk
IG91dAorTk9UUlVOIFRlc3QobWFpbjogdGltZSwgaW1wb3J0ZWQ6IGRlZmF1bHQpCitOT1RSVU4g
VGVzdChtYWluOiB0aW1lLCBpbXBvcnRlZDogdGltZSkKK05PVFJVTiBUZXN0IG1vZHVsZSBzY3Jp
cHQobWFpbjogZGVmYXVsdCwgaW1wb3J0ZWQ6IGRlZmF1bHQpCitOT1RSVU4gVGVzdCBtb2R1bGUg
c2NyaXB0KG1haW46IGRlZmF1bHQsIGltcG9ydGVkOiB0aW1lKQorTk9UUlVOIFRlc3QgbW9kdWxl
IHNjcmlwdChtYWluOiB0aW1lLCBpbXBvcnRlZDogZGVmYXVsdCkKK05PVFJVTiBUZXN0IG1vZHVs
ZSBzY3JpcHQobWFpbjogdGltZSwgaW1wb3J0ZWQ6IHRpbWUpCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0cHMuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1pbXBvcnQuaHR0cHMuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4xMjFhNzM3OGUzNThkNjMyY2VlM2VmNTZlNzlhMTljODY1ZWE1YzNkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay1jb3JzLWlt
cG9ydC5odHRwcy5odG1sCkBAIC0wLDAgKzEsOTIgQEAKKzwhZG9jdHlwZSBodG1sPgorPG1ldGEg
Y2hhcnNldD11dGYtOD4KKzx0aXRsZT48L3RpdGxlPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29u
dGVudD0ibG9uZyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Rlc3RoYXJuZXNzLWhlbHBlcnMuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy90ZXN0LWhlbHBlcnMuc3ViLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIvY29tbW9uL2dldC1ob3N0LWluZm8uc3ViLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQ+CisvLyBUZXN0cyBvZiB1cGRhdGluZyBhIHNlcnZpY2Ugd29ya2VyLiBUaGlz
IGZpbGUgY29udGFpbnMgY29ycyBjYXNlcyBvbmx5LgorCisvKgorICogQHBhcmFtIHN0cmluZyBt
YWluCisgKiAgIERlY2lkZSB0aGUgY29udGVudCBvZiB0aGUgbWFpbiBzY3JpcHQsIHdoZXJlICdk
ZWZhdWx0JyBpcyBmb3IgY29uc3RhbnQKKyAqICAgY29udGVudCB3aGlsZSAndGltZScgaXMgZm9y
IHRpbWUtdmFyaWFudCBjb250ZW50LgorICogQHBhcmFtIHN0cmluZyBpbXBvcnRlZAorICogICBE
ZWNpZGUgdGhlIGNvbnRlbnQgb2YgdGhlIGltcG9ydGVkIHNjcmlwdCwgd2hlcmUgJ2RlZmF1bHQn
IGlzIGZvciBjb25zdGFudAorICogICBjb250ZW50IHdoaWxlICd0aW1lJyBpcyBmb3IgdGltZS12
YXJpYW50IGNvbnRlbnQuCisgKi8KK2NvbnN0IHNldHRpbmdzID0gW3ttYWluOiAnZGVmYXVsdCcs
IGltcG9ydGVkOiAnZGVmYXVsdCd9LAorICAgICAgICAgICAgICAgICAge21haW46ICdkZWZhdWx0
JywgaW1wb3J0ZWQ6ICd0aW1lJyAgIH0sCisgICAgICAgICAgICAgICAgICB7bWFpbjogJ3RpbWUn
LCAgICBpbXBvcnRlZDogJ2RlZmF1bHQnfSwKKyAgICAgICAgICAgICAgICAgIHttYWluOiAndGlt
ZScsICAgIGltcG9ydGVkOiAndGltZScgICB9XTsKKworY29uc3QgaG9zdF9pbmZvID0gZ2V0X2hv
c3RfaW5mbygpOworc2V0dGluZ3MuZm9yRWFjaCgoe21haW4sIGltcG9ydGVkfSkgPT4geworICBw
cm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgICAvLyBTcGVjaWZ5IGEgY3Jvc3Mgb3JpZ2lu
IHBhdGggdG8gbG9hZCBpbXBvcnRlZCBzY3JpcHRzIGZyb20gYSBjcm9zcyBvcmlnaW4uCisgICAg
Y29uc3QgcGF0aCA9IGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJR0lOICsKKyAgICAgICAgICAg
ICAgICAgJy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzLyc7CisgICAg
Y29uc3Qgc2NyaXB0ID0gJ3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLnB5JyArCisgICAgICAg
ICAgICAgICAgICAgJz9tYWluPScgKyBtYWluICsKKyAgICAgICAgICAgICAgICAgICAnJmltcG9y
dGVkPScgKyBpbXBvcnRlZCArCisgICAgICAgICAgICAgICAgICAgJyZwYXRoPScgKyBwYXRoICsK
KyAgICAgICAgICAgICAgICAgICAnJnR5cGU9Y2xhc3NpYyc7CisgICAgY29uc3Qgc2NvcGUgPSAn
cmVzb3VyY2VzL2JsYW5rLmh0bWwnOworCisgICAgLy8gUmVnaXN0ZXIgYSBzZXJ2aWNlIHdvcmtl
ci4KKyAgICBjb25zdCBzd3IgPSBhd2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9y
ZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3BlKTsKKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHN3ci51
bnJlZ2lzdGVyKCkpOworICAgIGNvbnN0IHN3ID0gYXdhaXQgd2FpdF9mb3JfdXBkYXRlKHQsIHN3
cik7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgc3csICdhY3RpdmF0ZWQnKTsKKyAgICBh
c3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iud2FpdGluZywgc3dyLmluc3RhbGxp
bmddLAorICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBudWxsLCBudWxsXSk7CisKKyAgICAv
LyBVcGRhdGUgdGhlIHNlcnZpY2Ugd29ya2VyIHJlZ2lzdHJhdGlvbi4KKyAgICBhd2FpdCBzd3Iu
dXBkYXRlKCk7CisKKyAgICAvLyBJZiB0aGVyZSBzaG91bGQgYmUgYSBuZXcgc2VydmljZSB3b3Jr
ZXIuCisgICAgaWYgKG1haW4gPT09ICd0aW1lJyB8fCBpbXBvcnRlZCA9PT0gJ3RpbWUnKSB7Cisg
ICAgICByZXR1cm4gd2FpdF9mb3JfdXBkYXRlKHQsIHN3cik7CisgICAgfQorICAgIC8vIE90aGVy
d2lzZSwgbWFrZSBzdXJlIHRoZXJlIGlzIG5vIG5ld2x5IGNyZWF0ZWQgc2VydmljZSB3b3JrZXIu
CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwgc3dyLndhaXRpbmcsIHN3ci5p
bnN0YWxsaW5nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVsbF0pOwor
ICB9LCBgVGVzdChtYWluOiAke21haW59LCBpbXBvcnRlZDogJHtpbXBvcnRlZH0pYCk7Cit9KTsK
Kworc2V0dGluZ3MuZm9yRWFjaCgoe21haW4sIGltcG9ydGVkfSkgPT4geworICBwcm9taXNlX3Rl
c3QoYXN5bmMgKHQpID0+IHsKKyAgICAvLyBTcGVjaWZ5IGEgY3Jvc3Mgb3JpZ2luIHBhdGggdG8g
bG9hZCBpbXBvcnRlZCBzY3JpcHRzIGZyb20gYSBjcm9zcyBvcmlnaW4uCisgICAgY29uc3QgcGF0
aCA9IGhvc3RfaW5mby5IVFRQU19SRU1PVEVfT1JJR0lOICsKKyAgICAgICAgICAgICAgICAgJy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVzb3VyY2VzLyc7CisgICAgY29uc3Qgc2Ny
aXB0ID0gJ3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLnB5JyArCisgICAgICAgICAgICAgICAg
ICAgJz9tYWluPScgKyBtYWluICsKKyAgICAgICAgICAgICAgICAgICAnJmltcG9ydGVkPScgKyBp
bXBvcnRlZCArCisgICAgICAgICAgICAgICAgICAgJyZwYXRoPScgKyBwYXRoICsKKyAgICAgICAg
ICAgICAgICAgICAnJnR5cGU9bW9kdWxlJzsKKyAgICBjb25zdCBzY29wZSA9ICdyZXNvdXJjZXMv
YmxhbmsuaHRtbCc7CisKKyAgICAvLyBSZWdpc3RlciBhIHNlcnZpY2Ugd29ya2VyLgorICAgIGNv
bnN0IHN3ciA9IGF3YWl0IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0ZXJfYW5kX3JlZ2lzdGVyKHQs
IHNjcmlwdCwgc2NvcGUsIHt0eXBlOiAnbW9kdWxlJ30pOworICAgIHQuYWRkX2NsZWFudXAoKCkg
PT4gc3dyLnVucmVnaXN0ZXIoKSk7CisgICAgY29uc3Qgc3cgPSBhd2FpdCB3YWl0X2Zvcl91cGRh
dGUodCwgc3dyKTsKKyAgICBhd2FpdCB3YWl0X2Zvcl9zdGF0ZSh0LCBzdywgJ2FjdGl2YXRlZCcp
OworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0aW5nLCBzd3Iu
aW5zdGFsbGluZ10sCisgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsK
KworICAgIC8vIFVwZGF0ZSB0aGUgc2VydmljZSB3b3JrZXIgcmVnaXN0cmF0aW9uLgorICAgIGF3
YWl0IHN3ci51cGRhdGUoKTsKKworICAgIC8vIElmIHRoZXJlIHNob3VsZCBiZSBhIG5ldyBzZXJ2
aWNlIHdvcmtlci4KKyAgICBpZiAobWFpbiA9PT0gJ3RpbWUnIHx8IGltcG9ydGVkID09PSAndGlt
ZScpIHsKKyAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsKKyAgICB9CisgICAg
Ly8gT3RoZXJ3aXNlLCBtYWtlIHN1cmUgdGhlcmUgaXMgbm8gbmV3bHkgY3JlYXRlZCBzZXJ2aWNl
IHdvcmtlci4KKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0aXZlLCBzd3Iud2FpdGlu
Zywgc3dyLmluc3RhbGxpbmddLAorICAgICAgICAgICAgICAgICAgICAgICAgW3N3LCBudWxsLCBu
dWxsXSk7CisgIH0sIGBUZXN0IG1vZHVsZSBzY3JpcHQobWFpbjogJHttYWlufSwgaW1wb3J0ZWQ6
ICR7aW1wb3J0ZWR9KWApOworfSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3VwZGF0ZS1ieXRlY2hlY2suaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Vw
ZGF0ZS1ieXRlY2hlY2suaHR0cHMuaHRtbAppbmRleCA2NjI4ZGJhNmVlN2QxMWFlMGNkNDU5NDFj
NzI2ZGYwMTdhZmI5MzM2Li4zZTVhMjhiYjY3Y2I3NTYyNGE1ZGQ5OGJkMTVlMTM3ZTU1Yzg3YjBm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLmh0dHBzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWJ5dGVjaGVjay5odHRwcy5odG1sCkBA
IC04LDEwICs4LDkgQEAKIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1Yi5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iL2NvbW1vbi9nZXQtaG9zdC1pbmZvLnN1Yi5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0PgorLy8gVGVzdHMgb2YgdXBkYXRpbmcgYSBzZXJ2aWNlIHdvcmtl
ci4gVGhpcyBmaWxlIGNvbnRhaW5zIG5vbi1jb3JzIGNhc2VzIG9ubHkuCiAKIC8qCi0gKiBAcGFy
YW0gYm9sZWFuIGNvcnMKLSAqICAgRGV0ZXJtaW5lIHdldGhlciB0aGUgaW1wb3J0ZWQgc2NyaXB0
IHNob3VsZCBiZSBhIGNyb3NzIG9yaWdpbiBzY3JpcHQuCiAgKiBAcGFyYW0gc3RyaW5nIG1haW4K
ICAqICAgRGVjaWRlIHRoZSBjb250ZW50IG9mIHRoZSBtYWluIHNjcmlwdCwgd2hlcmUgJ2RlZmF1
bHQnIGlzIGZvciBjb25zdGFudAogICogICBjb250ZW50IHdoaWxlICd0aW1lJyBpcyBmb3IgdGlt
ZS12YXJpYW50IGNvbnRlbnQuCkBAIC0xOSw1NyArMTgsNzUgQEAKICAqICAgRGVjaWRlIHRoZSBj
b250ZW50IG9mIHRoZSBpbXBvcnRlZCBzY3JpcHQsIHdoZXJlICdkZWZhdWx0JyBpcyBmb3IgY29u
c3RhbnQKICAqICAgY29udGVudCB3aGlsZSAndGltZScgaXMgZm9yIHRpbWUtdmFyaWFudCBjb250
ZW50LgogICovCi1jb25zdCBzZXR0aW5ncyA9IFt7Y29yczogZmFsc2UsIG1haW46ICdkZWZhdWx0
JywgaW1wb3J0ZWQ6ICdkZWZhdWx0J30sCi0gICAgICAgICAgICAgICAgICB7Y29yczogZmFsc2Us
IG1haW46ICdkZWZhdWx0JywgaW1wb3J0ZWQ6ICd0aW1lJyAgIH0sCi0gICAgICAgICAgICAgICAg
ICB7Y29yczogZmFsc2UsIG1haW46ICd0aW1lJywgICAgaW1wb3J0ZWQ6ICdkZWZhdWx0J30sCi0g
ICAgICAgICAgICAgICAgICB7Y29yczogZmFsc2UsIG1haW46ICd0aW1lJywgICAgaW1wb3J0ZWQ6
ICd0aW1lJyAgIH0sCi0gICAgICAgICAgICAgICAgICB7Y29yczogdHJ1ZSwgIG1haW46ICdkZWZh
dWx0JywgaW1wb3J0ZWQ6ICdkZWZhdWx0J30sCi0gICAgICAgICAgICAgICAgICB7Y29yczogdHJ1
ZSwgIG1haW46ICdkZWZhdWx0JywgaW1wb3J0ZWQ6ICd0aW1lJyAgIH0sCi0gICAgICAgICAgICAg
ICAgICB7Y29yczogdHJ1ZSwgIG1haW46ICd0aW1lJywgICAgaW1wb3J0ZWQ6ICdkZWZhdWx0J30s
Ci0gICAgICAgICAgICAgICAgICB7Y29yczogdHJ1ZSwgIG1haW46ICd0aW1lJywgICAgaW1wb3J0
ZWQ6ICd0aW1lJyAgIH1dOworY29uc3Qgc2V0dGluZ3MgPSBbe21haW46ICdkZWZhdWx0JywgaW1w
b3J0ZWQ6ICdkZWZhdWx0J30sCisgICAgICAgICAgICAgICAgICB7bWFpbjogJ2RlZmF1bHQnLCBp
bXBvcnRlZDogJ3RpbWUnICAgfSwKKyAgICAgICAgICAgICAgICAgIHttYWluOiAndGltZScsICAg
IGltcG9ydGVkOiAnZGVmYXVsdCd9LAorICAgICAgICAgICAgICAgICAge21haW46ICd0aW1lJywg
ICAgaW1wb3J0ZWQ6ICd0aW1lJyAgIH1dOwogCiBjb25zdCBob3N0X2luZm8gPSBnZXRfaG9zdF9p
bmZvKCk7Ci1zZXR0aW5ncy5yZWR1Y2UoKHAsIHMpID0+IHsKLSAgcmV0dXJuIHAudGhlbihwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciBwYXRoID0gIXMuY29ycyA/ICcnCi0gICAg
ICAgICAgICAgICAgICAgICAgIDogaG9zdF9pbmZvLkhUVFBTX1JFTU9URV9PUklHSU4gKwotICAg
ICAgICAgICAgICAgICAgICAgICAgICcvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3Jl
c291cmNlcy8nOwotICAgIHZhciBzY3JpcHQgPSAncmVzb3VyY2VzL2J5dGVjaGVjay13b3JrZXIu
cHknICsKLSAgICAgICAgICAgICAgICAgJz9tYWluPScgKyBzLm1haW4gKwotICAgICAgICAgICAg
ICAgICAnJmltcG9ydGVkPScgKyBzLmltcG9ydGVkICsKLSAgICAgICAgICAgICAgICAgJyZwYXRo
PScgKyBwYXRoOwotICAgIHZhciBzY29wZSA9ICdyZXNvdXJjZXMvYmxhbmsuaHRtbCc7CitzZXR0
aW5ncy5mb3JFYWNoKCh7bWFpbiwgaW1wb3J0ZWR9KSA9PiB7CisgIHByb21pc2VfdGVzdChhc3lu
YyAodCkgPT4geworICAgIC8vIEVtcHR5IHBhdGggcmVzdWx0cyBpbiB0aGUgc2FtZSBvcmlnaW4g
aW1wb3J0ZWQgc2NyaXB0cy4KKyAgICBjb25zdCBwYXRoID0gJyc7CisgICAgY29uc3Qgc2NyaXB0
ID0gJ3Jlc291cmNlcy9ieXRlY2hlY2std29ya2VyLnB5JyArCisgICAgICAgICAgICAgICAgICAg
Jz9tYWluPScgKyBtYWluICsKKyAgICAgICAgICAgICAgICAgICAnJmltcG9ydGVkPScgKyBpbXBv
cnRlZCArCisgICAgICAgICAgICAgICAgICAgJyZwYXRoPScgKyBwYXRoICsKKyAgICAgICAgICAg
ICAgICAgICAnJnR5cGU9Y2xhc3NpYyc7CisgICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL2Js
YW5rLmh0bWwnOwogCi0gICAgdmFyIHN3ciwgc3c7Ci0gICAgcmV0dXJuIFByb21pc2UucmVzb2x2
ZSgpCi0gICAgICAvLyBSZWdpc3RlciBhIHNlcnZpY2Ugd29ya2VyLgotICAgICAgLnRoZW4oXyA9
PiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3Rlcih0LCBzY3JpcHQsIHNjb3Bl
KSkKLSAgICAgIC50aGVuKHIgPT4gewotICAgICAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHNlcnZp
Y2Vfd29ya2VyX3VucmVnaXN0ZXIodCwgc2NvcGUpKTsKLSAgICAgICAgc3dyID0gcjsKLSAgICAg
ICAgcmV0dXJuIHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOwotICAgICAgfSkKLSAgICAgIC50aGVu
KHcgPT4gc3cgPSB3KQotICAgICAgLnRoZW4oXyA9PiB3YWl0X2Zvcl9zdGF0ZSh0LCBzdywgJ2Fj
dGl2YXRlZCcpKQotICAgICAgLnRoZW4oXyA9PiBhc3NlcnRfYXJyYXlfZXF1YWxzKFtzd3IuYWN0
aXZlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd3Iud2FpdGluZywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dyLmluc3RhbGxpbmddLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVsbF0pKQor
ICAgIC8vIFJlZ2lzdGVyIGEgc2VydmljZSB3b3JrZXIuCisgICAgY29uc3Qgc3dyID0gYXdhaXQg
c2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwgc2NyaXB0LCBzY29wZSk7
CisgICAgdC5hZGRfY2xlYW51cCgoKSA9PiBzd3IudW5yZWdpc3RlcigpKTsKKyAgICBjb25zdCBz
dyA9IGF3YWl0IHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIGF3YWl0IHdhaXRfZm9yX3N0
YXRlKHQsIHN3LCAnYWN0aXZhdGVkJyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFj
dGl2ZSwgc3dyLndhaXRpbmcsIHN3ci5pbnN0YWxsaW5nXSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgIFtzdywgbnVsbCwgbnVsbF0pOwogCi0gICAgICAvLyBVcGRhdGUgdGhlIHNlcnZpY2Ugd29y
a2VyIHJlZ2lzdHJhdGlvbi4KLSAgICAgIC50aGVuKF8gPT4gc3dyLnVwZGF0ZSgpKQotICAgICAg
LnRoZW4oXyA9PiB7Ci0gICAgICAgICAvLyBJZiB0aGVyZSBzaG91bGQgYmUgYSBuZXcgc2Vydmlj
ZSB3b3JrZXIuCi0gICAgICAgICBpZiAocy5tYWluID09PSAndGltZScgfHwgcy5pbXBvcnRlZCA9
PT0gJ3RpbWUnKSB7Ci0gICAgICAgICAgIHJldHVybiB3YWl0X2Zvcl91cGRhdGUodCwgc3dyKTsK
LSAgICAgICAgIH0KLSAgICAgICAgIC8vIE90aGVyd2lzZSwgbWFrZSBzdXJlIHRoZXJlIGlzIG5v
IG5ld2x5IGNyZWF0ZWQgc2VydmljZSB3b3JrZXIuCi0gICAgICAgICBhc3NlcnRfYXJyYXlfZXF1
YWxzKFtzd3IuYWN0aXZlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dyLndhaXRp
bmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd3IuaW5zdGFsbGluZ10sCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwgbnVsbF0pOwotICAgICAgfSk7Ci0g
IH0sIGBUZXN0KGNvcnM6ICR7cy5jb3JzfSwgbWFpbjogJHtzLm1haW59LCBpbXBvcnRlZDogJHtz
LmltcG9ydGVkfSlgKSk7Ci19LCBQcm9taXNlLnJlc29sdmUoKSk7CisgICAgLy8gVXBkYXRlIHRo
ZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24uCisgICAgYXdhaXQgc3dyLnVwZGF0ZSgpOwog
CisgICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJlIGEgbmV3IHNlcnZpY2Ugd29ya2VyLgorICAgIGlm
IChtYWluID09PSAndGltZScgfHwgaW1wb3J0ZWQgPT09ICd0aW1lJykgeworICAgICAgcmV0dXJu
IHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIH0KKyAgICAvLyBPdGhlcndpc2UsIG1ha2Ug
c3VyZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVkIHNlcnZpY2Ugd29ya2VyLgorICAgIGFzc2Vy
dF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3ci53YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10s
CisgICAgICAgICAgICAgICAgICAgICAgICBbc3csIG51bGwsIG51bGxdKTsKKyAgfSwgYFRlc3Qo
bWFpbjogJHttYWlufSwgaW1wb3J0ZWQ6ICR7aW1wb3J0ZWR9KWApOworfSk7CisKK3NldHRpbmdz
LmZvckVhY2goKHttYWluLCBpbXBvcnRlZH0pID0+IHsKKyAgcHJvbWlzZV90ZXN0KGFzeW5jICh0
KSA9PiB7CisgICAgLy8gRW1wdHkgcGF0aCByZXN1bHRzIGluIHRoZSBzYW1lIG9yaWdpbiBpbXBv
cnRlZCBzY3JpcHRzLgorICAgIGNvbnN0IHBhdGggPSAnLi8nOworICAgIGNvbnN0IHNjcmlwdCA9
ICdyZXNvdXJjZXMvYnl0ZWNoZWNrLXdvcmtlci5weScgKworICAgICAgICAgICAgICAgICAgICc/
bWFpbj0nICsgbWFpbiArCisgICAgICAgICAgICAgICAgICAgJyZpbXBvcnRlZD0nICsgaW1wb3J0
ZWQgKworICAgICAgICAgICAgICAgICAgICcmcGF0aD0nICsgcGF0aCArCisgICAgICAgICAgICAg
ICAgICAgJyZ0eXBlPW1vZHVsZSc7CisgICAgY29uc3Qgc2NvcGUgPSAncmVzb3VyY2VzL2JsYW5r
Lmh0bWwnOworCisgICAgLy8gUmVnaXN0ZXIgYSBtb2R1bGUgc2VydmljZSB3b3JrZXIuCisgICAg
Y29uc3Qgc3dyID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIo
dCwgc2NyaXB0LCBzY29wZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHt0eXBlOiAnbW9kdWxlJ30pOworCisgICAgdC5hZGRfY2xl
YW51cCgoKSA9PiBzd3IudW5yZWdpc3RlcigpKTsKKyAgICBjb25zdCBzdyA9IGF3YWl0IHdhaXRf
Zm9yX3VwZGF0ZSh0LCBzd3IpOworICAgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHN3LCAnYWN0
aXZhdGVkJyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbc3dyLmFjdGl2ZSwgc3dyLndhaXRp
bmcsIHN3ci5pbnN0YWxsaW5nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFtzdywgbnVsbCwg
bnVsbF0pOworCisgICAgLy8gVXBkYXRlIHRoZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24u
CisgICAgYXdhaXQgc3dyLnVwZGF0ZSgpOworCisgICAgLy8gSWYgdGhlcmUgc2hvdWxkIGJlIGEg
bmV3IHNlcnZpY2Ugd29ya2VyLgorICAgIGlmIChtYWluID09PSAndGltZScgfHwgaW1wb3J0ZWQg
PT09ICd0aW1lJykgeworICAgICAgcmV0dXJuIHdhaXRfZm9yX3VwZGF0ZSh0LCBzd3IpOworICAg
IH0KKyAgICAvLyBPdGhlcndpc2UsIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBuZXdseSBjcmVhdGVk
IHNlcnZpY2Ugd29ya2VyLgorICAgIGFzc2VydF9hcnJheV9lcXVhbHMoW3N3ci5hY3RpdmUsIHN3
ci53YWl0aW5nLCBzd3IuaW5zdGFsbGluZ10sCisgICAgICAgICAgICAgICAgICAgICAgICBbc3cs
IG51bGwsIG51bGxdKTsKKyAgfSwgYFRlc3QgbW9kdWxlIHNjcmlwdChtYWluOiAke21haW59LCBp
bXBvcnRlZDogJHtpbXBvcnRlZH0pYCk7Cit9KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW1vZHVsZS1yZXF1ZXN0LW1vZGUuaHR0cHMt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYyOGUxYjgzMTQwNGExYTdjMmY3NmE2NjdkNWZlMGMx
YWQzMzdkOWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9k
dWxlLXJlcXVlc3QtbW9kZS5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK0ZB
SUwgaGVhZGVycyBvZiBhIG1haW4gbW9kdWxlIHNjcmlwdCBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAoc3RyaW5nKSAic2FtZS1vcmlnaW4iIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1tb2R1bGUtcmVxdWVzdC1tb2Rl
Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9kdWxlLXJlcXVlc3QtbW9k
ZS5odHRwcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIzODc1ZDIwN2JjMjUyZGVhOGU0M2MxYjU4NWZlYmU2
ZDZhMTBmMGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9k
dWxlLXJlcXVlc3QtbW9kZS5odHRwcy5odG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVu
dD0ibG9uZyI+Cis8dGl0bGU+VGVzdCB0aGF0IG1vZGUgaXMgc2V0IHRvIHNhbWUtb3JpZ2luIGZv
ciBhIG1haW4gbW9kdWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvdGVzdC1oZWxwZXJzLnN1
Yi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorLy8gVGVzdHMgYSBtYWluIG1vZHVsZSBzZXJ2aWNl
IHdvcmtlciBzY3JpcHQgZmV0Y2ggZHVyaW5nIGFuIHVwZGF0ZSBjaGVjay4KKy8vIFRoZSBmZXRj
aCBzaG91bGQgaGF2ZSB0aGUgbW9kZSBzZXQgdG8gJ3NhbWUtb3JpZ2luJy4KKy8vCisvLyBUaGUg
dGVzdCB3b3JrcyBieSByZWdpc3RlcmluZyBhIG1haW4gbW9kdWxlIHNlcnZpY2Ugd29ya2VyLiBJ
dCB0aGVuIGRvZXMgYW4KKy8vIHVwZGF0ZS4gVGhlIHRlc3Qgc2VydmVyIHJlc3BvbmRzIHdpdGgg
YW4gdXBkYXRlZCB3b3JrZXIgc2NyaXB0IHRoYXQgcmVtZW1iZXJzCisvLyB0aGUgaHR0cCByZXF1
ZXN0LiBUaGUgdXBkYXRlZCB3b3JrZXIgcmVwb3J0cyBiYWNrIHRoaXMgcmVxdWVzdCB0byB0aGUg
dGVzdAorLy8gcGFnZS4KK3Byb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICBjb25zdCBzY3Jp
cHQgPSAicmVzb3VyY2VzL3Rlc3QtcmVxdWVzdC1tb2RlLXdvcmtlci5weSI7CisgIGNvbnN0IHNj
b3BlID0gInJlc291cmNlcy8iOworCisgIC8vIFJlZ2lzdGVyIHRoZSBzZXJ2aWNlIHdvcmtlci4K
KyAgYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcih0LCBzY29wZSk7CisgIGNvbnN0IHJl
Z2lzdHJhdGlvbiA9IGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlZ2lzdGVyKAorICAg
ICAgc2NyaXB0LCB7c2NvcGUsIHR5cGU6ICdtb2R1bGUnfSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0
YXRlKHQsIHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nLCAnYWN0aXZhdGVkJyk7CisKKyAgLy8gRG8g
YW4gdXBkYXRlLgorICBhd2FpdCByZWdpc3RyYXRpb24udXBkYXRlKCk7CisKKyAgLy8gQXNrIHRo
ZSBuZXcgd29ya2VyIHdoYXQgdGhlIHJlcXVlc3Qgd2FzLgorICBjb25zdCBuZXdXb3JrZXIgPSBy
ZWdpc3RyYXRpb24uaW5zdGFsbGluZzsKKyAgY29uc3Qgc2F3TWVzc2FnZSA9IG5ldyBQcm9taXNl
KChyZXNvbHZlKSA9PiB7CisgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIub25tZXNzYWdlID0g
KGV2ZW50KSA9PiB7CisgICAgICByZXNvbHZlKGV2ZW50LmRhdGEpOworICAgIH07CisgIH0pOwor
ICBuZXdXb3JrZXIucG9zdE1lc3NhZ2UoJ2dldEhlYWRlcnMnKTsKKyAgY29uc3QgcmVzdWx0ID0g
YXdhaXQgc2F3TWVzc2FnZTsKKworICAvLyBUZXN0IHRoZSByZXN1bHQuCisgIGFzc2VydF9lcXVh
bHMocmVzdWx0WydzZWMtZmV0Y2gtbW9kZSddLCAnc2FtZS1vcmlnaW4nKTsKKyAgYXNzZXJ0X2Vx
dWFscyhyZXN1bHRbJ29yaWdpbiddLCB1bmRlZmluZWQpOworCit9LCAnaGVhZGVycyBvZiBhIG1h
aW4gbW9kdWxlIHNjcmlwdCcpOworCis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdzNjLWltcG9ydC5sb2cK
aW5kZXggYWVmYmM5MzdiZTZmMmRjMDQ0ZmVlOTgxNzUwMDMzODhmNTUzNzhlZC4uOThiZDg2YTAy
NGMwOTA1NjE3MWFjY2I2OGQ4MDE0OTA0YjI1NjY5YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvdzNjLWltcG9ydC5sb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdzNjLWltcG9ydC5s
b2cKQEAgLTMxLDEwICszMSwxMiBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsYWltLXdvcmtlci1mZXRjaC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50
LWlkLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnQtbmF2aWdhdGUuaHR0cHMu
aHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC11cmwtb2YtYmxvYi11cmwtd29ya2VyLmh0
dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLWdldC1jbGllbnQtdHlwZXMuaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtZ2V0LWNyb3NzLW9yaWdpbi5odHRw
cy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1nZXQtcmVzdWx0aW5nQ2xpZW50SWQu
aHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtZ2V0Lmh0dHBzLmh0bWwKKy9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLWJsb2ItdXJsLXdvcmtlci5odHRwcy5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1jbGllbnQtdHlwZXMuaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtZXhhY3QtY29udHJv
bGxlci5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1tYXRjaGFsbC1mcm96
ZW4uaHR0cHMuaHRtbApAQCAtNjksMTAgKzcxLDYgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1ldmVudC1hZnRlci1uYXZpZ2F0aW9uLXdpdGhpbi1wYWdlLmh0dHBz
Lmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1hc3luYy1yZXNwb25kLXdpdGgu
aHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWhhbmRsZWQuaHR0cHMu
aHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2ZW50LWlzLWhpc3RvcnktYmFja3dhcmQt
bmF2aWdhdGlvbi1tYW51YWwuaHR0cHMuaHRtbAotL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWV2
ZW50LWlzLWhpc3RvcnktZm9yd2FyZC1uYXZpZ2F0aW9uLW1hbnVhbC5odHRwcy5odG1sCi0vTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2FkLWlmcmFtZS1uYXZpZ2F0aW9uLW1h
bnVhbC5odHRwcy5odG1sCi0vTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtaXMtcmVsb2Fk
LW5hdmlnYXRpb24tbWFudWFsLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1l
dmVudC1uZXR3b3JrLWVycm9yLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1l
dmVudC1yZWRpcmVjdC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQt
cmVmZXJyZXItcG9saWN5Lmh0dHBzLmh0bWwKQEAgLTg1LDcgKzgzLDYgQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZXNwb25kLXdpdGgtcmVzcG9uc2Ut
Ym9keS13aXRoLWludmFsaWQtY2h1bmsuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLWV2ZW50LXJlc3BvbmQtd2l0aC1zdG9wcy1wcm9wYWdhdGlvbi5odHRwcy5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtdGhyb3dzLWFmdGVyLXJlc3BvbmQtd2l0aC5odHRw
cy5odG1sCi0vTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGluLXN3LW1hbnVhbC5o
dHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQtd2l0aGluLXN3Lmh0dHBz
Lmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC13b3JrZXItdGltaW5nLWZyYW1l
LnRlbnRhdGl2ZS5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtZXZlbnQuaHR0
cHMuaHRtbApAQCAtMTAwLDYgKzk3LDcgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdv
cmtlci9mZXRjaC1yZXF1ZXN0LW5vLWZyZXNobmVzcy1oZWFkZXJzLmh0dHBzLmh0bWwKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlZGlyZWN0Lmh0dHBzLmh0bWwKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy5odG1sCisvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy1lcnJvci5odHRwcy53aW5kb3cuanMKIC9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXhoci1zeW5jLW9uLXdvcmtlci5odHRwcy5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHItc3luYy5odHRwcy5odG1s
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC14aHIuaHR0cHMuaHRtbApAQCAtMTA5
LDkgKzEwNywxMCBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dldHJlZ2lz
dHJhdGlvbi5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2V0cmVnaXN0cmF0aW9ucy5o
dHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMu
YW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaGlzdG9yaWNhbC5odHRwcy5hbnkuanMKIC9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9odHRwLXRvLWh0dHBzLXJlZGlyZWN0LWFuZC1yZWdpc3Rlci5odHRwcy5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1tdXRhYmxlLXByb3RvdHlwZS1zZXJ2aWNld29ya2Vy
Lmh0dHBzLmh0bWwKLS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9pbXBvcnQtbW9kdWxlLXNjcmlwdHMuaHR0
cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLWNyb3NzLW9yaWdpbi5o
dHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtbWltZS10eXBlcy5o
dHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvaW1wb3J0LXNjcmlwdHMtcmVkaXJlY3QuaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ltcG9ydC1zY3JpcHRzLXJlc291cmNlLW1hcC5o
dHRwcy5odG1sCkBAIC0xMzAsMTAgKzEyOSwxNCBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL211bHRpcGxlLXVwZGF0ZS5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
bmF2aWdhdGUtd2luZG93Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9u
LXJlZGlyZWN0LWJvZHkuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25hdmlnYXRpb24t
cmVkaXJlY3QtcmVzb2x1dGlvbi5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmF2aWdh
dGlvbi1yZWRpcmVjdC10by1odHRwLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZp
Z2F0aW9uLXJlZGlyZWN0Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uYXZpZ2F0aW9u
LXRpbWluZy5odHRwcy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbmVzdGVkLWJsb2ItdXJsLXdv
cmtlcnMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL25leHQtaG9wLXByb3RvY29sLmh0
dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9uby1keW5hbWljLWltcG9ydC1pbi1tb2R1bGUu
YW55LmpzCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvbm8tZHluYW1pYy1pbXBvcnQuYW55LmpzCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvb25hY3RpdmF0ZS1zY3JpcHQtZXJyb3IuaHR0cHMuaHRtbAogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL29uaW5zdGFsbC1zY3JpcHQtZXJyb3IuaHR0cHMuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL29wYXF1ZS1yZXNwb25zZS1wcmVsb2FkZWQuaHR0cHMuaHRtbApAQCAtMTYwLDcg
KzE2Myw5IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9u
LWlmcmFtZS5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9uLW1pbWUt
dHlwZXMuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY2hlZHVs
ZS1qb2IuaHR0cHMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zY29wZS1t
b2R1bGUtc3RhdGljLWltcG9ydC5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0
cmF0aW9uLXNjb3BlLmh0dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24t
c2NyaXB0LW1vZHVsZS5odHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0aW9u
LXNjcmlwdC11cmwuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1z
Y3JpcHQuaHR0cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zZWN1cml0
eS1lcnJvci5odHRwcy5odG1sCkBAIC0xOTksOSArMjA0LDExIEBAIExpc3Qgb2YgZmlsZXM6CiAv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvdXBkYXRlLWFmdGVyLW5hdmlnYXRpb24tZmV0Y2gtZXZlbnQuaHR0
cHMuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1hZnRlci1uYXZpZ2F0aW9uLXJlZGly
ZWN0Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYWZ0ZXItb25lZGF5Lmh0
dHBzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLWNvcnMtaW1wb3J0
Lmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtYnl0ZWNoZWNrLmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtaW1wb3J0LXNjcmlwdHMuaHR0cHMuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1taXNzaW5nLWltcG9ydC1zY3JpcHRzLmh0dHBzLmh0
bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtbW9kdWxlLXJlcXVlc3QtbW9kZS5odHRwcy5o
dG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW5vLWNhY2hlLXJlcXVlc3QtaGVhZGVycy5o
dHRwcy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvdXBkYXRlLW5vdC1hbGxvd2VkLmh0dHBzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUtb24tbmF2aWdhdGlvbi5odHRwcy5odG1sCkBA
IC0yMTgsNSArMjI1LDYgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93b3Jr
ZXItaW4tc2FuZGJveGVkLWlmcmFtZS1ieS1jc3AtZmV0Y2gtZXZlbnQuaHR0cHMuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24tcmVkaXJlY3QuaHR0cHMuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbAorL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cuanMKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci94aHItcmVzcG9uc2UtdXJsLmh0dHBzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci94c2wtYmFzZS11cmwuaHR0cHMuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
d2luZG93Y2xpZW50LW5hdmlnYXRlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93aW5k
b3djbGllbnQtbmF2aWdhdGUuaHR0cHMuaHRtbAppbmRleCA0ZmQyYWExZDA2ZjYyZmM5NmNhMDBk
ZDY1NmM5MDdjYTUwZWY1YzJjLi5hZDYwZjc4NjM2M2Q2YWM0MTU3ZDlhNDM3MmUyNWI2YjE1NTQ0
MTA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93aW5kb3djbGllbnQtbmF2aWdhdGUu
aHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93aW5kb3djbGllbnQtbmF2aWdhdGUu
aHR0cHMuaHRtbApAQCAtMTEsMTEyICsxMSwxMzYgQEAKIAogY29uc3QgU0NPUEUgPSAncmVzb3Vy
Y2VzL2JsYW5rLmh0bWwnOwogY29uc3QgU0NSSVBUX1VSTCA9ICdyZXNvdXJjZXMvd2luZG93Y2xp
ZW50LW5hdmlnYXRlLXdvcmtlci5qcyc7Ci1jb25zdCBDUk9TU19PUklHSU5fVVJMID0gZ2V0X2hv
c3RfaW5mbygpWydIVFRQU19SRU1PVEVfT1JJR0lOJ10gKyBiYXNlX3BhdGgoKSArCi0gICAgJ3Jl
c291cmNlcy9ibGFuay5odG1sJzsKLQotbmF2aWdhdGVfdGVzdCh7Ci0gICAgZGVzY3JpcHRpb246
ICdub3JtYWwnLAotICAgIGRlc3RfdXJsOiAnYmxhbmsuaHRtbD9uYXZpZ2F0ZScsCi0gICAgZXhw
ZWN0ZWQ6IG5vcm1hbGl6ZVVSTChTQ09QRSkgKyAnP25hdmlnYXRlJywKLSAgfSk7Ci0KLW5hdmln
YXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnYmxhbmsgdXJsJywKLSAgICBkZXN0X3VybDog
JycsCi0gICAgZXhwZWN0ZWQ6IG5vcm1hbGl6ZVVSTChTQ1JJUFRfVVJMKQotICB9KTsKLQotbmF2
aWdhdGVfdGVzdCh7Ci0gICAgZGVzY3JpcHRpb246ICdpbiBzY29wZSBidXQgbm90IGNvbnRyb2xs
ZWQgdGVzdCBvbiBpbnN0YWxsaW5nIHdvcmtlcicsCi0gICAgZGVzdF91cmw6ICdibGFuay5odG1s
P25hdmlnYXRlJywKLSAgICBleHBlY3RlZDogJ1R5cGVFcnJvcicsCi0gICAgd2FpdF9zdGF0ZTog
J2luc3RhbGxpbmcnLAotICB9KTsKLQotbmF2aWdhdGVfdGVzdCh7Ci0gICAgZGVzY3JpcHRpb246
ICdpbiBzY29wZSBidXQgbm90IGNvbnRyb2xsZWQgdGVzdCBvbiBhY3RpdmUgd29ya2VyJywKLSAg
ICBkZXN0X3VybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAotICAgIGV4cGVjdGVkOiAnVHlwZUVy
cm9yJywKLSAgICBzaG91bGRfYmVfcmVsb2FkOiBmYWxzZSwKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rl
c3QoewotICAgIGRlc2NyaXB0aW9uOiAnb3V0IG9mIHNjb3BlJywKLSAgICBzcmNfdXJsOiAnL2Nv
bW1vbi9ibGFuay5odG1sJywKLSAgICBkZXN0X3VybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAot
ICAgIGV4cGVjdGVkOiAnVHlwZUVycm9yJywKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAg
IGRlc2NyaXB0aW9uOiAnY3Jvc3Mgb3JnaW4gdXJsJywKLSAgICBkZXN0X3VybDogQ1JPU1NfT1JJ
R0lOX1VSTCwKLSAgICBleHBlY3RlZDogbnVsbAotICB9KTsKLQotbmF2aWdhdGVfdGVzdCh7Ci0g
ICAgZGVzY3JpcHRpb246ICdpbnZhbGlkIHVybCAoaHR0cDovL1tleGFtcGxlLmNvbV0pJywKLSAg
ICBkZXN0X3VybDogJ2h0dHA6Ly9bZXhhbXBsZV0uY29tJywKLSAgICBleHBlY3RlZDogJ1R5cGVF
cnJvcicKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW52YWxp
ZCB1cmwgKHZpZXctc291cmNlOi8vZXhhbXBsZS5jb20pJywKLSAgICBkZXN0X3VybDogJ3ZpZXct
c291cmNlOi8vZXhhbXBsZS5jb20nLAotICAgIGV4cGVjdGVkOiAnVHlwZUVycm9yJwotICB9KTsK
LQotbmF2aWdhdGVfdGVzdCh7Ci0gICAgZGVzY3JpcHRpb246ICdpbnZhbGlkIHVybCAoZmlsZTov
Ly8pJywKLSAgICBkZXN0X3VybDogJ2ZpbGU6Ly8vJywKLSAgICBleHBlY3RlZDogJ1R5cGVFcnJv
cicKLSAgfSk7Ci0KLW5hdmlnYXRlX3Rlc3QoewotICAgIGRlc2NyaXB0aW9uOiAnaW52YWxpZCB1
cmwgKGFib3V0OmJsYW5rKScsCi0gICAgZGVzdF91cmw6ICdhYm91dDpibGFuaycsCi0gICAgZXhw
ZWN0ZWQ6ICdUeXBlRXJyb3InCi0gIH0pOwotCi1mdW5jdGlvbiBuYXZpZ2F0ZV90ZXN0KG92ZXJy
aWRlX3BhcmFtZXRlcnMpIHsKK2NvbnN0IENST1NTX09SSUdJTl9VUkwgPQorICBnZXRfaG9zdF9p
bmZvKClbJ0hUVFBTX1JFTU9URV9PUklHSU4nXSArIGJhc2VfcGF0aCgpICsgJ3Jlc291cmNlcy9i
bGFuay5odG1sJzsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246ICdub3JtYWwnLAor
ICBkZXN0VXJsOiAnYmxhbmsuaHRtbD9uYXZpZ2F0ZScsCisgIGV4cGVjdGVkOiBub3JtYWxpemVV
UkwoU0NPUEUpICsgJz9uYXZpZ2F0ZScsCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3Jp
cHRpb246ICdibGFuayB1cmwnLAorICBkZXN0VXJsOiAnJywKKyAgZXhwZWN0ZWQ6IG5vcm1hbGl6
ZVVSTChTQ1JJUFRfVVJMKQorfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAn
aW4gc2NvcGUgYnV0IG5vdCBjb250cm9sbGVkIHRlc3Qgb24gaW5zdGFsbGluZyB3b3JrZXInLAor
ICBkZXN0VXJsOiAnYmxhbmsuaHRtbD9uYXZpZ2F0ZScsCisgIGV4cGVjdGVkOiAnVHlwZUVycm9y
JywKKyAgd2FpdFN0YXRlOiAnaW5zdGFsbGluZycsCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAg
ZGVzY3JpcHRpb246ICdpbiBzY29wZSBidXQgbm90IGNvbnRyb2xsZWQgdGVzdCBvbiBhY3RpdmUg
d29ya2VyJywKKyAgZGVzdFVybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3RlZDog
J1R5cGVFcnJvcicsCisgIGNvbnRyb2xsZWQ6IGZhbHNlLAorfSk7CisKK25hdmlnYXRlVGVzdCh7
CisgIGRlc2NyaXB0aW9uOiAnb3V0IG9mIHNjb3BlJywKKyAgc3JjVXJsOiAnL2NvbW1vbi9ibGFu
ay5odG1sJywKKyAgZGVzdFVybDogJ2JsYW5rLmh0bWw/bmF2aWdhdGUnLAorICBleHBlY3RlZDog
J1R5cGVFcnJvcicsCit9KTsKKworbmF2aWdhdGVUZXN0KHsKKyAgZGVzY3JpcHRpb246ICdjcm9z
cyBvcmdpbiB1cmwnLAorICBkZXN0VXJsOiBDUk9TU19PUklHSU5fVVJMLAorICBleHBlY3RlZDog
bnVsbAorfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRlc2NyaXB0aW9uOiAnaW52YWxpZCB1cmwg
KGh0dHA6Ly9bZXhhbXBsZS5jb21dKScsCisgIGRlc3RVcmw6ICdodHRwOi8vW2V4YW1wbGVdLmNv
bScsCisgIGV4cGVjdGVkOiAnVHlwZUVycm9yJworfSk7CisKK25hdmlnYXRlVGVzdCh7CisgIGRl
c2NyaXB0aW9uOiAnaW52YWxpZCB1cmwgKHZpZXctc291cmNlOi8vZXhhbXBsZS5jb20pJywKKyAg
ZGVzdFVybDogJ3ZpZXctc291cmNlOi8vZXhhbXBsZS5jb20nLAorICBleHBlY3RlZDogJ1R5cGVF
cnJvcicKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJs
IChmaWxlOi8vLyknLAorICBkZXN0VXJsOiAnZmlsZTovLy8nLAorICBleHBlY3RlZDogJ1R5cGVF
cnJvcicKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ2ludmFsaWQgdXJs
IChhYm91dDpibGFuayknLAorICBkZXN0VXJsOiAnYWJvdXQ6YmxhbmsnLAorICBleHBlY3RlZDog
J1R5cGVFcnJvcicKK30pOworCituYXZpZ2F0ZVRlc3QoeworICBkZXNjcmlwdGlvbjogJ25hdmln
YXRlIG9uIGEgdG9wLWxldmVsIHdpbmRvdyBjbGllbnQnLAorICBkZXN0VXJsOiAnYmxhbmsuaHRt
bD9uYXZpZ2F0ZScsCisgIHNyY1VybDogJ3Jlc291cmNlcy9sb2FkZWQuaHRtbCcsCisgIHNjb3Bl
OiAncmVzb3VyY2VzL2xvYWRlZC5odG1sJywKKyAgZXhwZWN0ZWQ6IG5vcm1hbGl6ZVVSTChTQ09Q
RSkgKyAnP25hdmlnYXRlJywKKyAgZnJhbWVUeXBlOiAndG9wLWxldmVsJworfSk7CisKK2FzeW5j
IGZ1bmN0aW9uIGNyZWF0ZUZyYW1lKHQsIHBhcmFtZXRlcnMpIHsKKyAgaWYgKHBhcmFtZXRlcnMu
ZnJhbWVUeXBlID09PSAndG9wLWxldmVsJykgeworICAgIC8vIFdhaXQgZm9yIHdpbmRvdy5vcGVu
IGlzIGNvbXBsZXRlZC4KKyAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAg
IGNvbnN0IHdpbiA9IHdpbmRvdy5vcGVuKHBhcmFtZXRlcnMuc3JjVXJsKTsKKyAgICAgIHQuYWRk
X2NsZWFudXAoKCkgPT4gd2luLmNsb3NlKCkpOworICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoJ21lc3NhZ2UnLCAoZSkgPT4geworICAgICAgICBpZiAoZS5kYXRhLnR5cGUgPT09ICdMT0FE
RUQnKSB7CisgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICB9CisgICAgICB9KTsKKyAgICB9
KTsKKyAgfQorCisgIGlmIChwYXJhbWV0ZXJzLmZyYW1lVHlwZSA9PT0gJ25lc3RlZCcpIHsKKyAg
ICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZyYW1lKHBhcmFtZXRlcnMuc3JjVXJsKTsKKyAg
ICB0LmFkZF9jbGVhbnVwKCgpID0+IGZyYW1lLnJlbW92ZSgpKTsKKyAgfQorfQorCitmdW5jdGlv
biBuYXZpZ2F0ZVRlc3Qob3ZlcnJpZGVQYXJhbWV0ZXJzKSB7CiAgIC8vIGRlZmF1bHQgcGFyYW1l
dGVycwotICB2YXIgcGFyYW1ldGVycyA9IHsKKyAgY29uc3QgcGFyYW1ldGVycyA9IHsKICAgICBk
ZXNjcmlwdGlvbjogbnVsbCwKLSAgICBzcmNfdXJsOiBTQ09QRSwKLSAgICBkZXN0X3VybDogbnVs
bCwKKyAgICBzcmNVcmw6IFNDT1BFLAorICAgIGRlc3RVcmw6IG51bGwsCiAgICAgZXhwZWN0ZWQ6
IG51bGwsCi0gICAgd2FpdF9zdGF0ZTogJ2FjdGl2YXRlZCcsCisgICAgd2FpdFN0YXRlOiAnYWN0
aXZhdGVkJywKICAgICBzY29wZTogU0NPUEUsCi0gICAgc2hvdWxkX2JlX3JlbG9hZDogdHJ1ZQor
ICAgIGNvbnRyb2xsZWQ6IHRydWUsCisgICAgLy8gYGZyYW1lVHlwZWAgY2FuIGJlICduZXN0ZWQn
IGZvciBhbiBpZnJhbWUgV2luZG93Q2xpZW50IG9yICd0b3AtbGV2ZWwnIGZvcgorICAgIC8vIGEg
bWFpbiBmcmFtZSBXaW5kb3dDbGllbnQuCisgICAgZnJhbWVUeXBlOiAnbmVzdGVkJwogICB9Owot
ICB2YXIga2V5OwogCi0gIGZvciAoa2V5IGluIG92ZXJyaWRlX3BhcmFtZXRlcnMpCi0gICAgcGFy
YW1ldGVyc1trZXldID0gb3ZlcnJpZGVfcGFyYW1ldGVyc1trZXldOworICBmb3IgKGNvbnN0IGtl
eSBpbiBvdmVycmlkZVBhcmFtZXRlcnMpCisgICAgcGFyYW1ldGVyc1trZXldID0gb3ZlcnJpZGVQ
YXJhbWV0ZXJzW2tleV07CiAKLSAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHRlc3QpIHsKLSAgICB2
YXIgc2VydmljZV93b3JrZXI7Ci0gICAgdmFyIGNsaWVudF9mcmFtZTsKLSAgICB2YXIgcmVnaXN0
cmF0aW9uOwotICAgIHZhciBwYXVzZWRMaWZlY3ljbGVQb3J0OwotICAgIHZhciBzY3JpcHRfdXJs
ID0gU0NSSVBUX1VSTDsKKyAgcHJvbWlzZV90ZXN0KGFzeW5jIGZ1bmN0aW9uKHQpIHsKKyAgICBs
ZXQgcGF1c2VkTGlmZWN5Y2xlUG9ydDsKKyAgICBsZXQgc2NyaXB0VXJsID0gU0NSSVBUX1VSTDsK
IAogICAgIC8vIEZvciBpbi1zY29wZS1idXQtbm90LWNvbnRyb2xsZWQgdGVzdCBvbiBpbnN0YWxs
aW5nIHdvcmtlciwKLSAgICAvLyBpZiB0aGUgd2FpdF9zdGF0ZSBpcyAiaW5zdGFsbGluZyIsIHRo
ZW4gYXBwZW5kIHRoZSBxdWVyeSB0byBzY3JpcHRfdXJsLgotICAgIGlmIChwYXJhbWV0ZXJzLndh
aXRfc3RhdGUgPT0gJ2luc3RhbGxpbmcnKSB7Ci0gICAgICBzY3JpcHRfdXJsICs9ICc/JyArIHBh
cmFtZXRlcnMud2FpdF9zdGF0ZTsKLQotICAgICAgbmF2aWdhdG9yLnNlcnZpY2VXb3JrZXIuYWRk
RXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgaWYg
KGV2ZW50LmRhdGEucG9ydCkgewotICAgICAgICAgICAgcGF1c2VkTGlmZWN5Y2xlUG9ydCA9IGV2
ZW50LmRhdGEucG9ydDsKLSAgICAgICAgICB9Ci0gICAgICAgIH0pOworICAgIC8vIGlmIHRoZSB3
YWl0U3RhdGUgaXMgImluc3RhbGxpbmciLCB0aGVuIGFwcGVuZCB0aGUgcXVlcnkgdG8gc2NyaXB0
VXJsLgorICAgIGlmIChwYXJhbWV0ZXJzLndhaXRTdGF0ZSA9PT0gJ2luc3RhbGxpbmcnKSB7Cisg
ICAgICBzY3JpcHRVcmwgKz0gJz8nICsgcGFyYW1ldGVycy53YWl0U3RhdGU7CisKKyAgICAgIG5h
dmlnYXRvci5zZXJ2aWNlV29ya2VyLmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCAoZXZlbnQp
ID0+IHsKKyAgICAgICAgaWYgKGV2ZW50LmRhdGEucG9ydCkgeworICAgICAgICAgIHBhdXNlZExp
ZmVjeWNsZVBvcnQgPSBldmVudC5kYXRhLnBvcnQ7CisgICAgICAgIH0KKyAgICAgIH0pOwogICAg
IH0KIAotICAgIHRlc3QuYWRkX2NsZWFudXAoZnVuY3Rpb24oKSB7Ci0gICAgICBpZiAoY2xpZW50
X2ZyYW1lICYmIGNsaWVudF9mcmFtZSkgewotICAgICAgICBjbGllbnRfZnJhbWUucmVtb3ZlKCk7
Ci0gICAgICB9Ci0KKyAgICB0LmFkZF9jbGVhbnVwKCgpID0+IHsKICAgICAgIC8vIFNvbWUgdGVz
dHMgcmVxdWlyZSB0aGF0IHRoZSB3b3JrZXIgcmVtYWluIGluIGEgZ2l2ZW4gbGlmZWN5Y2xlIHBo
YXNlLgogICAgICAgLy8gIkNsZWFuIHVwIiBsb2dpYyBmb3IgdGhlc2UgdGVzdHMgcmVxdWlyZXMg
c2lnbmFsaW5nIHRoZSB3b3JrZXIgdG8KICAgICAgIC8vIHJlbGVhc2UgdGhlIGhvbGQ7IHRoaXMg
YWxsb3dzIHRoZSB3b3JrZXIgdG8gYmUgcHJvcGVybHkgZGlzY2FyZGVkCkBAIC0xMjYsNDcgKzE1
MCw0MCBAQCBmdW5jdGlvbiBuYXZpZ2F0ZV90ZXN0KG92ZXJyaWRlX3BhcmFtZXRlcnMpIHsKICAg
ICAgICAgLy8gc3BlY2lmaWVkIGhlcmUgc29sZWx5IHRvIGFpZCBpbiB0ZXN0IGRlYnVnZ2luZy4K
ICAgICAgICAgcGF1c2VkTGlmZWN5Y2xlUG9ydC5wb3N0TWVzc2FnZSgnY29udGludWUgbGlmZWN5
Y2xlJyk7CiAgICAgICB9CisgICAgfSk7CiAKLSAgICAgIGlmIChyZWdpc3RyYXRpb24pIHsKLSAg
ICAgICAgcmV0dXJuIHJlZ2lzdHJhdGlvbi51bnJlZ2lzdGVyKCk7Ci0gICAgICB9CisgICAgLy8g
Q3JlYXRlIGEgZnJhbWUgdGhhdCBpcyBub3QgY29udHJvbGxlZCBieSBhIHNlcnZpY2Ugd29ya2Vy
LgorICAgIGlmICghcGFyYW1ldGVycy5jb250cm9sbGVkKSB7CisgICAgICBhd2FpdCBjcmVhdGVG
cmFtZSh0LCBwYXJhbWV0ZXJzKTsKKyAgICB9CisKKyAgICBjb25zdCByZWdpc3RyYXRpb24gPSBh
d2FpdCBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAgICAgICAgdCwg
c2NyaXB0VXJsLCBwYXJhbWV0ZXJzLnNjb3BlKTsKKyAgICBjb25zdCBzZXJ2aWNlV29ya2VyID0g
cmVnaXN0cmF0aW9uLmluc3RhbGxpbmc7CisgICAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgc2Vy
dmljZVdvcmtlciwgcGFyYW1ldGVycy53YWl0U3RhdGUpOworICAgIHQuYWRkX2NsZWFudXAoKCkg
PT4gcmVnaXN0cmF0aW9uLnVucmVnaXN0ZXIoKSk7CisKKyAgICAvLyBDcmVhdGUgYSBmcmFtZSBh
ZnRlciBhIHNlcnZpY2Ugd29ya2VyIGlzIHJlZ2lzdGVyZWQgc28gdGhhdCB0aGUgZnJtYWUgaXMK
KyAgICAvLyBjb250cm9sbGVkIGJ5IGFuIGFjdGl2ZSBzZXJ2aWNlIHdvcmtlci4KKyAgICBpZiAo
cGFyYW1ldGVycy5jb250cm9sbGVkKSB7CisgICAgICBhd2FpdCBjcmVhdGVGcmFtZSh0LCBwYXJh
bWV0ZXJzKTsKKyAgICB9CisKKyAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IG5ldyBQcm9taXNl
KHJlc29sdmUgPT4geworICAgICAgY29uc3QgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgp
OworICAgICAgY2hhbm5lbC5wb3J0MS5vbm1lc3NhZ2UgPSB0LnN0ZXBfZnVuYyhyZXNvbHZlKTsK
KyAgICAgIHNlcnZpY2VXb3JrZXIucG9zdE1lc3NhZ2UoeworICAgICAgICBwb3J0OiBjaGFubmVs
LnBvcnQyLAorICAgICAgICB1cmw6IHBhcmFtZXRlcnMuZGVzdFVybCwKKyAgICAgICAgY2xpZW50
VXJsOiBuZXcgVVJMKHBhcmFtZXRlcnMuc3JjVXJsLCBsb2NhdGlvbikudG9TdHJpbmcoKSwKKyAg
ICAgICAgZnJhbWVUeXBlOiBwYXJhbWV0ZXJzLmZyYW1lVHlwZSwKKyAgICAgICAgZXhwZWN0ZWQ6
IHBhcmFtZXRlcnMuZXhwZWN0ZWQsCisgICAgICAgIGRlc2NyaXB0aW9uOiBwYXJhbWV0ZXJzLmRl
c2NyaXB0aW9uLAorICAgICAgfSwgW2NoYW5uZWwucG9ydDJdKTsKICAgICB9KTsKIAotICAgIHJl
dHVybiB3aXRoX2lmcmFtZShwYXJhbWV0ZXJzLnNyY191cmwpCi0gICAgICAudGhlbihmdW5jdGlv
bihmcmFtZSkgewotICAgICAgICAgIGNsaWVudF9mcmFtZSA9IGZyYW1lOwotICAgICAgICAgIHJl
dHVybiBzZXJ2aWNlX3dvcmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKLSAgICAgICAgICAg
ICAgdGVzdCwgc2NyaXB0X3VybCwgcGFyYW1ldGVycy5zY29wZSk7Ci0gICAgICAgIH0pCi0gICAg
ICAudGhlbihmdW5jdGlvbihyKSB7Ci0gICAgICAgICAgcmVnaXN0cmF0aW9uID0gcjsKLSAgICAg
ICAgICBzZXJ2aWNlX3dvcmtlciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOwotICAgICAgICAg
IHJldHVybiB3YWl0X2Zvcl9zdGF0ZSh0ZXN0LCBzZXJ2aWNlX3dvcmtlciwgcGFyYW1ldGVycy53
YWl0X3N0YXRlKTsKLSAgICAgICAgfSkKLSAgICAgIC50aGVuKGZ1bmN0aW9uKCkgewotICAgICAg
ICAgIGlmIChwYXJhbWV0ZXJzLnNob3VsZF9iZV9yZWxvYWQpIHsKLSAgICAgICAgICAgIGNsaWVu
dF9mcmFtZS5yZW1vdmUoKTsKLSAgICAgICAgICAgIHJldHVybiB3aXRoX2lmcmFtZShwYXJhbWV0
ZXJzLnNyY191cmwpOwotICAgICAgICAgIH0KLSAgICAgICAgICByZXR1cm4gY2xpZW50X2ZyYW1l
OwotICAgICAgICB9KQotICAgICAgLnRoZW4oZnVuY3Rpb24oZnJhbWUpIHsKLSAgICAgICAgICBj
bGllbnRfZnJhbWUgPSBmcmFtZTsKLSAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rp
b24ocmVzb2x2ZSkgewotICAgICAgICAgICAgICB2YXIgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hh
bm5lbCgpOwotICAgICAgICAgICAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IHRlc3Quc3Rl
cF9mdW5jKHJlc29sdmUpOwotICAgICAgICAgICAgICBzZXJ2aWNlX3dvcmtlci5wb3N0TWVzc2Fn
ZSh7Ci0gICAgICAgICAgICAgICAgICBwb3J0OiBjaGFubmVsLnBvcnQyLAotICAgICAgICAgICAg
ICAgICAgdXJsOiBwYXJhbWV0ZXJzLmRlc3RfdXJsLAotICAgICAgICAgICAgICAgICAgZXhwZWN0
ZWQ6IHBhcmFtZXRlcnMuZXhwZWN0ZWQsCi0gICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog
cGFyYW1ldGVycy5kZXNjcmlwdGlvbiwKLSAgICAgICAgICAgICAgICB9LCBbY2hhbm5lbC5wb3J0
Ml0pOwotICAgICAgICAgICAgfSk7Ci0gICAgICAgIH0pCi0gICAgICAudGhlbihmdW5jdGlvbihy
ZXNwb25zZSkgewotICAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UuZGF0YSwgbnVsbCk7
Ci0gICAgICAgICAgcmV0dXJuIGZldGNoX3Rlc3RzX2Zyb21fd29ya2VyKHNlcnZpY2Vfd29ya2Vy
KTsKLSAgICAgICAgfSk7CisgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5kYXRhLCBudWxsKTsK
KyAgICBhd2FpdCBmZXRjaF90ZXN0c19mcm9tX3dvcmtlcihzZXJ2aWNlV29ya2VyKTsKICAgfSwg
cGFyYW1ldGVycy5kZXNjcmlwdGlvbik7CiB9CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvd29ya2VyLWludGVyY2VwdGlvbi5odHRwcy1leHBlY3RlZC50eHQKaW5k
ZXggZWMzODBhOWI3ZWNjZDY5Y2YxYjVhZTI5MzA2NmFlNjE5ZTUyNzc2OC4uYjIwMjQ0ZWI4NDYz
YWU2YjBkMzk2OWQwNzI5OWNmMzhlNTY5ZmU3ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvd29ya2VyLWludGVyY2VwdGlvbi5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvd29ya2VyLWludGVyY2VwdGlvbi5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNSAr
MSw2IEBACiAKIEZBSUwgVmVyaWZ5IGEgZGVkaWNhdGVkIHdvcmtlciBzY3JpcHQgcmVxdWVzdCBp
c3N1ZWQgZnJvbSBhIHVuY29udHJvbGxlZCBkb2N1bWVudCBpcyBpbnRlcmNlcHRlZCBieSB3b3Jr
ZXIncyBvd24gc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiB1bmRlZmluZWQKK0ZBSUwgVmVyaWZ5IGFuIG91dC1vZi1zY29wZSBkZWRp
Y2F0ZWQgd29ya2VyIHNjcmlwdCByZXF1ZXN0IGlzc3VlZCBmcm9tIGEgY29udHJvbGxlZCBkb2N1
bWVudCBzaG91bGQgbm90IGJlIGludGVyY2VwdGVkIGJ5IGRvY3VtZW50J3Mgc2VydmljZSB3b3Jr
ZXIuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJ3b3JrZXIgbG9hZGluZyB3YXMgbm90IGludGVy
Y2VwdGVkIGJ5IHNlcnZpY2Ugd29ya2VyIiBidXQgZ290ICJ3b3JrZXIgbG9hZGluZyBpbnRlcmNl
cHRlZCBieSBzZXJ2aWNlIHdvcmtlciIKIEZBSUwgVmVyaWZ5IGEgc2hhcmVkIHdvcmtlciBzY3Jp
cHQgcmVxdWVzdCBpc3N1ZWQgZnJvbSBhIHVuY29udHJvbGxlZCBkb2N1bWVudCBpcyBpbnRlcmNl
cHRlZCBieSB3b3JrZXIncyBvd24gc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBTaGFyZWRXb3JrZXIiCiBGQUlMIFZlcmlmeSBhIHNhbWUtb3JpZ2luIHdv
cmtlciBzY3JpcHQgc2VydmVkIGJ5IGEgc2VydmljZSB3b3JrZXIgc3VjY2VlZHMgaW4gc3RhcnRp
bmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogdW5kZWZpbmVkCiBGQUlMIFZlcmlmeSBhIHNhbWUtb3JpZ2luIHdvcmtlciBz
Y3JpcHQgc2VydmVkIGJ5IGEgc2VydmljZSB3b3JrZXIgc3VjY2VlZHMgaW4gc3RhcnRpbmcgYSBz
aGFyZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogU2hhcmVkV29y
a2VyIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd29ya2VyLWludGVyY2VwdGlvbi5o
dHRwcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd29ya2VyLWludGVyY2VwdGlvbi5odHRwcy5o
dG1sCmluZGV4IDMwMmEyMTRhYzYxOTQwMGMzOGY3NTY0YzA2NWE1ZTBiZTQ3YWM2ZGYuLjJlZmRl
YWNmMDg0OWMyOGRiOGNkZjQwNGI3YWIzZjUxODEwOGZkNmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3dvcmtlci1pbnRlcmNlcHRpb24uaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci93b3JrZXItaW50ZXJjZXB0aW9uLmh0dHBzLmh0bWwKQEAgLTE3LDggKzE3LDggQEAg
YXN5bmMgZnVuY3Rpb24gc2V0dXBfc2VydmljZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJfdXJs
LCBzY29wZSkgewogfQogCiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gIGNvbnN0IHdvcmtl
cl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXN5bnRoZXNpemVkLXdvcmtlci5qcz9kZWRpY2F0ZWQn
OwotICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1p
bnRlcmNlcHRvci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1z
eW50aGVzaXplZC13b3JrZXIuanM/ZGVkaWNhdGVkJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJf
dXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qg
c2NvcGUgPSB3b3JrZXJfdXJsOwogCiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNl
cnZpY2Vfd29ya2VyX3VybCwgc2NvcGUpOwpAQCAtMzIsOCArMzIsMzUgQEAgcHJvbWlzZV90ZXN0
KGFzeW5jIHQgPT4gewogICAgYGRvY3VtZW50IGlzIGludGVyY2VwdGVkIGJ5IHdvcmtlcidzIG93
biBzZXJ2aWNlIHdvcmtlci5gKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25z
dCB3b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS1zeW50aGVzaXplZC13b3JrZXIuanM/c2hh
cmVkJzsKLSAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9kdW1teS13b3Jr
ZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCBmcmFtZV91cmwgPSAncmVzb3VyY2VzL2NyZWF0
ZS1vdXQtb2Ytc2NvcGUtd29ya2VyLmh0bWwnOworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwg
PSAncmVzb3VyY2VzL3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3IuanMnOworICBjb25zdCBzY29w
ZSA9IGZyYW1lX3VybDsKKworICBjb25zdCByZWdpc3RyYXRpb24gPSBhd2FpdCBzZXJ2aWNlX3dv
cmtlcl91bnJlZ2lzdGVyX2FuZF9yZWdpc3RlcigKKyAgICAgIHQsIHNlcnZpY2Vfd29ya2VyX3Vy
bCwgc2NvcGUpOworICB0LmFkZF9jbGVhbnVwKCgpID0+IHNlcnZpY2Vfd29ya2VyX3VucmVnaXN0
ZXIodCwgc2NvcGUpKTsKKyAgYXdhaXQgd2FpdF9mb3Jfc3RhdGUodCwgcmVnaXN0cmF0aW9uLmlu
c3RhbGxpbmcsICdhY3RpdmF0ZWQnKTsKKworICBjb25zdCBmcmFtZSA9IGF3YWl0IHdpdGhfaWZy
YW1lKGZyYW1lX3VybCk7CisgIHQuYWRkX2NsZWFudXAoXyA9PiBmcmFtZS5yZW1vdmUoKSk7CisK
KyAgYXNzZXJ0X2VxdWFscygKKyAgICBmcmFtZS5jb250ZW50V2luZG93Lm5hdmlnYXRvci5zZXJ2
aWNlV29ya2VyLmNvbnRyb2xsZXIuc2NyaXB0VVJMLAorICAgIGdldF9uZXdlc3Rfd29ya2VyKHJl
Z2lzdHJhdGlvbikuc2NyaXB0VVJMLAorICAgICd0aGUgZnJhbWUgc2hvdWxkIGJlIGNvbnRyb2xs
ZWQgYnkgYSBzZXJ2aWNlIHdvcmtlcicKKyAgKTsKKworICBjb25zdCByZXN1bHQgPSBhd2FpdCBm
cmFtZS5jb250ZW50V2luZG93LmdldFdvcmtlclByb21pc2UoKTsKKworICBhc3NlcnRfZXF1YWxz
KHJlc3VsdCwKKyAgICAgICAgICAgICAgICAnd29ya2VyIGxvYWRpbmcgd2FzIG5vdCBpbnRlcmNl
cHRlZCBieSBzZXJ2aWNlIHdvcmtlcicpOworfSwgYFZlcmlmeSBhbiBvdXQtb2Ytc2NvcGUgZGVk
aWNhdGVkIHdvcmtlciBzY3JpcHQgcmVxdWVzdCBpc3N1ZWQgZnJvbSBhIGAgKworICAgYGNvbnRy
b2xsZWQgZG9jdW1lbnQgc2hvdWxkIG5vdCBiZSBpbnRlcmNlcHRlZCBieSBkb2N1bWVudCdzIHNl
cnZpY2UgYCArCisgICBgd29ya2VyLmApOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Cisg
IGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1zeW50aGVzaXplZC13b3JrZXIu
anM/c2hhcmVkJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1w
bGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJfdXJsOwog
CiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwgc2Nv
cGUpOwpAQCAtNDcsOCArNzQsOCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAgICBgZG9j
dW1lbnQgaXMgaW50ZXJjZXB0ZWQgYnkgd29ya2VyJ3Mgb3duIHNlcnZpY2Ugd29ya2VyLmApOwog
CiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3Vy
Y2VzL2R1bW15LXNhbWUtb3JpZ2luLXdvcmtlci5qcz9kZWRpY2F0ZWQnOwotICBjb25zdCBzZXJ2
aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7
CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1zYW1lLW9yaWdpbi13b3Jr
ZXIuanM/ZGVkaWNhdGVkJzsKKyAgY29uc3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNl
cy9zYW1wbGUtd29ya2VyLWludGVyY2VwdG9yLmpzJzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJf
dXJsOwogCiAgIGF3YWl0IHNldHVwX3NlcnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3Vy
bCwgc2NvcGUpOwpAQCAtNjIsOCArODksOCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAg
ICAnaW4gc3RhcnRpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLicpOwogCiBwcm9taXNlX3Rlc3QoYXN5
bmMgdCA9PiB7Ci0gIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXNhbWUtb3Jp
Z2luLXdvcmtlci5qcz9zaGFyZWQnOwotICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVz
b3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwg
PSAncmVzb3VyY2VzL3NhbXBsZS1zYW1lLW9yaWdpbi13b3JrZXIuanM/c2hhcmVkJzsKKyAgY29u
c3Qgc2VydmljZV93b3JrZXJfdXJsID0gJ3Jlc291cmNlcy9zYW1wbGUtd29ya2VyLWludGVyY2Vw
dG9yLmpzJzsKICAgY29uc3Qgc2NvcGUgPSB3b3JrZXJfdXJsOwogCiAgIGF3YWl0IHNldHVwX3Nl
cnZpY2Vfd29ya2VyKHQsIHNlcnZpY2Vfd29ya2VyX3VybCwgc2NvcGUpOwpAQCAtNzcsOCArMTA0
LDggQEAgcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewogICAgJ2luIHN0YXJ0aW5nIGEgc2hhcmVk
IHdvcmtlci4nKTsKIAogcHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJf
dXJsID0gJ3Jlc291cmNlcy9kdW1teS1jb3JzLXdvcmtlci5qcz9kZWRpY2F0ZWQnOwotICBjb25z
dCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRv
ci5qcyc7CisgIGNvbnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1jb3JzLXdvcmtl
ci5qcz9kZWRpY2F0ZWQnOworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2Vz
L3NhbXBsZS13b3JrZXItaW50ZXJjZXB0b3IuanMnOwogICBjb25zdCBzY29wZSA9IHdvcmtlcl91
cmw7CiAKICAgYXdhaXQgc2V0dXBfc2VydmljZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJfdXJs
LCBzY29wZSk7CkBAIC04OSw4ICsxMTYsOCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CiAg
ICAnd29ya2VyIHN0YXJ0LicpOwogCiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gIGNvbnN0
IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LWNvcnMtd29ya2VyLmpzP3NoYXJlZCc7Ci0g
IGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktd29ya2VyLWludGVy
Y2VwdG9yLmpzJzsKKyAgY29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLWNvcnMt
d29ya2VyLmpzP3NoYXJlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJj
ZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0IHNjb3BlID0gd29ya2Vy
X3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBzZXJ2aWNlX3dvcmtlcl91
cmwsIHNjb3BlKTsKQEAgLTEwMSw4ICsxMjgsOCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7
CiAgICAnd29ya2VyIHN0YXJ0LicpOwogCiBwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7Ci0gIGNv
bnN0IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL2R1bW15LW5vLWNvcnMtd29ya2VyLmpzP2RlZGlj
YXRlZCc7Ci0gIGNvbnN0IHNlcnZpY2Vfd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvZHVtbXktd29y
a2VyLWludGVyY2VwdG9yLmpzJzsKKyAgY29uc3Qgd29ya2VyX3VybCA9ICdyZXNvdXJjZXMvc2Ft
cGxlLW5vLWNvcnMtd29ya2VyLmpzP2RlZGljYXRlZCc7CisgIGNvbnN0IHNlcnZpY2Vfd29ya2Vy
X3VybCA9ICdyZXNvdXJjZXMvc2FtcGxlLXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CiAgIGNvbnN0
IHNjb3BlID0gd29ya2VyX3VybDsKIAogICBhd2FpdCBzZXR1cF9zZXJ2aWNlX3dvcmtlcih0LCBz
ZXJ2aWNlX3dvcmtlcl91cmwsIHNjb3BlKTsKQEAgLTExMyw4ICsxNDAsOCBAQCBwcm9taXNlX3Rl
c3QoYXN5bmMgdCA9PiB7CiAgICAnZmFpbHMgZGVkaWNhdGVkIHdvcmtlciBzdGFydC4nKTsKIAog
cHJvbWlzZV90ZXN0KGFzeW5jIHQgPT4gewotICBjb25zdCB3b3JrZXJfdXJsID0gJ3Jlc291cmNl
cy9kdW1teS1uby1jb3JzLXdvcmtlci5qcz9zaGFyZWQnOwotICBjb25zdCBzZXJ2aWNlX3dvcmtl
cl91cmwgPSAncmVzb3VyY2VzL2R1bW15LXdvcmtlci1pbnRlcmNlcHRvci5qcyc7CisgIGNvbnN0
IHdvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS1uby1jb3JzLXdvcmtlci5qcz9zaGFyZWQn
OworICBjb25zdCBzZXJ2aWNlX3dvcmtlcl91cmwgPSAncmVzb3VyY2VzL3NhbXBsZS13b3JrZXIt
aW50ZXJjZXB0b3IuanMnOwogICBjb25zdCBzY29wZSA9IHdvcmtlcl91cmw7CiAKICAgYXdhaXQg
c2V0dXBfc2VydmljZV93b3JrZXIodCwgc2VydmljZV93b3JrZXJfdXJsLCBzY29wZSk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEzMjZiZmU1YzgwZWNhNjY4NWI1ODg4
YTU3NGY5N2EyN2Q5NWY0MTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94
aHItY29udGVudC1sZW5ndGguaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcg
QEAKKworUEFTUyBTZXR1cAorUEFTUyBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0aG91dCBDb250ZW50
LUxlbmd0aCBoZWFkZXIKK0ZBSUwgU3ludGhldGljIHJlc3BvbnNlIHdpdGggQ29udGVudC1MZW5n
dGggaGVhZGVyIHdpdGggdmFsdWUgbGFyZ2VyIHRoYW4gcmVzcG9uc2UgYm9keSBsZW5ndGggYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFN5bnRoZXRpYyByZXNwb25z
ZSB3aXRoIHR3byBDb250ZW50LUxlbmd0aCBoZWFkZXJzIHZhbHVlIGxhcmdlciB0aGFuIHJlc3Bv
bnNlIGJvZHkgbGVuZ3RoIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFT
UyBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0aCBib2d1cyBDb250ZW50LUxlbmd0aCBoZWFkZXIKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndp
bmRvdy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndp
bmRvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkzYjNhNWQ1NmM2NjBhNDUwNjA5ODBi
NTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItY29udGVudC1s
ZW5ndGguaHR0cHMud2luZG93Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMg
cmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxh
dGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIveGhyLWNvbnRlbnQtbGVuZ3RoLmh0dHBzLndpbmRvdy5qcyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMWFlMzIwZTljM2M1NzEzYTJkNDcyOTFkODNiYTdkNzJkYzAzYzE1MgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1jb250ZW50LWxlbmd0aC5odHRwcy53aW5kb3cu
anMKQEAgLTAsMCArMSw1NSBAQAorLy8gTUVUQTogc2NyaXB0PXJlc291cmNlcy90ZXN0LWhlbHBl
cnMuc3ViLmpzCisKK2xldCBmcmFtZTsKKworcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7Cisg
IGNvbnN0IHNjb3BlID0gInJlc291cmNlcy9lbXB0eS5odG1sIjsKKyAgY29uc3Qgc2NyaXB0ID0g
InJlc291cmNlcy94aHItY29udGVudC1sZW5ndGgtd29ya2VyLmpzIjsKKyAgY29uc3QgcmVnaXN0
cmF0aW9uID0gYXdhaXQgc2VydmljZV93b3JrZXJfdW5yZWdpc3Rlcl9hbmRfcmVnaXN0ZXIodCwg
c2NyaXB0LCBzY29wZSk7CisgIGF3YWl0IHdhaXRfZm9yX3N0YXRlKHQsIHJlZ2lzdHJhdGlvbi5p
bnN0YWxsaW5nLCAiYWN0aXZhdGVkIik7CisgIGZyYW1lID0gYXdhaXQgd2l0aF9pZnJhbWUoc2Nv
cGUpOworfSwgIlNldHVwIik7CisKK3Byb21pc2VfdGVzdChhc3luYyB0ID0+IHsKKyAgY29uc3Qg
eGhyID0gbmV3IGZyYW1lLmNvbnRlbnRXaW5kb3cuWE1MSHR0cFJlcXVlc3QoKTsKKyAgeGhyLm9w
ZW4oIkdFVCIsICJ0ZXN0P3R5cGU9bm8tY29udGVudC1sZW5ndGgiKTsKKyAgeGhyLnNlbmQoKTsK
KyAgY29uc3QgZXZlbnQgPSBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHhoci5vbmxvYWQg
PSByZXNvbHZlKTsKKyAgYXNzZXJ0X2VxdWFscyh4aHIuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRl
bnQtbGVuZ3RoIiksIG51bGwpOworICBhc3NlcnRfZmFsc2UoZXZlbnQubGVuZ3RoQ29tcHV0YWJs
ZSk7CisgIGFzc2VydF9lcXVhbHMoZXZlbnQudG90YWwsIDApOworICBhc3NlcnRfZXF1YWxzKGV2
ZW50LmxvYWRlZCwgeGhyLnJlc3BvbnNlVGV4dC5sZW5ndGgpOworfSwgYFN5bnRoZXRpYyByZXNw
b25zZSB3aXRob3V0IENvbnRlbnQtTGVuZ3RoIGhlYWRlcmApOworCitwcm9taXNlX3Rlc3QoYXN5
bmMgdCA9PiB7CisgIGNvbnN0IHhociA9IG5ldyBmcmFtZS5jb250ZW50V2luZG93LlhNTEh0dHBS
ZXF1ZXN0KCk7CisgIHhoci5vcGVuKCJHRVQiLCAidGVzdD90eXBlPWxhcmdlci1jb250ZW50LWxl
bmd0aCIpOworICB4aHIuc2VuZCgpOworICBjb25zdCBldmVudCA9IGF3YWl0IG5ldyBQcm9taXNl
KHJlc29sdmUgPT4geGhyLm9ubG9hZCA9IHJlc29sdmUpOworICBhc3NlcnRfZXF1YWxzKHhoci5n
ZXRSZXNwb25zZUhlYWRlcigiY29udGVudC1sZW5ndGgiKSwgIjEwMDAwIik7CisgIGFzc2VydF90
cnVlKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUpOworICBhc3NlcnRfZXF1YWxzKGV2ZW50LnRvdGFs
LCAxMDAwMCk7CisgIGFzc2VydF9lcXVhbHMoZXZlbnQubG9hZGVkLCB4aHIucmVzcG9uc2VUZXh0
Lmxlbmd0aCk7Cit9LCBgU3ludGhldGljIHJlc3BvbnNlIHdpdGggQ29udGVudC1MZW5ndGggaGVh
ZGVyIHdpdGggdmFsdWUgbGFyZ2VyIHRoYW4gcmVzcG9uc2UgYm9keSBsZW5ndGhgKTsKKworcHJv
bWlzZV90ZXN0KGFzeW5jIHQgPT4geworICBjb25zdCB4aHIgPSBuZXcgZnJhbWUuY29udGVudFdp
bmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICB4aHIub3BlbigiR0VUIiwgInRlc3Q/dHlwZT1kb3Vi
bGUtY29udGVudC1sZW5ndGgiKTsKKyAgeGhyLnNlbmQoKTsKKyAgY29uc3QgZXZlbnQgPSBhd2Fp
dCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHhoci5vbmxvYWQgPSByZXNvbHZlKTsKKyAgYXNzZXJ0
X2VxdWFscyh4aHIuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtbGVuZ3RoIiksICIxMDAwMCwg
MTAwMDAiKTsKKyAgYXNzZXJ0X3RydWUoZXZlbnQubGVuZ3RoQ29tcHV0YWJsZSk7CisgIGFzc2Vy
dF9lcXVhbHMoZXZlbnQudG90YWwsIDEwMDAwKTsKKyAgYXNzZXJ0X2VxdWFscyhldmVudC5sb2Fk
ZWQsIHhoci5yZXNwb25zZVRleHQubGVuZ3RoKTsKK30sIGBTeW50aGV0aWMgcmVzcG9uc2Ugd2l0
aCB0d28gQ29udGVudC1MZW5ndGggaGVhZGVycyB2YWx1ZSBsYXJnZXIgdGhhbiByZXNwb25zZSBi
b2R5IGxlbmd0aGApOworCitwcm9taXNlX3Rlc3QoYXN5bmMgdCA9PiB7CisgIGNvbnN0IHhociA9
IG5ldyBmcmFtZS5jb250ZW50V2luZG93LlhNTEh0dHBSZXF1ZXN0KCk7CisgIHhoci5vcGVuKCJH
RVQiLCAidGVzdD90eXBlPWJvZ3VzLWNvbnRlbnQtbGVuZ3RoIik7CisgIHhoci5zZW5kKCk7Cisg
IGNvbnN0IGV2ZW50ID0gYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB4aHIub25sb2FkID0g
cmVzb2x2ZSk7CisgIGFzc2VydF9lcXVhbHMoeGhyLmdldFJlc3BvbnNlSGVhZGVyKCJjb250ZW50
LWxlbmd0aCIpLCAidGVzdCIpOworICBhc3NlcnRfZmFsc2UoZXZlbnQubGVuZ3RoQ29tcHV0YWJs
ZSk7CisgIGFzc2VydF9lcXVhbHMoZXZlbnQudG90YWwsIDApOworICBhc3NlcnRfZXF1YWxzKGV2
ZW50LmxvYWRlZCwgeGhyLnJlc3BvbnNlVGV4dC5sZW5ndGgpOworfSwgYFN5bnRoZXRpYyByZXNw
b25zZSB3aXRoIGJvZ3VzIENvbnRlbnQtTGVuZ3RoIGhlYWRlcmApOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIveGhyLXJlc3BvbnNlLXVybC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIveGhyLXJlc3BvbnNlLXVybC5odHRwcy5odG1sCmluZGV4IDFhZDJjZTM4NTFjYzdiY2Uy
NDEyMGRkODBiZGY1NDY2Mjc4MWFjNjYuLjY3M2NhNTJjYzY3NDUwZjhiMjk2ZWE1MGY3YWM0YzRm
ZWUzMTA2MDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3hoci1yZXNwb25zZS11cmwu
aHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci94aHItcmVzcG9uc2UtdXJsLmh0dHBz
Lmh0bWwKQEAgLTMwLDcgKzMwLDcgQEAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CiAvLyB3
b3JrZXIuCiBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKICAgLy8gQnVpbGQgYSBVUkwgdGhh
dCB0ZWxscyB0aGUgc2VydmljZSB3b3JrZXIgdG8gcmVzcG9uZFdpdGgoZmV0Y2gofHRhcmdldHwp
KS4KLSAgY29uc3QgdGFyZ2V0ID0gbmV3IFVSTCgncmVzb3VyY2VzL2R1bW15LnR4dCcsIHdpbmRv
dy5sb2NhdGlvbik7CisgIGNvbnN0IHRhcmdldCA9IG5ldyBVUkwoJ3Jlc291cmNlcy9zYW1wbGUu
dHh0Jywgd2luZG93LmxvY2F0aW9uKTsKICAgY29uc3QgdXJsID0gYnVpbGRfdXJsKHsKICAgICBy
ZXNwb25kV2l0aDogJ2ZldGNoJywKICAgICB1cmw6IHRhcmdldApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvdGVzdHMtb3B0aW9ucy5qc29uIGIvTGF5b3V0VGVzdHMvdGVzdHMtb3B0aW9ucy5qc29u
CmluZGV4IDM1MzMzNjI3NTc1ZmQ1NDU1OWQ4ZGU4MzhhM2ExOThhMWYwMzU0ZDkuLmMxOGI2ZGNj
NmIwZDAyNDk4MjBiNDkyOGZiOTY3NTNjNzM5YjQ2MGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3Rlc3RzLW9wdGlvbnMuanNvbgorKysgYi9MYXlvdXRUZXN0cy90ZXN0cy1vcHRpb25zLmpzb24K
QEAgLTI4NDksNiArMjg0OSwxMiBAQAogICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9hY3RpdmF0aW9uLmh0dHBzLmh0bWwi
OiBbCiAgICAgICAgICJzbG93IgogICAgIF0sCisgICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsYWltLWZldGNoLmh0dHBz
Lmh0bWwiOiBbCisgICAgICAgICJzbG93IgorICAgIF0sCisgICAgImltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudC1uYXZp
Z2F0ZS5odHRwcy5odG1sIjogWworICAgICAgICAic2xvdyIKKyAgICBdLAogICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9j
bGllbnRzLW1hdGNoYWxsLW9yZGVyLmh0dHBzLmh0bWwiOiBbCiAgICAgICAgICJzbG93IgogICAg
IF0sCkBAIC0yOTE1LDYgKzI5MjEsOSBAQAogICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3RyYXRpb24tbWltZS10
eXBlcy5odHRwcy5odG1sIjogWwogICAgICAgICAic2xvdyIKICAgICBdLAorICAgICJpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9y
ZWdpc3RyYXRpb24tc2NoZWR1bGUtam9iLmh0dHBzLmh0bWwiOiBbCisgICAgICAgICJzbG93Igor
ICAgIF0sCiAgICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi11cGRhdGV2aWFjYWNoZS5odHRwcy5odG1s
IjogWwogICAgICAgICAic2xvdyIKICAgICBdLApAQCAtMjkzMyw5ICsyOTQyLDE1IEBACiAgICAg
ImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL3VwZGF0ZS1hZnRlci1uYXZpZ2F0aW9uLXJlZGlyZWN0Lmh0dHBzLmh0bWwiOiBbCiAg
ICAgICAgICJzbG93IgogICAgIF0sCisgICAgImltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1ieXRlY2hlY2stY29ycy1p
bXBvcnQuaHR0cHMuaHRtbCI6IFsKKyAgICAgICAgInNsb3ciCisgICAgXSwKICAgICAiaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
dXBkYXRlLWJ5dGVjaGVjay5odHRwcy5odG1sIjogWwogICAgICAgICAic2xvdyIKICAgICBdLAor
ICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci91cGRhdGUtbW9kdWxlLXJlcXVlc3QtbW9kZS5odHRwcy5odG1sIjogWworICAg
ICAgICAic2xvdyIKKyAgICBdLAogICAgICJpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91cGRhdGUuaHR0cHMuaHRtbCI6IFsKICAg
ICAgICAgInNsb3ciCiAgICAgXSwK
</data>

          </attachment>
      

    </bug>

</bugzilla>