<?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>163969</bug_id>
          
          <creation_ts>2016-10-25 13:04:42 -0700</creation_ts>
          <short_desc>Add CEReactions to the remaining HTML DOM APIs</short_desc>
          <delta_ts>2018-08-02 22:08:27 -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>DOM</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=171813</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>154907</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1244371</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-10-25 13:04:42 -0700</bug_when>
    <thetext>Add CEReactions IDL Attribute to the remaining DOM/HTML APIs.
Because we don&apos;t support customized builtin elements (is= attribute),
a far fewer attributes than what&apos;s being spec&apos;ed needs this IDL attribute.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245779</commentid>
    <comment_count>1</comment_count>
      <attachid>293211</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-10-28 14:19:30 -0700</bug_when>
    <thetext>Created attachment 293211
Adds CEReactions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245783</commentid>
    <comment_count>2</comment_count>
      <attachid>293211</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-28 14:22:00 -0700</bug_when>
    <thetext>Comment on attachment 293211
Adds CEReactions

r=me if the bots are happy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245870</commentid>
    <comment_count>3</comment_count>
      <attachid>293211</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-28 16:52:40 -0700</bug_when>
    <thetext>Comment on attachment 293211
Adds CEReactions

Clearing flags on attachment: 293211

Committed r208082: &lt;http://trac.webkit.org/changeset/208082&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245871</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-28 16:52:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1246822</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-10-31 22:17:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/29038887&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293211</attachid>
            <date>2016-10-28 14:19:30 -0700</date>
            <delta_ts>2016-10-28 16:52:40 -0700</delta_ts>
            <desc>Adds CEReactions</desc>
            <filename>bug-163969-20161028141539.patch</filename>
            <type>text/plain</type>
            <size>88996</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3ODI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzYzYWFhZWM3MjJkZWZh
OGZmOWViYjBlODYxZmVlODY0NDUyZmY1Mi4uMGQwNTZlMjZhZjdlNTEwNGY4YTgwNWY4MjlmZGNj
ODVhNDM4MjcwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDE2LTEwLTI4ICBSeW9z
dWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBDRVJlYWN0aW9ucyB0
byB0aGUgcmVtYWluaW5nIEhUTUwgRE9NIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mzk2OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIENFUmVhY3Rpb25zIHRvIHRoZSByZW1haW5pbmcg
RE9NIGFuZCBIVE1MIEFQSXMgYXMgbmVlZGVkLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2N1c3Rv
bS1lbGVtZW50cy9yZWFjdGlvbnMtZm9yLWluZGlldWkuaHRtbAorICAgICAgICAgICAgICAgZmFz
dC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0RvY3VtZW50Lmh0bWwKKyAgICAgICAgICAgICAg
IGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MQW5jaG9yRWxlbWVudC5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTE9wdGlvbkVs
ZW1lbnQuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25z
L0hUTUxPcHRpb25zQ29sbGVjdGlvbi5odG1sCisgICAgICAgICAgICAgICBmYXN0L2N1c3RvbS1l
bGVtZW50cy9yZWFjdGlvbnMvSFRNTE91dHB1dEVsZW1lbnQuaHRtbAorICAgICAgICAgICAgICAg
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxTZWxlY3RFbGVtZW50Lmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVFbGVt
ZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9I
VE1MVGFibGVSb3dFbGVtZW50Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3VzdG9tLWVsZW1l
bnRzL3JlYWN0aW9ucy9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRpdGxlRWxlbWVudC5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvU2hhZG93Um9vdC5o
dG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxPcHRpb25zQ29sbGVjdGlvbjo6c2V0TGVu
Z3RoKToKKyAgICAgICAgKFdlYkNvcmU6OkpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjppbmRleFNl
dHRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MU2VsZWN0RWxlbWVudEN1c3RvbS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpKU0hUTUxTZWxlY3RFbGVtZW50OjppbmRleFNldHRlcik6
CisgICAgICAgICogZG9tL0NoYXJhY3RlckRhdGEuaWRsOgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5pZGw6CisgICAgICAgICogZG9tL0VsZW1lbnQuaWRsOgorICAgICAgICAqIGRvbS9TaGFkb3dS
b290LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbDoKKyAgICAgICAg
KiBodG1sL0hUTUxEb2N1bWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MT3B0aW9uRWxlbWVu
dC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsOgorICAgICAg
ICAqIGh0bWwvSFRNTE91dHB1dEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFNlbGVj
dEVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGw6CisgICAg
ICAgICogaHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxU
YWJsZVNlY3Rpb25FbGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxUaXRsZUVsZW1lbnQu
aWRsOgorCiAyMDE2LTEwLTI1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFVwZGF0aW5nIGF0dHJpYnV0ZSBieSB0ZXh0Q29udGVudCBtdXN0IGNyZWF0ZSBhIHNp
bmdsZSBtdXRhdGlvbiByZWNvcmQgYW5kIGN1c3RvbSBlbGVtZW50IHJlYWN0aW9uCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVjdGlvbkN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxPcHRpb25zQ29sbGVj
dGlvbkN1c3RvbS5jcHAKaW5kZXggZTQ5YjhhNjA5YmVjNGY2MTRlYTIzZGIyNDhhYTk3ZDc0YTQw
MDc3My4uMDQzOWI0YmFjMDg4ZjAxZWQ1NTlkMGE1OTE3OGE1Y2RlY2M0ODNjMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0
b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uQ3VzdG9tLmNwcApAQCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmgiCiAKKyNpbmNsdWRlICJDdXN0b21F
bGVtZW50UmVhY3Rpb25RdWV1ZS5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNs
dWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MT3B0aW9uRWxlbWVudC5oIgpAQCAtNDks
NiArNTAsMTAgQEAgYm9vbCBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbjo6bmFtZUdldHRlcihFeGVj
U3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU4KIAogdm9pZCBKU0hUTUxPcHRpb25z
Q29sbGVjdGlvbjo6c2V0TGVuZ3RoKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgdmFsdWUpCiB7
CisjaWYgRU5BQkxFKENVU1RPTV9FTEVNRU5UUykKKyAgICBDdXN0b21FbGVtZW50UmVhY3Rpb25T
dGFjayBjdXN0b21FbGVtZW50UmVhY3Rpb25TdGFjazsKKyNlbmRpZgorCiAgICAgRXhjZXB0aW9u
Q29kZSBlYyA9IDA7CiAgICAgdW5zaWduZWQgbmV3TGVuZ3RoID0gMDsKICAgICBkb3VibGUgbGVu
Z3RoVmFsdWUgPSB2YWx1ZS50b051bWJlcigmc3RhdGUpOwpAQCAtNjcsNiArNzIsMTAgQEAgdm9p
ZCBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbjo6c2V0TGVuZ3RoKEV4ZWNTdGF0ZSYgc3RhdGUsIEpT
VmFsdWUgdmFsdWUpCiAKIHZvaWQgSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb246OmluZGV4U2V0dGVy
KEV4ZWNTdGF0ZSogZXhlYywgdW5zaWduZWQgaW5kZXgsIEpTVmFsdWUgdmFsdWUpCiB7CisjaWYg
RU5BQkxFKENVU1RPTV9FTEVNRU5UUykKKyAgICBDdXN0b21FbGVtZW50UmVhY3Rpb25TdGFjayBj
dXN0b21FbGVtZW50UmVhY3Rpb25TdGFjazsKKyNlbmRpZgorCiAgICAgc2VsZWN0SW5kZXhTZXR0
ZXIoJndyYXBwZWQoKS5zZWxlY3RFbGVtZW50KCksIGV4ZWMsIGluZGV4LCB2YWx1ZSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTFNlbGVjdEVsZW1l
bnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MU2VsZWN0RWxl
bWVudEN1c3RvbS5jcHAKaW5kZXggNDBkY2M0NjIzMzUyMGQ4MTk3MGZlMWQ1ZGQ1OWYyYzlkYWZm
MWU3NC4uNzM0OGVlYjhkZDU1YTk0NGU4ZmRmMmM1YjQ4MWVmNThjMmY5MjIxMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MU2VsZWN0RWxlbWVudEN1c3RvbS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MU2VsZWN0RWxlbWVudEN1
c3RvbS5jcHAKQEAgLTIxLDYgKzIxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJKU0hUTUxTZWxlY3RFbGVtZW50Q3VzdG9tLmgiCiAKKyNpbmNsdWRlICJDdXN0b21FbGVtZW50
UmVhY3Rpb25RdWV1ZS5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJI
VE1MTmFtZXMuaCIKICNpbmNsdWRlICJIVE1MT3B0aW9uRWxlbWVudC5oIgpAQCAtNDksNiArNTAs
OSBAQCB2b2lkIHNlbGVjdEluZGV4U2V0dGVyKEhUTUxTZWxlY3RFbGVtZW50KiBzZWxlY3QsIEpT
Qzo6RXhlY1N0YXRlKiBleGVjLCB1bnNpZ25lZAogCiB2b2lkIEpTSFRNTFNlbGVjdEVsZW1lbnQ6
OmluZGV4U2V0dGVyKEpTQzo6RXhlY1N0YXRlKiBleGVjLCB1bnNpZ25lZCBpbmRleCwgSlNDOjpK
U1ZhbHVlIHZhbHVlKQogeworI2lmIEVOQUJMRShDVVNUT01fRUxFTUVOVFMpCisgICAgQ3VzdG9t
RWxlbWVudFJlYWN0aW9uU3RhY2sgY3VzdG9tRWxlbWVudFJlYWN0aW9uU3RhY2s7CisjZW5kaWYK
ICAgICBzZWxlY3RJbmRleFNldHRlcigmd3JhcHBlZCgpLCBleGVjLCBpbmRleCwgdmFsdWUpOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hhcmFjdGVyRGF0YS5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9kb20vQ2hhcmFjdGVyRGF0YS5pZGwKaW5kZXggMGIxMzk5MGQwZWY1ZjQz
NzVhNTVlMGM3ODhmNWRkZDhmNjk3YWJhYS4uNDgxNDJhMDU3ZDFjN2I3MzFmMGZhNDMzMzcwZGY0
ZWE4YjVlNGU5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NoYXJhY3RlckRhdGEu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmlkbApAQCAtMTgsMTUg
KzE4LDE1IEBACiAgKi8KIAogaW50ZXJmYWNlIENoYXJhY3RlckRhdGEgOiBOb2RlIHsKLSAgICBb
VHJlYXROdWxsQXM9RW1wdHlTdHJpbmddIGF0dHJpYnV0ZSBET01TdHJpbmcgZGF0YTsKKyAgICBb
Q0VSZWFjdGlvbnMsIFRyZWF0TnVsbEFzPUVtcHR5U3RyaW5nXSBhdHRyaWJ1dGUgRE9NU3RyaW5n
IGRhdGE7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwogCiAg
ICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSBET01TdHJpbmc/IHN1YnN0cmluZ0RhdGEodW5z
aWduZWQgbG9uZyBvZmZzZXQsIHVuc2lnbmVkIGxvbmcgbGVuZ3RoKTsKIAotICAgIHZvaWQgYXBw
ZW5kRGF0YShET01TdHJpbmcgZGF0YSk7Ci0gICAgW01heVRocm93TGVnYWN5RXhjZXB0aW9uXSB2
b2lkIGluc2VydERhdGEodW5zaWduZWQgbG9uZyBvZmZzZXQsIERPTVN0cmluZyBkYXRhKTsKLSAg
ICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlRGF0YSh1bnNpZ25lZCBsb25n
IG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgpOwotICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2Vw
dGlvbl0gdm9pZCByZXBsYWNlRGF0YSh1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQgbG9u
ZyBsZW5ndGgsIERPTVN0cmluZyBkYXRhKTsKKyAgICBbQ0VSZWFjdGlvbnNdIHZvaWQgYXBwZW5k
RGF0YShET01TdHJpbmcgZGF0YSk7CisgICAgW0NFUmVhY3Rpb25zLCBNYXlUaHJvd0xlZ2FjeUV4
Y2VwdGlvbl0gdm9pZCBpbnNlcnREYXRhKHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBET01TdHJpbmcg
ZGF0YSk7CisgICAgW0NFUmVhY3Rpb25zLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBk
ZWxldGVEYXRhKHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7Cisg
ICAgW0NFUmVhY3Rpb25zLCBNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCByZXBsYWNlRGF0
YSh1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQgbG9uZyBsZW5ndGgsIERPTVN0cmluZyBk
YXRhKTsKIH07CiAKIENoYXJhY3RlckRhdGEgaW1wbGVtZW50cyBDaGlsZE5vZGU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RvY3VtZW50LmlkbAppbmRleCBjNWYyMjM5Y2ZhYTcwMGQ5OTg3OWM2NDA5ZWM3OGEyY2IxMWE0
ZTM2Li5lNjZlZTU0MGMyZjE2NjA4MzliZTYxZmVmNWQzOTFiMjQ3YzkyZGVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5pZGwKQEAgLTkxLDcgKzkxLDcgQEAKICAgICBib29sZWFuIHF1ZXJ5Q29tbWFu
ZFN1cHBvcnRlZChET01TdHJpbmcgY29tbWFuZCk7CiAgICAgRE9NU3RyaW5nIHF1ZXJ5Q29tbWFu
ZFZhbHVlKERPTVN0cmluZyBjb21tYW5kKTsKIAotICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdGl0
bGU7CisgICAgW0NFUmVhY3Rpb25zXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRpdGxlOwogICAgIGF0
dHJpYnV0ZSBET01TdHJpbmcgZGlyOwogICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgZGVzaWduTW9k
ZTsKIApAQCAtMTAxLDcgKzEwMSw3IEBACiAKICAgICBbR2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNl
cHRpb24sIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgVVNWU3RyaW5n
IGNvb2tpZTsKIAotICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbiwgSW1wbGVtZW50
ZWRBcz1ib2R5T3JGcmFtZXNldF0gYXR0cmlidXRlIEhUTUxFbGVtZW50PyBib2R5OworICAgIFtD
RVJlYWN0aW9ucywgSW1wbGVtZW50ZWRBcz1ib2R5T3JGcmFtZXNldCwgU2V0dGVyTWF5VGhyb3dM
ZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBIVE1MRWxlbWVudD8gYm9keTsKIAogICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBIVE1MSGVhZEVsZW1lbnQ/IGhlYWQ7CiAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIEhUTUxDb2xsZWN0aW9uIGltYWdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmlkbAppbmRleCBkNjZm
OGNjMzMyODg1MDk1ZTY5ZWRhNjU1NGFmZDc2OTY3MTk1YjU5Li43MjkyMTZhNmU5ZjEyYTU2MTRi
MmQ4ZDAyZDBkMmM3YzlkMDJlMGU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaWRsCkBAIC0xMjEsNyAr
MTIxLDcgQEAKICNlbmRpZgogCiAjaWYgZGVmaW5lZChFTkFCTEVfSU5ESUVfVUkpICYmIEVOQUJM
RV9JTkRJRV9VSQotICAgIFtSZWZsZWN0XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVpYWN0aW9uczsK
KyAgICBbQ0VSZWFjdGlvbnMsIFJlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgdWlhY3Rpb25z
OwogI2VuZGlmCiAKICAgICBbQ0VSZWFjdGlvbnMsIE1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBF
bGVtZW50IGluc2VydEFkamFjZW50RWxlbWVudChET01TdHJpbmcgd2hlcmUsIEVsZW1lbnQgZWxl
bWVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5pZGwKaW5kZXggODNlZmE0NGVlMDVkZWIzZDdh
ZDQxNjM0NWZjYTcyMzY4ZDY4NWRlZS4uYmQ5ZGM3ZDRjMGNjNzY4ZWE3MjRjYmU5ZGRlNmM2NTI3
NWE0Mzc4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmlkbApAQCAtMzAsNyArMzAsNyBAQAog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTaGFkb3dSb290TW9kZSAgIG1vZGU7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIEVsZW1lbnQgICAgICAgICAgaG9zdDsKIAotICAgIFtUcmVhdE51bGxBcz1F
bXB0eVN0cmluZywgU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01T
dHJpbmcgaW5uZXJIVE1MOworICAgIFtDRVJlYWN0aW9ucywgU2V0dGVyTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb24sIFRyZWF0TnVsbEFzPUVtcHR5U3RyaW5nXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGlu
bmVySFRNTDsKIH07CiAKIC8vICJ1c2VyLWFnZW50IiBpcyBhIFdlYktpdCBleHRlbnNpb24gdGhh
dCBpcyBub3QgZXhwb3NlZCB0byB0aGUgV2ViLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBbmNo
b3JFbGVtZW50LmlkbAppbmRleCBmN2NlZGUxMGJiYzFlNWRiYmI5OGI0NWQwYzZjNzJkMDJjZTkw
ZmI3Li43NDg2ZDAzMmM2MjI1NmYyYmI5ZjY2NWFlMTFhNDBkMGY0MGU2MjlkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbApAQCAtMzEsNyArMzEsNyBAQCBpbnRl
cmZhY2UgSFRNTEFuY2hvckVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgW1JlZmxlY3RdIGF0
dHJpYnV0ZSBET01TdHJpbmcgdGFyZ2V0OwogICAgIFtSZWZsZWN0XSBhdHRyaWJ1dGUgRE9NU3Ry
aW5nIHR5cGU7CiAKLSAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRleHQ7CisgICAgW0NFUmVhY3Rp
b25zXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRleHQ7CiAKICAgICBbUHV0Rm9yd2FyZHM9dmFsdWVd
IHJlYWRvbmx5IGF0dHJpYnV0ZSBET01Ub2tlbkxpc3QgcmVsTGlzdDsKIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxEb2N1bWVudC5pZGwKaW5kZXggNjczZWRkZWM5ZjhiODE3NzdiNmNjMjliYzU1N2U1
NThmNjMwZDM2OC4uMjFhYTIzNDBkNTY3MmM3YmY2Nzc3YWUwNjJmZWY0YzJmZWMyOTMwOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRG9jdW1lbnQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTERvY3VtZW50LmlkbApAQCAtMjUsMTAgKzI1LDEwIEBACiAgICAg
TmV3SW1wdXJlUHJvcGVydHlGaXJlc1dhdGNocG9pbnRzLAogICAgIE92ZXJyaWRlQnVpbHRpbnMs
CiBdIGludGVyZmFjZSBIVE1MRG9jdW1lbnQgOiBEb2N1bWVudCB7Ci0gICAgW0N1c3RvbSwgRm9y
d2FyZERlY2xhcmVJbkhlYWRlcl0gdm9pZCBvcGVuKCk7CisgICAgW0NFUmVhY3Rpb25zLCBDdXN0
b20sIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgb3BlbigpOwogICAgIHZvaWQgY2xvc2Uo
KTsKLSAgICBbQ3VzdG9tXSB2b2lkIHdyaXRlKG9wdGlvbmFsIERPTVN0cmluZyB0ZXh0KTsKLSAg
ICBbQ3VzdG9tXSB2b2lkIHdyaXRlbG4ob3B0aW9uYWwgRE9NU3RyaW5nIHRleHQpOworICAgIFtD
RVJlYWN0aW9ucywgQ3VzdG9tXSB2b2lkIHdyaXRlKG9wdGlvbmFsIERPTVN0cmluZyB0ZXh0KTsK
KyAgICBbQ0VSZWFjdGlvbnMsIEN1c3RvbV0gdm9pZCB3cml0ZWxuKG9wdGlvbmFsIERPTVN0cmlu
ZyB0ZXh0KTsKIAogICAgIFtDdXN0b20sIFJlcGxhY2VhYmxlXSByZWFkb25seSBhdHRyaWJ1dGUg
SFRNTEFsbENvbGxlY3Rpb24gYWxsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxPcHRpb25FbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVs
ZW1lbnQuaWRsCmluZGV4IDc3YmU2ZjY5ZDcyNWVhMDBkYTc0NDg5M2QxZWUxMTkzMDY4OWIxZjEu
LjU4ZGQxOTc1MGIyNjY3OGQzZjBjMTYxZjU3MGRlM2VlODE1Y2E0OTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaWRsCkBAIC0zMCw2ICszMCw2IEBACiAgICAgYXR0
cmlidXRlIGJvb2xlYW4gc2VsZWN0ZWQ7CiAgICAgYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZTsK
IAotICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdGV4dDsKKyAgICBbQ0VSZWFjdGlvbnNdIGF0dHJp
YnV0ZSBET01TdHJpbmcgdGV4dDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBpbmRleDsK
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25zQ29sbGVjdGlv
bi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25zQ29sbGVjdGlvbi5pZGwKaW5k
ZXggNmY4NTI2MTIxZjFkYjgyZDc1MDRhNzk0NWY0ODEyOTZiMjE2NTJlYy4uOTJjN2JmNjc3NmVj
YzdjYjQxZDZjZWY1MDcyZTBhNjNhMGY5ZDkxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE9wdGlvbnNDb2xsZWN0aW9uLmlkbApAQCAtMjUsMTQgKzI1LDE0IEBACiAgICAgSlNHZW5l
cmF0ZVRvTmF0aXZlT2JqZWN0LAogXSBpbnRlcmZhY2UgSFRNTE9wdGlvbnNDb2xsZWN0aW9uIDog
SFRNTENvbGxlY3Rpb24gewogICAgIGF0dHJpYnV0ZSBsb25nIHNlbGVjdGVkSW5kZXg7Ci0gICAg
W0N1c3RvbVNldHRlciwgU2V0dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1
bnNpZ25lZCBsb25nIGxlbmd0aDsKKyAgICBbQ0VSZWFjdGlvbnMsIEN1c3RvbVNldHRlciwgU2V0
dGVyTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0
aDsKIAogICAgIGdldHRlciBIVE1MT3B0aW9uRWxlbWVudD8gaXRlbSh1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKICAgICBnZXR0ZXIgSFRNTE9wdGlvbkVsZW1lbnQ/IG5hbWVkSXRlbShET01TdHJpbmcg
bmFtZSk7CiAKLSAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHZvaWQgYWRkKChIVE1MT3B0aW9uRWxl
bWVudCBvciBIVE1MT3B0R3JvdXBFbGVtZW50KSBlbGVtZW50LCBvcHRpb25hbCAoSFRNTEVsZW1l
bnQgb3IgbG9uZyk/IGJlZm9yZSA9IG51bGwpOworICAgIFtDRVJlYWN0aW9ucywgTWF5VGhyb3dF
eGNlcHRpb25dIHZvaWQgYWRkKChIVE1MT3B0aW9uRWxlbWVudCBvciBIVE1MT3B0R3JvdXBFbGVt
ZW50KSBlbGVtZW50LCBvcHRpb25hbCAoSFRNTEVsZW1lbnQgb3IgbG9uZyk/IGJlZm9yZSA9IG51
bGwpOwogCi0gICAgdm9pZCByZW1vdmUobG9uZyBpbmRleCk7CisgICAgW0NFUmVhY3Rpb25zXSB2
b2lkIHJlbW92ZShsb25nIGluZGV4KTsKICAgICAvLyBGSVhNRTogVGhpcyBvdmVybG9hZCBpcyBu
b3QgaW4gdGhlIHNwZWNpZmljYXRpb24gYW5kIGhhcyBiZWVuIGRyb3BwZWQgaW4gQmxpbmsuCi0g
ICAgdm9pZCByZW1vdmUoSFRNTE9wdGlvbkVsZW1lbnQgb3B0aW9uKTsKKyAgICBbQ0VSZWFjdGlv
bnNdIHZvaWQgcmVtb3ZlKEhUTUxPcHRpb25FbGVtZW50IG9wdGlvbik7CiB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3V0cHV0RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxPdXRwdXRFbGVtZW50LmlkbAppbmRleCA1N2YxYjZhYzQxNDAyOWVkZmVi
YjEwODgwYWEyYjc2YWJhNjUxOWZiLi5kNTI3Njg0NDg4ZDMwMzcwMzE0YWE3ODllMGMzZDYwNjY0
ZjRlOWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPdXRwdXRFbGVtZW50
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPdXRwdXRFbGVtZW50LmlkbApAQCAt
MjksOCArMjksOCBAQCBpbnRlcmZhY2UgSFRNTE91dHB1dEVsZW1lbnQgOiBIVE1MRWxlbWVudCB7
CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKIAogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgdHlwZTsKLSAgICBbVHJlYXROdWxsQXM9RW1wdHlTdHJpbmdd
IGF0dHJpYnV0ZSBET01TdHJpbmcgZGVmYXVsdFZhbHVlOwotICAgIFtUcmVhdE51bGxBcz1FbXB0
eVN0cmluZ10gYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZTsKKyAgICBbQ0VSZWFjdGlvbnMsIFRy
ZWF0TnVsbEFzPUVtcHR5U3RyaW5nXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGRlZmF1bHRWYWx1ZTsK
KyAgICBbQ0VSZWFjdGlvbnMsIFRyZWF0TnVsbEFzPUVtcHR5U3RyaW5nXSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIHZhbHVlOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gd2lsbFZhbGlk
YXRlOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBWYWxpZGl0eVN0YXRlIHZhbGlkaXR5OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmlkbAppbmRleCAwN2E4YzNkMDI5ZTBm
OWExYTViODFlMjIxNDZjMDRiNjZjNzAwYTNjLi40NjVlNWQzZTYyMTE2ZWQ2ZjVmYTBkODQyMTRh
ODFlZmZjNzE4ZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RF
bGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50Lmlk
bApAQCAtMzUsMTcgKzM1LDE3IEBACiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB0
eXBlOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxPcHRpb25zQ29sbGVjdGlvbiBvcHRp
b25zOwotICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgbGVuZ3RoOworICAgIFtDRVJlYWN0aW9ucywgU2V0dGVyTWF5VGhyb3dMZWdhY3lF
eGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKIAogICAgIGdldHRlciBI
VE1MT3B0aW9uRWxlbWVudD8gaXRlbSh1bnNpZ25lZCBsb25nIGluZGV4KTsKICAgICBIVE1MT3B0
aW9uRWxlbWVudD8gbmFtZWRJdGVtKERPTVN0cmluZyBuYW1lKTsKIAotICAgIFtNYXlUaHJvd0V4
Y2VwdGlvbl0gdm9pZCBhZGQoKEhUTUxPcHRpb25FbGVtZW50IG9yIEhUTUxPcHRHcm91cEVsZW1l
bnQpIGVsZW1lbnQsIG9wdGlvbmFsIChIVE1MRWxlbWVudCBvciBsb25nKT8gYmVmb3JlID0gbnVs
bCk7CisgICAgW0NFUmVhY3Rpb25zLCBNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBhZGQoKEhUTUxP
cHRpb25FbGVtZW50IG9yIEhUTUxPcHRHcm91cEVsZW1lbnQpIGVsZW1lbnQsIG9wdGlvbmFsIChI
VE1MRWxlbWVudCBvciBsb25nKT8gYmVmb3JlID0gbnVsbCk7CiAKICAgICBbTWF5VGhyb3dMZWdh
Y3lFeGNlcHRpb25dIHZvaWQgcmVtb3ZlKCk7IC8vIENoaWxkTm9kZSBvdmVybG9hZAogICAgIC8v
IEZJWE1FOiBUaGlzIG92ZXJsb2FkIGlzIG5vdCBpbiB0aGUgc3BlY2lmaWNhdGlvbiBhbmQgd2Fz
IGRyb3BwZWQgaW4gQmxpbmsuCi0gICAgdm9pZCByZW1vdmUoSFRNTE9wdGlvbkVsZW1lbnQgb3B0
aW9uKTsKLSAgICBbSW1wbGVtZW50ZWRBcz1yZW1vdmVCeUluZGV4XSB2b2lkIHJlbW92ZShsb25n
IGluZGV4KTsKKyAgICBbQ0VSZWFjdGlvbnNdIHZvaWQgcmVtb3ZlKEhUTUxPcHRpb25FbGVtZW50
IG9wdGlvbik7CisgICAgW0NFUmVhY3Rpb25zLCBJbXBsZW1lbnRlZEFzPXJlbW92ZUJ5SW5kZXhd
IHZvaWQgcmVtb3ZlKGxvbmcgaW5kZXgpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxD
b2xsZWN0aW9uIHNlbGVjdGVkT3B0aW9uczsKICAgICBhdHRyaWJ1dGUgbG9uZyBzZWxlY3RlZElu
ZGV4OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVtZW50Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGwKaW5kZXggZWI1M2Iy
OGY3YWJjZTY5Y2ZiZTQ0MzdhOWViYjU0MjgyNDEzOTRlZi4uNmY4MDgxNjM3YTRmNzQ1ZmYwZjRm
MTIyNTAwZTZkNThmMTE5Y2MzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
VGFibGVFbGVtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1l
bnQuaWRsCkBAIC0xOSw5ICsxOSw5IEBACiAgKi8KIAogaW50ZXJmYWNlIEhUTUxUYWJsZUVsZW1l
bnQgOiBIVE1MRWxlbWVudCB7Ci0gICAgW1NldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBh
dHRyaWJ1dGUgSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQ/IGNhcHRpb247Ci0gICAgW1NldHRlck1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQ/
IHRIZWFkOwotICAgIFtTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gYXR0cmlidXRlIEhU
TUxUYWJsZVNlY3Rpb25FbGVtZW50PyB0Rm9vdDsKKyAgICBbQ0VSZWFjdGlvbnMsIFNldHRlck1h
eVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQ/
IGNhcHRpb247CisgICAgW0NFUmVhY3Rpb25zLCBTZXR0ZXJNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gYXR0cmlidXRlIEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50PyB0SGVhZDsKKyAgICBbQ0VSZWFj
dGlvbnMsIFNldHRlck1heVRocm93TGVnYWN5RXhjZXB0aW9uXSBhdHRyaWJ1dGUgSFRNTFRhYmxl
U2VjdGlvbkVsZW1lbnQ/IHRGb290OwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xs
ZWN0aW9uIHJvd3M7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIHRCb2Rp
ZXM7CkBAIC0zOCwxNCArMzgsMTQgQEAgaW50ZXJmYWNlIEhUTUxUYWJsZUVsZW1lbnQgOiBIVE1M
RWxlbWVudCB7CiAgICAgW1JlZmxlY3RdIGF0dHJpYnV0ZSBET01TdHJpbmcgd2lkdGg7CiAKICAg
ICBIVE1MRWxlbWVudCBjcmVhdGVUSGVhZCgpOwotICAgIHZvaWQgZGVsZXRlVEhlYWQoKTsKKyAg
ICBbQ0VSZWFjdGlvbnNdIHZvaWQgZGVsZXRlVEhlYWQoKTsKICAgICBIVE1MRWxlbWVudCBjcmVh
dGVURm9vdCgpOwotICAgIHZvaWQgZGVsZXRlVEZvb3QoKTsKKyAgICBbQ0VSZWFjdGlvbnNdIHZv
aWQgZGVsZXRlVEZvb3QoKTsKICAgICBIVE1MRWxlbWVudCBjcmVhdGVUQm9keSgpOwogICAgIEhU
TUxFbGVtZW50IGNyZWF0ZUNhcHRpb24oKTsKLSAgICB2b2lkIGRlbGV0ZUNhcHRpb24oKTsKKyAg
ICBbQ0VSZWFjdGlvbnNdIHZvaWQgZGVsZXRlQ2FwdGlvbigpOwogCiAgICAgW01heVRocm93TGVn
YWN5RXhjZXB0aW9uXSBIVE1MRWxlbWVudCBpbnNlcnRSb3cob3B0aW9uYWwgbG9uZyBpbmRleCA9
IC0xKTsKLSAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlUm93KGxvbmcg
aW5kZXgpOworICAgIFtDRVJlYWN0aW9ucywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQg
ZGVsZXRlUm93KGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRh
YmxlUm93RWxlbWVudC5pZGwKaW5kZXggN2NjNWIzYTkxYmRlZDA2N2JkMTlmYjM5MjJmMzBlZDcw
NzNhY2YyMC4uYjBkNDVhZDg3YjI4OTYyNjFiMjUzNmI3OWMyOGQ0ZWJkNmFlZmQyNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVSb3dFbGVtZW50LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZVJvd0VsZW1lbnQuaWRsCkBAIC0yOCw2ICsyOCw2
IEBAIGludGVyZmFjZSBIVE1MVGFibGVSb3dFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIFtS
ZWZsZWN0PWNoYXJvZmZdIGF0dHJpYnV0ZSBET01TdHJpbmcgY2hPZmY7CiAgICAgW1JlZmxlY3Rd
IGF0dHJpYnV0ZSBET01TdHJpbmcgdkFsaWduOwogICAgIFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlv
bl0gSFRNTEVsZW1lbnQgaW5zZXJ0Q2VsbChvcHRpb25hbCBsb25nIGluZGV4ID0gLTEpOwotICAg
IFtNYXlUaHJvd0xlZ2FjeUV4Y2VwdGlvbl0gdm9pZCBkZWxldGVDZWxsKGxvbmcgaW5kZXgpOwor
ICAgIFtDRVJlYWN0aW9ucywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlQ2Vs
bChsb25nIGluZGV4KTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFRhYmxlU2VjdGlvbkVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVT
ZWN0aW9uRWxlbWVudC5pZGwKaW5kZXggNzkzN2M3ZGI0NGZhNzM3NzYyZDAxNGJkMjVjOTdmNjBj
OGJjZWJlYy4uNTRjNWRjMjU4NzQ5ODUwZjZiMTcyNTZmZmQ0YzA5OGY0Njc4MzdkMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwKQEAgLTI3
LDYgKzI3LDYgQEAKICAgICBbUmVmbGVjdF0gYXR0cmlidXRlIERPTVN0cmluZyB2QWxpZ247CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIHJvd3M7CiAgICAgW01heVRocm93
TGVnYWN5RXhjZXB0aW9uXSBIVE1MRWxlbWVudCBpbnNlcnRSb3cob3B0aW9uYWwgbG9uZyBpbmRl
eCA9IC0xKTsKLSAgICBbTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZvaWQgZGVsZXRlUm93KGxv
bmcgaW5kZXgpOworICAgIFtDRVJlYWN0aW9ucywgTWF5VGhyb3dMZWdhY3lFeGNlcHRpb25dIHZv
aWQgZGVsZXRlUm93KGxvbmcgaW5kZXgpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGl0bGVFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRp
dGxlRWxlbWVudC5pZGwKaW5kZXggNDA2OTc2ZGRmNTExMmI5MjAyMzFjOTUyMGQ4NzZkZDIyMjQ5
NGExYi4uN2FmNmMxOGMxYjhjOTQyYjQ2OTE2OGI5MDczMWIyYTUxMWNlNjc0OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGl0bGVFbGVtZW50LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUaXRsZUVsZW1lbnQuaWRsCkBAIC0xOCw2ICsxOCw2IEBACiAgKi8K
IAogaW50ZXJmYWNlIEhUTUxUaXRsZUVsZW1lbnQgOiBIVE1MRWxlbWVudCB7Ci0gICAgYXR0cmli
dXRlIERPTVN0cmluZyB0ZXh0OworICAgIFtDRVJlYWN0aW9uc10gYXR0cmlidXRlIERPTVN0cmlu
ZyB0ZXh0OwogfTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGFmZDZmNTJjN2E1MGQ2ZDg0N2RlZTQ4ZTM2ZWU3YzFlMjE0
MTE3YzYuLjE3NmZlNDM4NWJjNjhhN2U0ZmUyMGQ4YmFhOWM4NTI3NmNlYWJlNDkgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw0NSBAQAorMjAxNi0xMC0yOCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KKworICAgICAgICBBZGQgQ0VSZWFjdGlvbnMgdG8gdGhlIHJlbWFpbmluZyBIVE1MIERPTSBB
UElzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjM5
NjkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBXM0Mgc3R5bGUgdGVzdGhhcm5lc3MuanMgdGVzdHMgZm9yIENFUmVhY3Rpb25zIHRvIHZhcmlv
dXMgSFRNTEVsZW1lbnRzIHVuZGVyIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy4KKyAg
ICAgICAgQWxzbyBhZGRlZCBzb21lIFdlYktpdCBzcGVjaWZpYyB0ZXN0cyB1c2luZyB0aGUgc2Ft
ZSBoYXJuZXNzIG91dHNpZGUgdGhhdCBkaXJlY3RvcnkuCisKKyAgICAgICAgKiBmYXN0L2N1c3Rv
bS1lbGVtZW50cy9yZWFjdGlvbnMtZm9yLWluZGlldWktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMtZm9yLWluZGlldWkuaHRtbDog
QWRkZWQuCisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zLWZvci13ZWJr
aXQtZXh0ZW5zaW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVu
dHMvcmVhY3Rpb25zLWZvci13ZWJraXQtZXh0ZW5zaW9ucy5odG1sOgorICAgICAgICAqIGZhc3Qv
Y3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9Eb2N1bWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9Eb2N1bWVudC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTEFuY2hv
ckVsZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVt
ZW50cy9yZWFjdGlvbnMvSFRNTEFuY2hvckVsZW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPcHRpb25FbGVtZW50LWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hU
TUxPcHRpb25FbGVtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3VzdG9tLWVsZW1l
bnRzL3JlYWN0aW9ucy9IVE1MT3B0aW9uc0NvbGxlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0
aW9ucy9IVE1MT3V0cHV0RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MT3V0cHV0RWxlbWVudC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFNlbGVjdEVs
ZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50
cy9yZWFjdGlvbnMvSFRNTFNlbGVjdEVsZW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJsZUVsZW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRh
YmxlRWxlbWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9y
ZWFjdGlvbnMvSFRNTFRhYmxlUm93RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVSb3dFbGVtZW50Lmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1M
VGFibGVTZWN0aW9uRWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
Y3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVTZWN0aW9uRWxlbWVudC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRpdGxl
RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3VzdG9tLWVsZW1l
bnRzL3JlYWN0aW9ucy9IVE1MVGl0bGVFbGVtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9TaGFkb3dSb290LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL1NoYWRvd1Jvb3Qu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2Fk
ZGl0aW9uYWwtaGVscGVycy5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9jdXN0b20tZWxlbWVu
dHMvdXBncmFkaW5nLWVucXVldWUtcmVhY3Rpb25zLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBm
YXN0L2N1c3RvbS1lbGVtZW50cy91cGdyYWRpbmctZW5xdWV1ZS1yZWFjdGlvbnMuaHRtbDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNi0xMC0yNSAgUnlvc3VrZSBOaXdhICA8cm5p
d2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGluZyBhdHRyaWJ1dGUgYnkgdGV4dENvbnRl
bnQgbXVzdCBjcmVhdGUgYSBzaW5nbGUgbXV0YXRpb24gcmVjb3JkIGFuZCBjdXN0b20gZWxlbWVu
dCByZWFjdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMv
cmVhY3Rpb25zLWZvci1pbmRpZXVpLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3Vz
dG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3ItaW5kaWV1aS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOWYxZDE2OGVjNDI3NDg0ZDRmYjg2MWRjNzM4ZTVlZmRhMDcxNjMwZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3ItaW5k
aWV1aS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKK1BBU1MgdWlhY3Rpb25zIG9uIEVs
ZW1lbnQgbXVzdCBlbnF1ZXVlIGFuIGF0dHJpYnV0ZUNoYW5nZWQgcmVhY3Rpb24gd2hlbiBhZGRp
bmcgdWlhY3Rpb25zIGNvbnRlbnQgYXR0cmlidXRlIAorUEFTUyB1aWFjdGlvbnMgb24gRWxlbWVu
dCBtdXN0IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZCByZWFjdGlvbiB3aGVuIHJlcGxhY2lu
ZyBhbiBleGlzdGluZyBhdHRyaWJ1dGUgCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3ItaW5kaWV1aS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zLWZvci1pbmRpZXVpLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYmJiNWQ3ODdhMzdhN2UxMTlmNDZkODIzNzVkNTFjMGE4MTkyM2E3MgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3ItaW5k
aWV1aS5odG1sCkBAIC0wLDAgKzEsMjEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVh
ZD4KKzx0aXRsZT5DdXN0b20gRWxlbWVudHM6IENFUmVhY3Rpb25zIG9uIHVpYWN0aW9ucyBvZiBF
bGVtZW50IGludGVyZmFjZTwvdGl0bGU+Cis8bWV0YSBuYW1lPSJhdXRob3IiIHRpdGxlPSJSeW9z
dWtlIE5pd2EiIGhyZWY9Im1haWx0bzpybml3YUB3ZWJraXQub3JnIj4KKzxtZXRhIG5hbWU9ImFz
c2VydCIgY29udGVudD0idWlhY3Rpb25zIG9mIEVsZW1lbnQgaW50ZXJmYWNlIG11c3QgaGF2ZSBD
RVJlYWN0aW9ucyI+Cis8bWV0YSBuYW1lPSJoZWxwIiBjb250ZW50PSJodHRwczovL2RvbS5zcGVj
LndoYXR3Zy5vcmcvI25vZGUiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy90ZXN0aGFy
bmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZXNvdXJjZXMvY3VzdG9tLWVsZW1l
bnRzLWhlbHBlcnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9yZXNvdXJjZXMv
cmVhY3Rpb25zLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0ibG9nIj48
L2Rpdj4KKzxzY3JpcHQ+CisKK3Rlc3RSZWZsZWN0QXR0cmlidXRlKCd1aWFjdGlvbnMnLCAndWlh
Y3Rpb25zJywgJ2RlbGV0ZScsICdkaXNtaXNzJywgJ3VpYWN0aW9ucyBvbiBFbGVtZW50Jyk7CisK
Kzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zLWZvci13ZWJraXQtZXh0ZW5zaW9ucy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMtZm9yLXdl
YmtpdC1leHRlbnNpb25zLWV4cGVjdGVkLnR4dAppbmRleCBmNDM4N2NjNjNlMDRmNjRiOTY2MWJj
YTE2YTkyNTc4ZDU5ZDQzMDI3Li5hZDcxOTc3ODU5NmVmY2ZkNDE2YTQ5YzViOTA5MmMyZjE0ZTQ3
MDZlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlv
bnMtZm9yLXdlYmtpdC1leHRlbnNpb25zLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMtZm9yLXdlYmtpdC1leHRlbnNpb25zLWV4cGVj
dGVkLnR4dApAQCAtMSw0ICsxLDEyIEBACiAKIFBBU1MgZHJvcHpvbmUgb24gSFRNTEVsZW1lbnQg
bXVzdCBlbnF1ZXVlIGFuIGF0dHJpYnV0ZUNoYW5nZWQgcmVhY3Rpb24gd2hlbiBhZGRpbmcgd2Vi
a2l0ZHJvcHpvbmUgY29udGVudCBhdHRyaWJ1dGUgCiBQQVNTIGRyb3B6b25lIG9uIEhUTUxFbGVt
ZW50IG11c3QgZW5xdWV1ZSBhbiBhdHRyaWJ1dGVDaGFuZ2VkIHJlYWN0aW9uIHdoZW4gcmVwbGFj
aW5nIGFuIGV4aXN0aW5nIGF0dHJpYnV0ZSAKK1BBU1MgZGF0YSBvbiBDaGFyYWN0ZXJEYXRhIG11
c3QgZW5xdWV1ZSBhbiBhdHRyaWJ1dGVDaGFuZ2VkIHJlYWN0aW9uIHdoZW4gcmVwbGFjaW5nIGFu
IGV4aXN0aW5nIGF0dHJpYnV0ZSAKK1BBU1MgZGF0YSBvbiBDaGFyYWN0ZXJEYXRhIG11c3Qgbm90
IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZCByZWFjdGlvbiB3aGVuIHJlcGxhY2luZyBhbiBl
eGlzdGluZyB1bm9ic2VydmVkIGF0dHJpYnV0ZSAKK1BBU1MgYXBwZW5kRGF0YSBvbiBDaGFyYWN0
ZXJEYXRhIG11c3QgZW5xdWV1ZSBhbiBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sgd2hlbiBtdXRh
dGluZyBhbiBleGlzdGluZyBhdHRyaWJ1dGUgCitQQVNTIGluc2VydERhdGEgb24gQ2hhcmFjdGVy
RGF0YSBtdXN0IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrIHdoZW4gbXV0YXRp
bmcgYW4gZXhpc3RpbmcgYXR0cmlidXRlIAorUEFTUyBkZWxldGVEYXRhIG9uIENoYXJhY3RlckRh
dGEgbXVzdCBlbnF1ZXVlIGFuIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayB3aGVuIG11dGF0aW5n
IGFuIGV4aXN0aW5nIGF0dHJpYnV0ZSAKK1BBU1MgcmVwbGFjZURhdGEgb24gQ2hhcmFjdGVyRGF0
YSBtdXN0IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrIHdoZW4gbXV0YXRpbmcg
YW4gZXhpc3RpbmcgYXR0cmlidXRlIAorUEFTUyByZW1vdmUoSFRNTE9wdGlvbkVsZW1lbnQpIG9u
IEhUTUxPcHRpb25zQ29sbGVjdGlvbiBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyByZW1vdmUoSFRNTE9wdGlvbkVs
ZW1lbnQpIG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxs
YmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3Itd2Via2l0LWV4dGVuc2lv
bnMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy1mb3It
d2Via2l0LWV4dGVuc2lvbnMuaHRtbAppbmRleCBhYzY1NzU3ZDMwNDU4YjEzM2M3YWU3YzlhNzNk
ODg3NGI4NGUwODkyLi4yNWYxNzExNGVlZmIwODk5N2Y3ZjFmYzUxYmFmMmUzYWVjZmM2N2I5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMtZm9y
LXdlYmtpdC1leHRlbnNpb25zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxl
bWVudHMvcmVhY3Rpb25zLWZvci13ZWJraXQtZXh0ZW5zaW9ucy5odG1sCkBAIC0xLDE0ICsxLDE1
IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+Ci08dGl0bGU+Q3VzdG9tIEVsZW1l
bnRzOiBDRVJlYWN0aW9ucyBvbiBIVE1MRWxlbWVudCBpbnRlcmZhY2U8L3RpdGxlPgorPHRpdGxl
PkN1c3RvbSBFbGVtZW50czogQ0VSZWFjdGlvbnMgb24gSFRNTEVsZW1lbnQgYW5kIEF0dHIgaW50
ZXJmYWNlczwvdGl0bGU+CiA8bWV0YSBuYW1lPSJhdXRob3IiIHRpdGxlPSJSeW9zdWtlIE5pd2Ei
IGhyZWY9Im1haWx0bzpybml3YUB3ZWJraXQub3JnIj4KLTxtZXRhIG5hbWU9ImFzc2VydCIgY29u
dGVudD0id2Via2l0ZHJvcHpvbmUgb2YgSFRNTEVsZW1lbnQgaW50ZXJmYWNlIG11c3QgaGF2ZSBD
RVJlYWN0aW9ucyI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9IndlYmtpdGRyb3B6b25l
IG9mIEhUTUxFbGVtZW50IGFuZCBBdHRyIGludGVyZmFjZSBtdXN0IGhhdmUgQ0VSZWFjdGlvbnMi
PgogPG1ldGEgbmFtZT0iaGVscCIgY29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3Jn
LyNub2RlIj4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvcmVzb3VyY2VzL3JlYWN0aW9ucy5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2FkZGl0aW9uYWwtaGVscGVycy5q
cyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keT4KIDxkaXYgaWQ9ImxvZyI+PC9kaXY+CkBAIC0x
Niw2ICsxNyw5NiBAQAogCiB0ZXN0UmVmbGVjdEF0dHJpYnV0ZSgnd2Via2l0ZHJvcHpvbmUnLCAn
d2Via2l0ZHJvcHpvbmUnLCAnY29weScsICdtb3ZlJywgJ2Ryb3B6b25lIG9uIEhUTUxFbGVtZW50
Jyk7CiAKK3Rlc3RBdHRyaWJ1dGVNdXRhdG9yKGZ1bmN0aW9uIChlbGVtZW50LCBuYW1lLCB2YWx1
ZSkgeworICAgIGVsZW1lbnQuYXR0cmlidXRlc1tuYW1lXS5maXJzdENoaWxkLmRhdGEgPSB2YWx1
ZTsKK30sICdkYXRhIG9uIENoYXJhY3RlckRhdGEnKTsKKwordGVzdChmdW5jdGlvbiAoKSB7Cisg
ICAgdmFyIGVsZW1lbnQgPSBkZWZpbmVfbmV3X2N1c3RvbV9lbGVtZW50KFsndGl0bGUnXSk7Cisg
ICAgdmFyIGluc3RhbmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlbGVtZW50Lm5hbWUpOwor
ICAgIGluc3RhbmNlLnNldEF0dHJpYnV0ZSgndGl0bGUnLCAnaGVsbG8nKTsKKyAgICBhc3NlcnRf
YXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAn
YXR0cmlidXRlQ2hhbmdlZCddKTsKKyAgICBpbnN0YW5jZS5hdHRyaWJ1dGVzLnRpdGxlLmZpcnN0
Q2hpbGQuYXBwZW5kRGF0YSgnIHdvcmxkJyk7CisgICAgdmFyIGxvZ0VudHJpZXMgPSBlbGVtZW50
LnRha2VMb2coKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGxvZ0VudHJpZXMudHlwZXMoKSwg
WydhdHRyaWJ1dGVDaGFuZ2VkJ10pOworICAgIGFzc2VydF9hdHRyaWJ1dGVfbG9nX2VudHJ5KGxv
Z0VudHJpZXMubGFzdCgpLCB7bmFtZTogJ3RpdGxlJywgb2xkVmFsdWU6ICdoZWxsbycsIG5ld1Zh
bHVlOiAnaGVsbG8gd29ybGQnLCBuYW1lc3BhY2U6IG51bGx9KTsKK30sICdhcHBlbmREYXRhIG9u
IENoYXJhY3RlckRhdGEgbXVzdCBlbnF1ZXVlIGFuIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayB3
aGVuIG11dGF0aW5nIGFuIGV4aXN0aW5nIGF0dHJpYnV0ZScpOworCit0ZXN0KGZ1bmN0aW9uICgp
IHsKKyAgICB2YXIgZWxlbWVudCA9IGRlZmluZV9uZXdfY3VzdG9tX2VsZW1lbnQoWyd0aXRsZSdd
KTsKKyAgICB2YXIgaW5zdGFuY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KGVsZW1lbnQubmFt
ZSk7CisgICAgaW5zdGFuY2Uuc2V0QXR0cmlidXRlKCd0aXRsZScsICdmb28nKTsKKyAgICBhc3Nl
cnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQn
LCAnYXR0cmlidXRlQ2hhbmdlZCddKTsKKyAgICBpbnN0YW5jZS5hdHRyaWJ1dGVzLnRpdGxlLmZp
cnN0Q2hpbGQuaW5zZXJ0RGF0YSgyLCAnYmFyJyk7CisgICAgdmFyIGxvZ0VudHJpZXMgPSBlbGVt
ZW50LnRha2VMb2coKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGxvZ0VudHJpZXMudHlwZXMo
KSwgWydhdHRyaWJ1dGVDaGFuZ2VkJ10pOworICAgIGFzc2VydF9hdHRyaWJ1dGVfbG9nX2VudHJ5
KGxvZ0VudHJpZXMubGFzdCgpLCB7bmFtZTogJ3RpdGxlJywgb2xkVmFsdWU6ICdmb28nLCBuZXdW
YWx1ZTogJ2ZvYmFybycsIG5hbWVzcGFjZTogbnVsbH0pOworfSwgJ2luc2VydERhdGEgb24gQ2hh
cmFjdGVyRGF0YSBtdXN0IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrIHdoZW4g
bXV0YXRpbmcgYW4gZXhpc3RpbmcgYXR0cmlidXRlJyk7CisKK3Rlc3QoZnVuY3Rpb24gKCkgewor
ICAgIHZhciBlbGVtZW50ID0gZGVmaW5lX25ld19jdXN0b21fZWxlbWVudChbJ3RpdGxlJ10pOwor
ICAgIHZhciBpbnN0YW5jZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZWxlbWVudC5uYW1lKTsK
KyAgICBpbnN0YW5jZS5zZXRBdHRyaWJ1dGUoJ3RpdGxlJywgJ2hlbGxvIHdvcmxkJyk7CisgICAg
YXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0cnVj
dGVkJywgJ2F0dHJpYnV0ZUNoYW5nZWQnXSk7CisgICAgaW5zdGFuY2UuYXR0cmlidXRlcy50aXRs
ZS5maXJzdENoaWxkLmRlbGV0ZURhdGEoNSwgMTAwKTsKKyAgICB2YXIgbG9nRW50cmllcyA9IGVs
ZW1lbnQudGFrZUxvZygpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMobG9nRW50cmllcy50eXBl
cygpLCBbJ2F0dHJpYnV0ZUNoYW5nZWQnXSk7CisgICAgYXNzZXJ0X2F0dHJpYnV0ZV9sb2dfZW50
cnkobG9nRW50cmllcy5sYXN0KCksIHtuYW1lOiAndGl0bGUnLCBvbGRWYWx1ZTogJ2hlbGxvIHdv
cmxkJywgbmV3VmFsdWU6ICdoZWxsbycsIG5hbWVzcGFjZTogbnVsbH0pOworfSwgJ2RlbGV0ZURh
dGEgb24gQ2hhcmFjdGVyRGF0YSBtdXN0IGVucXVldWUgYW4gYXR0cmlidXRlQ2hhbmdlZENhbGxi
YWNrIHdoZW4gbXV0YXRpbmcgYW4gZXhpc3RpbmcgYXR0cmlidXRlJyk7CisKK3Rlc3QoZnVuY3Rp
b24gKCkgeworICAgIHZhciBlbGVtZW50ID0gZGVmaW5lX25ld19jdXN0b21fZWxlbWVudChbJ3Rp
dGxlJ10pOworICAgIHZhciBpbnN0YW5jZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZWxlbWVu
dC5uYW1lKTsKKyAgICBpbnN0YW5jZS5zZXRBdHRyaWJ1dGUoJ3RpdGxlJywgJ2hlbGxvJyk7Cisg
ICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0
cnVjdGVkJywgJ2F0dHJpYnV0ZUNoYW5nZWQnXSk7CisgICAgaW5zdGFuY2UuYXR0cmlidXRlcy50
aXRsZS5maXJzdENoaWxkLnJlcGxhY2VEYXRhKDEsIDQsICdpJyk7CisgICAgdmFyIGxvZ0VudHJp
ZXMgPSBlbGVtZW50LnRha2VMb2coKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGxvZ0VudHJp
ZXMudHlwZXMoKSwgWydhdHRyaWJ1dGVDaGFuZ2VkJ10pOworICAgIGFzc2VydF9hdHRyaWJ1dGVf
bG9nX2VudHJ5KGxvZ0VudHJpZXMubGFzdCgpLCB7bmFtZTogJ3RpdGxlJywgb2xkVmFsdWU6ICdo
ZWxsbycsIG5ld1ZhbHVlOiAnaGknLCBuYW1lc3BhY2U6IG51bGx9KTsKK30sICdyZXBsYWNlRGF0
YSBvbiBDaGFyYWN0ZXJEYXRhIG11c3QgZW5xdWV1ZSBhbiBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJh
Y2sgd2hlbiBtdXRhdGluZyBhbiBleGlzdGluZyBhdHRyaWJ1dGUnKTsKKwordGVzdF93aXRoX3dp
bmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZp
bmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVu
dCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9j
dW1lbnQ7CisgICAgY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gYDxzZWxlY3Q+PG9w
dGlvbj48L29wdGlvbj48L3NlbGVjdD5gOworICAgIGNvbnN0IG9wdGlvbiA9IGNvbnRlbnREb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCdvcHRpb24nKTsKKworICAgIGNvbnN0IGluc3RhbmNlID0gY29u
dGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZWxlbWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBw
ZW5kQ2hpbGQoaW5zdGFuY2UpOworICAgIGluc3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsK
KworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydj
b25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyhvcHRpb24uaW5u
ZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAg
IGNvbnN0IHNlbGVjdCA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QnKTsK
KyAgICBhc3NlcnRfZXF1YWxzKHNlbGVjdC5vcHRpb25zWzBdLCBvcHRpb24pOworICAgIHNlbGVj
dC5vcHRpb25zLnJlbW92ZShvcHRpb24pOworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0Lm9wdGlv
bnMubGVuZ3RoLCAwKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygp
LnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ3JlbW92ZShIVE1MT3B0aW9uRWxlbWVu
dCkgb24gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxs
YmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRv
dyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVf
Y3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcs
IFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1l
bnQ7CisgICAgY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gYDxzZWxlY3Q+PG9wdGlv
bj48L29wdGlvbj48L3NlbGVjdD5gOworICAgIGNvbnN0IG9wdGlvbiA9IGNvbnRlbnREb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCdvcHRpb24nKTsKKworICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVu
dERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZWxlbWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBwZW5k
Q2hpbGQoaW5zdGFuY2UpOworICAgIGluc3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKwor
ICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25z
dHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJI
VE1MLCAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGNv
bnN0IHNlbGVjdCA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QnKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHNlbGVjdC5vcHRpb25zWzBdLCBvcHRpb24pOworICAgIHNlbGVjdC5y
ZW1vdmUob3B0aW9uKTsKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGVjdC5vcHRpb25zLmxlbmd0aCwg
MCk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBb
J2Rpc2Nvbm5lY3RlZCddKTsKK30sICdyZW1vdmUoSFRNTE9wdGlvbkVsZW1lbnQpIG9uIEhUTUxT
ZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92
aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwogPC9zY3JpcHQ+CiA8L2JvZHk+CiA8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvRG9j
dW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVh
Y3Rpb25zL0RvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yY2ZlNWRjOTllODZjMDM5
MmY2N2VhZDEzYzM1OTJiNDhkMGE4MWEwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0RvY3VtZW50LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEwIEBACisKK1BBU1MgdGl0bGUgb24gRG9jdW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nv
bm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1MgYm9k
eSBvbiBEb2N1bWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1v
dmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyBib2R5IG9uIERvY3VtZW50IG11c3QgZW5xdWV1
ZSBjb25uZWN0ZWRDYWxsYmFjayB3aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFT
UyBvcGVuIG9uIERvY3VtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVu
IHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCitQQVNTIHdyaXRlIG9uIERvY3VtZW50IG11c3Qg
ZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1l
bnQgCitQQVNTIHdyaXRlIG9uIERvY3VtZW50IG11c3QgZW5xdWV1ZSBjb25uZWN0ZWRDYWxsYmFj
ayBhZnRlciBjb25zdHJ1Y3RpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1Mgd3JpdGVsbiBvbiBE
b2N1bWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBh
IGN1c3RvbSBlbGVtZW50IAorUEFTUyB3cml0ZWxuIG9uIERvY3VtZW50IG11c3QgZW5xdWV1ZSBj
b25uZWN0ZWRDYWxsYmFjayBhZnRlciBjb25zdHJ1Y3RpbmcgYSBjdXN0b20gZWxlbWVudCAKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0Rv
Y3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMv
RG9jdW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iN2E4MjI1N2E5ZGZmNDRiMzYzNjc5ZTk1NjcwM2Q5
MmZiZTM1ZTAyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxl
bWVudHMvcmVhY3Rpb25zL0RvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwxMTIgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5DdXN0b20gRWxlbWVudHM6IENFUmVhY3Rp
b25zIG9uIERvY3VtZW50IGludGVyZmFjZTwvdGl0bGU+Cis8bWV0YSBuYW1lPSJhdXRob3IiIHRp
dGxlPSJSeW9zdWtlIE5pd2EiIGhyZWY9Im1haWx0bzpybml3YUB3ZWJraXQub3JnIj4KKzxtZXRh
IG5hbWU9ImFzc2VydCIgY29udGVudD0idGl0bGUsIGJvZHksIG9wZW4sIHdyaXRlLCBhbmQgd3Jp
dGVsbiBvZiBEb2N1bWVudCBpbnRlcmZhY2UgbXVzdCBoYXZlIENFUmVhY3Rpb25zIj4KKzxtZXRh
IG5hbWU9ImhlbHAiIGNvbnRlbnQ9Imh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jbm9kZSI+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3Jlc291cmNlcy9jdXN0b20tZWxlbWVudHMtaGVscGVy
cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL3Jlc291cmNlcy9yZWFjdGlv
bnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9hZGRpdGlvbmFsLWhl
bHBlcnMuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2
PgorPHNjcmlwdD4KKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykg
eworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNv
bnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnRE
b2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAgY29udGVudERvY3VtZW50LnRp
dGxlID0gJyc7CisgICAgY29uc3QgdGl0bGUgPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rv
cigndGl0bGUnKTsKKyAgICBjb25zdCBpbnN0YW5jZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2N1c3RvbS1lbGVtZW50Jyk7CisgICAgdGl0bGUuYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOworICAg
IGluc3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9lcXVh
bHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQn
XSk7CisgICAgYXNzZXJ0X2VxdWFscyh0aXRsZS5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+
aGVsbG88L2N1c3RvbS1lbGVtZW50PicpOworCisgICAgdGl0bGUudGV4dCA9ICd3b3JsZCc7Cisg
ICAgYXNzZXJ0X2VxdWFscyh0aXRsZS5pbm5lckhUTUwsICd3b3JsZCcpOworICAgIGFzc2VydF9h
cnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7
Cit9LCAndGl0bGUgb24gRG9jdW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNr
IHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1
bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0
b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10p
OworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsK
KyAgICBjb25zdCBib2R5ID0gY29udGVudERvY3VtZW50LmJvZHk7CisgICAgYm9keS5pbm5lckhU
TUwgPSAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nOworCisgICAgYXNz
ZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0cnVjdGVk
JywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3NlcnRfZXF1YWxzKGJvZHkuaW5uZXJIVE1MLCAnPGN1
c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGNvbnRlbnREb2N1
bWVudC5ib2R5ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYm9keScpOworICAgIGFzc2VydF9h
cnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7
Cit9LCAnYm9keSBvbiBEb2N1bWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVu
Y3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3Rv
bV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7
CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50Owor
ICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2N1c3Rv
bS1lbGVtZW50Jyk7CisgICAgY29uc3QgYm9keSA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdib2R5Jyk7CisgICAgYm9keS5hcHBlbmRDaGlsZChpbnN0YW5jZSk7CisKKyAgICBhc3Nl
cnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQn
XSk7CisgICAgYXNzZXJ0X2VxdWFscyhib2R5LmlubmVySFRNTCwgJzxjdXN0b20tZWxlbWVudD48
L2N1c3RvbS1lbGVtZW50PicpOworCisgICAgY29udGVudERvY3VtZW50LmJvZHkgPSBib2R5Owor
ICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25u
ZWN0ZWQnXSk7Cit9LCAnYm9keSBvbiBEb2N1bWVudCBtdXN0IGVucXVldWUgY29ubmVjdGVkQ2Fs
bGJhY2sgd2hlbiBpbnNlcnRpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2lu
ZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmlu
ZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50
JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1
bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAnPGN1c3RvbS1lbGVt
ZW50PjwvY3VzdG9tLWVsZW1lbnQ+JzsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQu
dGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOworCisgICAg
Y29udGVudERvY3VtZW50Lm9wZW4oKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQu
dGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ29wZW4gb24gRG9jdW1l
bnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0
b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93
KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3co
Y29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVu
dERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQu
Ym9keS5pbm5lckhUTUwgPSAnPGN1c3RvbS1lbGVtZW50PjwvY3VzdG9tLWVsZW1lbnQ+JzsKKyAg
ICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3Ry
dWN0ZWQnLCAnY29ubmVjdGVkJ10pOworCisgICAgY29udGVudERvY3VtZW50LndyaXRlKCcnKTsK
KyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlz
Y29ubmVjdGVkJ10pOworfSwgJ3dyaXRlIG9uIERvY3VtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25u
ZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93
aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQg
PSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20t
ZWxlbWVudCcsIFtdKTsKKyAgICBjb250ZW50V2luZG93LmRvY3VtZW50LndyaXRlKCc8Y3VzdG9t
LWVsZW1lbnQ+PC9jdXN0b20tZWxlbWVudD4nKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVs
ZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOwor
fSwgJ3dyaXRlIG9uIERvY3VtZW50IG11c3QgZW5xdWV1ZSBjb25uZWN0ZWRDYWxsYmFjayBhZnRl
ciBjb25zdHJ1Y3RpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1
bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0
b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10p
OworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsK
KyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAnPGN1c3RvbS1lbGVtZW50Pjwv
Y3VzdG9tLWVsZW1lbnQ+JzsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxv
ZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOworCisgICAgY29udGVu
dERvY3VtZW50LndyaXRlbG4oJycpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50
YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAnd3JpdGVsbiBvbiBEb2N1
bWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1
c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5k
b3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRv
dyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisgICAgY29udGVudFdpbmRv
dy5kb2N1bWVudC53cml0ZWxuKCc8Y3VzdG9tLWVsZW1lbnQ+PC9jdXN0b20tZWxlbWVudD4nKTsK
KyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29u
c3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOworfSwgJ3dyaXRlbG4gb24gRG9jdW1lbnQgbXVzdCBl
bnF1ZXVlIGNvbm5lY3RlZENhbGxiYWNrIGFmdGVyIGNvbnN0cnVjdGluZyBhIGN1c3RvbSBlbGVt
ZW50Jyk7CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxBbmNob3JFbGVtZW50LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9I
VE1MQW5jaG9yRWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI5ODZjNDVjMzYxMTRl
OGE1ZTRkNDQ0OWY4ODlhNzBiMDY4NTQxNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MQW5jaG9yRWxlbWVudC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1MgdGV4dCBvbiBIVE1MQW5jaG9yRWxlbWVudCBt
dXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBl
bGVtZW50IAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9y
ZWFjdGlvbnMvSFRNTEFuY2hvckVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9t
LWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MQW5jaG9yRWxlbWVudC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVh
YjE2ZGE3YzMxNTI3OWQ2MjMwYmQ0NDFhOTA2NWZhNGEwMjAwYzUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTEFuY2hvckVs
ZW1lbnQuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8dGl0bGU+Q3VzdG9tIEVsZW1lbnRzOiBDRVJlYWN0aW9ucyBvbiBIVE1MQW5jaG9yRWxl
bWVudCBpbnRlcmZhY2U8L3RpdGxlPgorPG1ldGEgbmFtZT0iYXV0aG9yIiB0aXRsZT0iUnlvc3Vr
ZSBOaXdhIiBocmVmPSJtYWlsdG86cm5pd2FAd2Via2l0Lm9yZyI+Cis8bWV0YSBuYW1lPSJhc3Nl
cnQiIGNvbnRlbnQ9InRleHQgb2YgSFRNTEFuY2hvckVsZW1lbnQgaW50ZXJmYWNlIG11c3QgaGF2
ZSBDRVJlYWN0aW9ucyI+Cis8bWV0YSBuYW1lPSJoZWxwIiBjb250ZW50PSJodHRwczovL2RvbS5z
cGVjLndoYXR3Zy5vcmcvI25vZGUiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZXNvdXJjZXMv
Y3VzdG9tLWVsZW1lbnRzLWhlbHBlcnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3JlYWN0
aW9ucy9yZXNvdXJjZXMvcmVhY3Rpb25zLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvYWRkaXRpb25hbC1oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVu
Y3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3Rv
bV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7
CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50Owor
ICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8YT48Y3VzdG9tLWVsZW1lbnQ+
aGVsbG88L2N1c3RvbS1lbGVtZW50PjwvYT5gOworICAgIGNvbnN0IGFuY2hvciA9IGNvbnRlbnRE
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCdhJyk7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVs
ZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOwor
ICAgIGFzc2VydF9lcXVhbHMoYW5jaG9yLmlubmVySFRNTCwgJzxjdXN0b20tZWxlbWVudD5oZWxs
bzwvY3VzdG9tLWVsZW1lbnQ+Jyk7CisKKyAgICBhbmNob3IudGV4dCA9ICd3b3JsZCc7CisgICAg
YXNzZXJ0X2VxdWFscyhhbmNob3IuaW5uZXJIVE1MLCAnd29ybGQnKTsKKyAgICBhc3NlcnRfYXJy
YXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOwor
fSwgJ3RleHQgb24gSFRNTEFuY2hvckVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENh
bGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1l
bnRzL3JlYWN0aW9ucy9IVE1MT3B0aW9uRWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTE9wdGlvbkVsZW1lbnQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmEyYjk5ZjA0ZjNjOTFlZDcyYzYzZWI1MGY0NGYyZGExMjUzNzc3
NTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9y
ZWFjdGlvbnMvSFRNTE9wdGlvbkVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor
CitQQVNTIHRleHQgb24gSFRNTE9wdGlvbkVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3Rl
ZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPcHRpb25FbGVt
ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRN
TE9wdGlvbkVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lM2M1ODRkODYzOTU5NjExZWY1ODk3ODY0
ZGU1ZjY0Nzk2ZTE5NmVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0
b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPcHRpb25FbGVtZW50Lmh0bWwKQEAgLTAsMCArMSwz
OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkN1c3RvbSBFbGVt
ZW50czogQ0VSZWFjdGlvbnMgb24gSFRNTE9wdGlvbkVsZW1lbnQgaW50ZXJmYWNlPC90aXRsZT4K
KzxtZXRhIG5hbWU9ImF1dGhvciIgdGl0bGU9IlJ5b3N1a2UgTml3YSIgaHJlZj0ibWFpbHRvOnJu
aXdhQHdlYmtpdC5vcmciPgorPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJ0ZXh0IG9mIEhU
TUxPcHRpb25FbGVtZW50IGludGVyZmFjZSBtdXN0IGhhdmUgQ0VSZWFjdGlvbnMiPgorPG1ldGEg
bmFtZT0iaGVscCIgY29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNub2RlIj4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxwZXJz
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvcmVzb3VyY2VzL3JlYWN0aW9u
cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FkZGl0aW9uYWwtaGVs
cGVycy5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+
Cis8c2NyaXB0PgorCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7
CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29u
dGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVudERv
Y3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9k
eS5pbm5lckhUTUwgPSBgPHNlbGVjdD48b3B0aW9uPjwvb3B0aW9uPjwvc2VsZWN0PmA7CisgICAg
Y29uc3Qgb3B0aW9uID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ29wdGlvbicpOwor
ICAgIGNvbnN0IGluc3RhbmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY3VzdG9tLWVsZW1l
bnQnKTsKKyAgICBvcHRpb24uYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOworICAgIGluc3RhbmNlLnRl
eHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50
YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisgICAgYXNz
ZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0
b20tZWxlbWVudD4nKTsKKworICAgIG9wdGlvbi50ZXh0ID0gJ3dvcmxkJzsKKyAgICBhc3NlcnRf
ZXF1YWxzKG9wdGlvbi5pbm5lckhUTUwsICd3b3JsZCcpOworICAgIGFzc2VydF9hcnJheV9lcXVh
bHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAndGV4
dCBvbiBIVE1MT3B0aW9uRWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVh
Y3Rpb25zL0hUTUxPcHRpb25zQ29sbGVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTE9wdGlvbnNDb2xsZWN0aW9uLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40YmI1ZGQwY2U0OGM4OWQ4MjIyNDUyZThkNmI0M2U4ZjU2YWI4
YTk2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMv
cmVhY3Rpb25zL0hUTUxPcHRpb25zQ29sbGVjdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3
IEBACisKK1BBU1MgbGVuZ3RoIG9uIEhUTUxPcHRpb25zQ29sbGVjdGlvbiBtdXN0IGVucXVldWUg
ZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFT
UyBUaGUgaW5kZXhlZCBzZXR0ZXIgb24gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIG11c3QgZW5xdWV1
ZSBjb25uZWN0ZWRDYWxsYmFjayB3aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFT
UyBUaGUgaW5kZXhlZCBzZXR0ZXIgb24gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIG11c3QgZW5xdWV1
ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCitQ
QVNTIGFkZCBvbiBIVE1MT3B0aW9uc0NvbGxlY3Rpb24gbXVzdCBlbnF1ZXVlIGNvbm5lY3RlZENh
bGxiYWNrIHdoZW4gaW5zZXJ0aW5nIGEgY3VzdG9tIGVsZW1lbnQgCitQQVNTIHJlbW92ZSBvbiBI
VE1MT3B0aW9uc0NvbGxlY3Rpb24gbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdo
ZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPcHRpb25zQ29sbGVjdGlvbi5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPcHRpb25z
Q29sbGVjdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAwMTVlOWY4NDlhMmZjYzg5NzhkNWJlYTk4NTAw
YTg1YTMyNzljOTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1l
bGVtZW50cy9yZWFjdGlvbnMvSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmh0bWwKQEAgLTAsMCArMSwx
MjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5DdXN0b20gRWxl
bWVudHM6IENFUmVhY3Rpb25zIG9uIEhUTUxPcHRpb25zQ29sbGVjdGlvbiBpbnRlcmZhY2U8L3Rp
dGxlPgorPG1ldGEgbmFtZT0iYXV0aG9yIiB0aXRsZT0iUnlvc3VrZSBOaXdhIiBocmVmPSJtYWls
dG86cm5pd2FAd2Via2l0Lm9yZyI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9Imxlbmd0
aCwgdGhlIGluZGV4ZWQgc2V0dGVyLCBhZGQsIGFuZCByZW1vdmUgb2YgSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uIGludGVyZmFjZSBtdXN0IGhhdmUgQ0VSZWFjdGlvbnMiPgorPG1ldGEgbmFtZT0iaGVs
cCIgY29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNub2RlIj4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
dXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxwZXJzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvcmVzb3VyY2VzL3JlYWN0aW9ucy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FkZGl0aW9uYWwtaGVscGVycy5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0
PgorCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29u
c3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRv
dywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0g
Y29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhU
TUwgPSBgPHNlbGVjdD48b3B0aW9uPjwvb3B0aW9uPjwvc2VsZWN0PmA7CisgICAgY29uc3Qgb3B0
aW9uID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ29wdGlvbicpOworCisgICAgY29u
c3QgaW5zdGFuY2UgPSBjb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudChlbGVtZW50Lm5hbWUp
OworICAgIG9wdGlvbi5hcHBlbmRDaGlsZChpbnN0YW5jZSk7CisgICAgaW5zdGFuY2UudGV4dENv
bnRlbnQgPSAnaGVsbG8nOworCisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VM
b2coKS50eXBlcygpLCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3NlcnRf
ZXF1YWxzKG9wdGlvbi5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1l
bGVtZW50PicpOworCisgICAgY29uc3Qgc2VsZWN0ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoJ3NlbGVjdCcpOworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0Lm9wdGlvbnNbMF0sIG9w
dGlvbik7CisgICAgc2VsZWN0Lm9wdGlvbnMubGVuZ3RoID0gMDsKKyAgICBhc3NlcnRfZXF1YWxz
KHNlbGVjdC5maXJzdENoaWxkLCBudWxsKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1l
bnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ2xlbmd0aCBvbiBI
VE1MT3B0aW9uc0NvbGxlY3Rpb24gbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdo
ZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0
aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21f
ZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOwor
CisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAg
ICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBgPHNlbGVjdD48L3NlbGVjdD5gOwor
ICAgIGNvbnN0IHNlbGVjdCA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3Qn
KTsKKworICAgIGNvbnN0IG9wdGlvbiA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KCdv
cHRpb24nKTsKKyAgICBjb25zdCBpbnN0YW5jZSA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVt
ZW50KGVsZW1lbnQubmFtZSk7CisgICAgb3B0aW9uLmFwcGVuZENoaWxkKGluc3RhbmNlKTsKKyAg
ICBpbnN0YW5jZS50ZXh0Q29udGVudCA9ICdoZWxsbyc7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1
YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnXSk7CisgICAgYXNz
ZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0
b20tZWxlbWVudD4nKTsKKworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0Lm9wdGlvbnMubGVuZ3Ro
LCAwKTsKKyAgICBzZWxlY3Qub3B0aW9uc1swXSA9IG9wdGlvbjsKKyAgICBhc3NlcnRfZXF1YWxz
KHNlbGVjdC5vcHRpb25zLmxlbmd0aCwgMSk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVt
ZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2Nvbm5lY3RlZCddKTsKK30sICdUaGUgaW5kZXhlZCBz
ZXR0ZXIgb24gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIG11c3QgZW5xdWV1ZSBjb25uZWN0ZWRDYWxs
YmFjayB3aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rfd2l0aF93aW5k
b3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5l
X2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQn
LCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3Vt
ZW50OworICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8c2VsZWN0PjxvcHRp
b24+PC9vcHRpb24+PC9zZWxlY3Q+YDsKKyAgICBjb25zdCBvcHRpb24gPSBjb250ZW50RG9jdW1l
bnQucXVlcnlTZWxlY3Rvcignb3B0aW9uJyk7CisKKyAgICBjb25zdCBpbnN0YW5jZSA9IGNvbnRl
bnREb2N1bWVudC5jcmVhdGVFbGVtZW50KGVsZW1lbnQubmFtZSk7CisgICAgb3B0aW9uLmFwcGVu
ZENoaWxkKGluc3RhbmNlKTsKKyAgICBpbnN0YW5jZS50ZXh0Q29udGVudCA9ICdoZWxsbyc7CisK
KyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29u
c3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOworICAgIGFzc2VydF9lcXVhbHMob3B0aW9uLmlubmVy
SFRNTCwgJzxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+Jyk7CisKKyAgICBj
b25zdCBzZWxlY3QgPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc2VsZWN0Jyk7Cisg
ICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9uc1swXSwgb3B0aW9uKTsKKyAgICBzZWxlY3Qu
b3B0aW9uc1swXSA9IG51bGw7CisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9ucy5sZW5n
dGgsIDApOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMo
KSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAnVGhlIGluZGV4ZWQgc2V0dGVyIG9uIEhUTUxPcHRp
b25zQ29sbGVjdGlvbiBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1v
dmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNv
bnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50
X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBj
b25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50OworICAgIGNvbnRl
bnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8c2VsZWN0Pjwvc2VsZWN0PmA7CisgICAgY29u
c3Qgc2VsZWN0ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3NlbGVjdCcpOworCisg
ICAgY29uc3Qgb3B0aW9uID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ29wdGlvbicp
OworICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZWxl
bWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOworICAgIGluc3Rh
bmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxl
bWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCddKTsKKyAgICBhc3NlcnRfZXF1
YWxzKG9wdGlvbi5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVt
ZW50PicpOworCisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9ucy5sZW5ndGgsIDApOwor
ICAgIHNlbGVjdC5vcHRpb25zLmFkZChvcHRpb24pOworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0
Lm9wdGlvbnMubGVuZ3RoLCAxKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFr
ZUxvZygpLnR5cGVzKCksIFsnY29ubmVjdGVkJ10pOworfSwgJ2FkZCBvbiBIVE1MT3B0aW9uc0Nv
bGxlY3Rpb24gbXVzdCBlbnF1ZXVlIGNvbm5lY3RlZENhbGxiYWNrIHdoZW4gaW5zZXJ0aW5nIGEg
Y3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdp
bmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2lu
ZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKworICAgIGNvbnN0IGNv
bnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAgY29udGVudERvY3Vt
ZW50LmJvZHkuaW5uZXJIVE1MID0gYDxzZWxlY3Q+PG9wdGlvbj48L29wdGlvbj48L3NlbGVjdD5g
OworICAgIGNvbnN0IG9wdGlvbiA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdvcHRp
b24nKTsKKworICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoZWxlbWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOworICAg
IGluc3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9lcXVh
bHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQn
XSk7CisgICAgYXNzZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50
PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGNvbnN0IHNlbGVjdCA9IGNvbnRlbnRE
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QnKTsKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGVj
dC5vcHRpb25zWzBdLCBvcHRpb24pOworICAgIHNlbGVjdC5vcHRpb25zLnJlbW92ZSgwKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHNlbGVjdC5vcHRpb25zLmxlbmd0aCwgMCk7CisgICAgYXNzZXJ0X2Fy
cmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2Rpc2Nvbm5lY3RlZCddKTsK
K30sICdyZW1vdmUgb24gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIG11c3QgZW5xdWV1ZSBkaXNjb25u
ZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKworPC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3Rv
bS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTE91dHB1dEVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPdXRwdXRFbGVtZW50
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOGYzZGQ0NTQ3NDQzYTk1YThmZWFiMWIwNTRmNDk0
YmVlMWM0Y2JjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxl
bWVudHMvcmVhY3Rpb25zL0hUTUxPdXRwdXRFbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDQgQEAKKworUEFTUyB2YWx1ZSBvbiBIVE1MT3V0cHV0RWxlbWVudCBtdXN0IGVucXVldWUgZGlz
Y29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyBk
ZWZhdWx0VmFsdWUgb24gSFRNTE91dHB1dEVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3Rl
ZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPdXRwdXRFbGVt
ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRN
TE91dHB1dEVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzYzNDEzMjM1YTMzMDUyYTQxZjFkOWE4
NjdiYzYzOTIxZmI0MWI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0
b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxPdXRwdXRFbGVtZW50Lmh0bWwKQEAgLTAsMCArMSw1
MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkN1c3RvbSBFbGVt
ZW50czogQ0VSZWFjdGlvbnMgb24gSFRNTE91dHB1dEVsZW1lbnQgaW50ZXJmYWNlPC90aXRsZT4K
KzxtZXRhIG5hbWU9ImF1dGhvciIgdGl0bGU9IlJ5b3N1a2UgTml3YSIgaHJlZj0ibWFpbHRvOnJu
aXdhQHdlYmtpdC5vcmciPgorPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJ2YWx1ZSBhbmQg
ZGVmYXVsdFZhbHVlIG9mIEhUTUxPdXRwdXRFbGVtZW50IGludGVyZmFjZSBtdXN0IGhhdmUgQ0VS
ZWFjdGlvbnMiPgorPG1ldGEgbmFtZT0iaGVscCIgY29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53
aGF0d2cub3JnLyNub2RlIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3Rv
bS1lbGVtZW50cy1oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMv
cmVzb3VyY2VzL3JlYWN0aW9ucy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2FkZGl0aW9uYWwtaGVscGVycy5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxk
aXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9u
IChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxl
bWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisg
ICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBj
b250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBgPG91dHB1dD48Y3VzdG9tLWVsZW1lbnQ+
aGVsbG88L2N1c3RvbS1lbGVtZW50Pjwvb3V0cHV0PmA7CisgICAgY29uc3QgYW5jaG9yID0gY29u
dGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ291dHB1dCcpOworCisgICAgYXNzZXJ0X2FycmF5
X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5l
Y3RlZCddKTsKKyAgICBhc3NlcnRfZXF1YWxzKGFuY2hvci5pbm5lckhUTUwsICc8Y3VzdG9tLWVs
ZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50PicpOworCisgICAgYW5jaG9yLnZhbHVlID0gJ3dv
cmxkJzsKKyAgICBhc3NlcnRfZXF1YWxzKGFuY2hvci5pbm5lckhUTUwsICd3b3JsZCcpOworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25u
ZWN0ZWQnXSk7Cit9LCAndmFsdWUgb24gSFRNTE91dHB1dEVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRp
c2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0
ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxl
bWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1
c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVu
dFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBg
PG91dHB1dD48Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50Pjwvb3V0cHV0PmA7
CisgICAgY29uc3QgYW5jaG9yID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ291dHB1
dCcpOworCisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygp
LCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3NlcnRfZXF1YWxzKGFuY2hv
ci5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50PicpOwor
CisgICAgYW5jaG9yLmRlZmF1bHRWYWx1ZSA9ICd3b3JsZCc7CisgICAgYXNzZXJ0X2VxdWFscyhh
bmNob3IuaW5uZXJIVE1MLCAnd29ybGQnKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1l
bnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ2RlZmF1bHRWYWx1
ZSBvbiBIVE1MT3V0cHV0RWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVh
Y3Rpb25zL0hUTUxTZWxlY3RFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MU2VsZWN0RWxlbWVudC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMzZmMWQ5N2QzNjk2NDQ3NDE3NzQ5ZDM5M2JjY2MxNmM3NGU2MzViNwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9u
cy9IVE1MU2VsZWN0RWxlbWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACisKK1BBU1Mg
bGVuZ3RoIG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxs
YmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCitQQVNTIFRoZSBpbmRleGVkIHNl
dHRlciBvbiBIVE1MU2VsZWN0RWxlbWVudCBtdXN0IGVucXVldWUgY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiBpbnNlcnRpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1MgVGhlIGluZGV4ZWQgc2V0dGVy
IG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3
aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCitQQVNTIGFkZCBvbiBIVE1MU2VsZWN0RWxl
bWVudCBtdXN0IGVucXVldWUgY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiBpbnNlcnRpbmcgYSBjdXN0
b20gZWxlbWVudCAKK1BBU1MgcmVtb3ZlIG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1
ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9I
VE1MU2VsZWN0RWxlbWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMv
cmVhY3Rpb25zL0hUTUxTZWxlY3RFbGVtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWVlZDA1M2FiNTc3
YmM3ZWI2YWY4ZjEzYjE2NTU3ZTNlNmFiYzU0NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MU2VsZWN0RWxlbWVudC5odG1s
CkBAIC0wLDAgKzEsMTI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8dGl0
bGU+Q3VzdG9tIEVsZW1lbnRzOiBDRVJlYWN0aW9ucyBvbiBIVE1MU2VsZWN0RWxlbWVudCBpbnRl
cmZhY2U8L3RpdGxlPgorPG1ldGEgbmFtZT0iYXV0aG9yIiB0aXRsZT0iUnlvc3VrZSBOaXdhIiBo
cmVmPSJtYWlsdG86cm5pd2FAd2Via2l0Lm9yZyI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRl
bnQ9Imxlbmd0aCwgYWRkLCByZW1vdmUsIGFuZCB0aGUgc2V0dGVyIG9mIEhUTUxTZWxlY3RFbGVt
ZW50IGludGVyZmFjZSBtdXN0IGhhdmUgQ0VSZWFjdGlvbnMiPgorPG1ldGEgbmFtZT0iaGVscCIg
Y29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNub2RlIj4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jdXN0
b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxwZXJzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvcmVzb3VyY2VzL3JlYWN0aW9ucy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FkZGl0aW9uYWwtaGVscGVycy5qcyI+PC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0Pgor
Cit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3Qg
ZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywg
J2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29u
dGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwg
PSBgPHNlbGVjdD48b3B0aW9uPjwvb3B0aW9uPjwvc2VsZWN0PmA7CisgICAgY29uc3Qgb3B0aW9u
ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ29wdGlvbicpOworCisgICAgY29uc3Qg
aW5zdGFuY2UgPSBjb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudChlbGVtZW50Lm5hbWUpOwor
ICAgIG9wdGlvbi5hcHBlbmRDaGlsZChpbnN0YW5jZSk7CisgICAgaW5zdGFuY2UudGV4dENvbnRl
bnQgPSAnaGVsbG8nOworCisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2co
KS50eXBlcygpLCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3NlcnRfZXF1
YWxzKG9wdGlvbi5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVt
ZW50PicpOworCisgICAgY29uc3Qgc2VsZWN0ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0
b3IoJ3NlbGVjdCcpOworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0Lmxlbmd0aCwgMSk7CisgICAg
c2VsZWN0Lmxlbmd0aCA9IDA7CisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3QuZmlyc3RDaGlsZCwg
bnVsbCk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygp
LCBbJ2Rpc2Nvbm5lY3RlZCddKTsKK30sICdsZW5ndGggb24gSFRNTFNlbGVjdEVsZW1lbnQgbXVz
dCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxl
bWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7Cisg
ICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVu
dFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3Vt
ZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5p
bm5lckhUTUwgPSBgPHNlbGVjdD48L3NlbGVjdD5gOworICAgIGNvbnN0IHNlbGVjdCA9IGNvbnRl
bnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QnKTsKKworICAgIGNvbnN0IG9wdGlvbiA9
IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KCdvcHRpb24nKTsKKyAgICBjb25zdCBpbnN0
YW5jZSA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KGVsZW1lbnQubmFtZSk7CisgICAg
b3B0aW9uLmFwcGVuZENoaWxkKGluc3RhbmNlKTsKKyAgICBpbnN0YW5jZS50ZXh0Q29udGVudCA9
ICdoZWxsbyc7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5
cGVzKCksIFsnY29uc3RydWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJI
VE1MLCAnPGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGFz
c2VydF9lcXVhbHMoc2VsZWN0Lm9wdGlvbnMubGVuZ3RoLCAwKTsKKyAgICBzZWxlY3RbMF0gPSBv
cHRpb247CisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9ucy5sZW5ndGgsIDEpOworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25uZWN0
ZWQnXSk7Cit9LCAnVGhlIGluZGV4ZWQgc2V0dGVyIG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3Qg
ZW5xdWV1ZSBjb25uZWN0ZWRDYWxsYmFjayB3aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50
Jyk7CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBj
b25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2lu
ZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQg
PSBjb250ZW50V2luZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVy
SFRNTCA9IGA8c2VsZWN0PjxvcHRpb24+PC9vcHRpb24+PC9zZWxlY3Q+YDsKKyAgICBjb25zdCBv
cHRpb24gPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rvcignb3B0aW9uJyk7CisKKyAgICBj
b25zdCBpbnN0YW5jZSA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KGVsZW1lbnQubmFt
ZSk7CisgICAgb3B0aW9uLmFwcGVuZENoaWxkKGluc3RhbmNlKTsKKyAgICBpbnN0YW5jZS50ZXh0
Q29udGVudCA9ICdoZWxsbyc7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFr
ZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10pOworICAgIGFzc2Vy
dF9lcXVhbHMob3B0aW9uLmlubmVySFRNTCwgJzxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9t
LWVsZW1lbnQ+Jyk7CisKKyAgICBjb25zdCBzZWxlY3QgPSBjb250ZW50RG9jdW1lbnQucXVlcnlT
ZWxlY3Rvcignc2VsZWN0Jyk7CisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9uc1swXSwg
b3B0aW9uKTsKKyAgICBzZWxlY3RbMF0gPSBudWxsOworICAgIGFzc2VydF9lcXVhbHMoc2VsZWN0
Lm9wdGlvbnMubGVuZ3RoLCAwKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFr
ZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ1RoZSBpbmRleGVkIHNldHRl
ciBvbiBIVE1MU2VsZWN0RWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVu
Y3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3Rv
bV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7
CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50Owor
ICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8c2VsZWN0Pjwvc2VsZWN0PmA7
CisgICAgY29uc3Qgc2VsZWN0ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3NlbGVj
dCcpOworCisgICAgY29uc3Qgb3B0aW9uID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J29wdGlvbicpOworICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoZWxlbWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOwor
ICAgIGluc3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9l
cXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCddKTsKKyAgICBh
c3NlcnRfZXF1YWxzKG9wdGlvbi5pbm5lckhUTUwsICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1
c3RvbS1lbGVtZW50PicpOworCisgICAgYXNzZXJ0X2VxdWFscyhzZWxlY3Qub3B0aW9ucy5sZW5n
dGgsIDApOworICAgIHNlbGVjdC5hZGQob3B0aW9uKTsKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGVj
dC5vcHRpb25zLmxlbmd0aCwgMSk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRh
a2VMb2coKS50eXBlcygpLCBbJ2Nvbm5lY3RlZCddKTsKK30sICdhZGQgb24gSFRNTFNlbGVjdEVs
ZW1lbnQgbXVzdCBlbnF1ZXVlIGNvbm5lY3RlZENhbGxiYWNrIHdoZW4gaW5zZXJ0aW5nIGEgY3Vz
dG9tIGVsZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRv
dykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93
KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRl
bnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAgY29udGVudERvY3VtZW50
LmJvZHkuaW5uZXJIVE1MID0gYDxzZWxlY3Q+PG9wdGlvbj48L29wdGlvbj48L3NlbGVjdD5gOwor
ICAgIGNvbnN0IG9wdGlvbiA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdvcHRpb24n
KTsKKworICAgIGNvbnN0IGluc3RhbmNlID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ZWxlbWVudC5uYW1lKTsKKyAgICBvcHRpb24uYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOworICAgIGlu
c3RhbmNlLnRleHRDb250ZW50ID0gJ2hlbGxvJzsKKworICAgIGFzc2VydF9hcnJheV9lcXVhbHMo
ZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7
CisgICAgYXNzZXJ0X2VxdWFscyhvcHRpb24uaW5uZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50Pmhl
bGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGNvbnN0IHNlbGVjdCA9IGNvbnRlbnREb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3QnKTsKKyAgICBhc3NlcnRfZXF1YWxzKHNlbGVjdC5v
cHRpb25zWzBdLCBvcHRpb24pOworICAgIHNlbGVjdC5yZW1vdmUoMCk7CisgICAgYXNzZXJ0X2Vx
dWFscyhzZWxlY3Qub3B0aW9ucy5sZW5ndGgsIDApOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMo
ZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAncmVtb3Zl
IG9uIEhUTUxTZWxlY3RFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3
aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFj
dGlvbnMvSFRNTFRhYmxlRWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2N1
c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRhYmxlRWxlbWVudC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMzEzMWUxMjJjZDUwMWQ2ZjViOTk4MmM2OGY5N2EzOGE0YjY3YmVjNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9I
VE1MVGFibGVFbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACisKK1BBU1MgY2Fw
dGlvbiBvbiBIVE1MVGFibGVFbGVtZW50IG11c3QgZW5xdWV1ZSBjb25uZWN0ZWRDYWxsYmFjayB3
aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyBjYXB0aW9uIG9uIEhUTUxUYWJs
ZUVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3Zpbmcg
YSBjdXN0b20gZWxlbWVudCAKK1BBU1MgZGVsZXRlQ2FwdGlvbigpIG9uIEhUTUxUYWJsZUVsZW1l
bnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0
b20gZWxlbWVudCAKK1BBU1MgdEhlYWQgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUg
Y29ubmVjdGVkQ2FsbGJhY2sgd2hlbiBpbnNlcnRpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1Mg
dEhlYWQgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJh
Y2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyBkZWxldGVUSGVhZCgpIG9u
IEhUTUxUYWJsZUVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4g
cmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1MgdEZvb3Qgb24gSFRNTFRhYmxlRWxlbWVu
dCBtdXN0IGVucXVldWUgY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiBpbnNlcnRpbmcgYSBjdXN0b20g
ZWxlbWVudCAKK1BBU1MgdEZvb3Qgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlz
Y29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorUEFTUyBk
ZWxldGVURm9vdCgpIG9uIEhUTUxUYWJsZUVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3Rl
ZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1MgZGVsZXRlUm93
KCkgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sg
d2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRhYmxlRWxlbWVudC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJsZUVsZW1l
bnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4wZjkyYjYwNGYyZWEwZDhlNWQ2MDQ4NWYxZWIzNGY3YTcxNTdl
NWQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMv
cmVhY3Rpb25zL0hUTUxUYWJsZUVsZW1lbnQuaHRtbApAQCAtMCwwICsxLDE5NCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPkN1c3RvbSBFbGVtZW50czogQ0VSZWFj
dGlvbnMgb24gSFRNTFRhYmxlRWxlbWVudCBpbnRlcmZhY2U8L3RpdGxlPgorPG1ldGEgbmFtZT0i
YXV0aG9yIiB0aXRsZT0iUnlvc3VrZSBOaXdhIiBocmVmPSJtYWlsdG86cm5pd2FAd2Via2l0Lm9y
ZyI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9ImNhcHRpb24sIGRlbGV0ZUNhcHRpb24s
IHRoZWFkLCBkZWxldGVUSGVhZCwgdEZvb3QsIGRlbGV0ZVRGb290LCBhbmQgZGVsZXRlUm93IG9m
IEhUTUxUYWJsZUVsZW1lbnQgaW50ZXJmYWNlIG11c3QgaGF2ZSBDRVJlYWN0aW9ucyI+Cis8bWV0
YSBuYW1lPSJoZWxwIiBjb250ZW50PSJodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI25vZGUi
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZXNvdXJjZXMvY3VzdG9tLWVsZW1lbnRzLWhlbHBl
cnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9yZXNvdXJjZXMvcmVhY3Rp
b25zLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWRkaXRpb25hbC1o
ZWxwZXJzLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0ibG9nIj48L2Rp
dj4KKzxzY3JpcHQ+CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cp
IHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhj
b250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50
RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1bWVudC5i
b2R5LmlubmVySFRNTCA9IGA8dGFibGU+PC90YWJsZT5gOworICAgIGNvbnN0IHRhYmxlID0gY29u
dGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RhYmxlJyk7CisKKyAgICBjb25zdCBjYXB0aW9u
ID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhcHRpb24nKTsKKyAgICBjYXB0aW9u
LmlubmVySFRNTCA9ICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50Pic7CisK
KyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29u
c3RydWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyhjYXB0aW9uLmlubmVySFRNTCwgJzxjdXN0
b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+Jyk7CisKKyAgICBhc3NlcnRfZXF1YWxz
KHRhYmxlLmNhcHRpb24sIG51bGwpOworICAgIHRhYmxlLmNhcHRpb24gPSBjYXB0aW9uOworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25uZWN0
ZWQnXSk7Cit9LCAnY2FwdGlvbiBvbiBIVE1MVGFibGVFbGVtZW50IG11c3QgZW5xdWV1ZSBjb25u
ZWN0ZWRDYWxsYmFjayB3aGVuIGluc2VydGluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKK3Rlc3Rf
d2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50
ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9t
LWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2lu
ZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8dGFi
bGU+PGNhcHRpb24+PGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD48L2NhcHRp
b24+PC90YWJsZT5gOworICAgIGNvbnN0IGNhcHRpb24gPSBjb250ZW50RG9jdW1lbnQucXVlcnlT
ZWxlY3RvcignY2FwdGlvbicpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtl
TG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisgICAgYXNzZXJ0
X2VxdWFscyhjYXB0aW9uLmlubmVySFRNTCwgJzxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9t
LWVsZW1lbnQ+Jyk7CisKKyAgICBjb25zdCB0YWJsZSA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCd0YWJsZScpOworICAgIGFzc2VydF9lcXVhbHModGFibGUuY2FwdGlvbiwgY2FwdGlv
bik7CisgICAgY29uc3QgbmV3Q2FwdGlvbiA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdjYXB0aW9uJyk7CisgICAgdGFibGUuY2FwdGlvbiA9IG5ld0NhcHRpb247IC8vIENocm9tZSBk
b2Vzbid0IHN1cHBvcnQgc2V0dGluZyB0byBudWxsLgorICAgIGFzc2VydF9lcXVhbHModGFibGUu
Y2FwdGlvbiwgbmV3Q2FwdGlvbik7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRh
a2VMb2coKS50eXBlcygpLCBbJ2Rpc2Nvbm5lY3RlZCddKTsKK30sICdjYXB0aW9uIG9uIEhUTUxU
YWJsZUVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3Zp
bmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250
ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9p
bl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29u
c3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50
RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBgPHRhYmxlPjxjYXB0aW9uPjxjdXN0b20tZWxlbWVu
dD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC9jYXB0aW9uPjwvdGFibGU+YDsKKyAgICBjb25zdCBj
YXB0aW9uID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2NhcHRpb24nKTsKKyAgICBh
c3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0
ZWQnLCAnY29ubmVjdGVkJ10pOworICAgIGFzc2VydF9lcXVhbHMoY2FwdGlvbi5pbm5lckhUTUws
ICc8Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50PicpOworCisgICAgY29uc3Qg
dGFibGUgPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3RvcigndGFibGUnKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHRhYmxlLmNhcHRpb24sIGNhcHRpb24pOworICAgIGNvbnN0IG5ld0NhcHRpb24g
PSBjb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FwdGlvbicpOworICAgIHRhYmxlLmRl
bGV0ZUNhcHRpb24oKTsKKyAgICBhc3NlcnRfZXF1YWxzKHRhYmxlLmNhcHRpb24sIG51bGwpOwor
ICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNj
b25uZWN0ZWQnXSk7Cit9LCAnZGVsZXRlQ2FwdGlvbigpIG9uIEhUTUxUYWJsZUVsZW1lbnQgbXVz
dCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxl
bWVudCcpOworCisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsK
KyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhjb250
ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50RG9j
dW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1bWVudC5ib2R5
LmlubmVySFRNTCA9IGA8dGFibGU+PC90YWJsZT5gOworICAgIGNvbnN0IHRhYmxlID0gY29udGVu
dERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RhYmxlJyk7CisKKyAgICBjb25zdCB0aGVhZCA9IGNv
bnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0aGVhZCcpOworICAgIHRoZWFkLmlubmVySFRN
TCA9ICc8dHI+PHRkPjxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48
L3RyPic7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVz
KCksIFsnY29uc3RydWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyh0aGVhZC5pbm5lckhUTUws
ICc8dHI+PHRkPjxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48L3Ry
PicpOworCisgICAgYXNzZXJ0X2VxdWFscyh0YWJsZS50SGVhZCwgbnVsbCk7CisgICAgdGFibGUu
dEhlYWQgPSB0aGVhZDsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygp
LnR5cGVzKCksIFsnY29ubmVjdGVkJ10pOworfSwgJ3RIZWFkIG9uIEhUTUxUYWJsZUVsZW1lbnQg
bXVzdCBlbnF1ZXVlIGNvbm5lY3RlZENhbGxiYWNrIHdoZW4gaW5zZXJ0aW5nIGEgY3VzdG9tIGVs
ZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgewor
ICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRl
bnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1
bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAgY29udGVudERvY3VtZW50LmJvZHku
aW5uZXJIVE1MID0gYDx0YWJsZT48dGhlYWQ+PHRyPjx0ZD48Y3VzdG9tLWVsZW1lbnQ+aGVsbG88
L2N1c3RvbS1lbGVtZW50PjwvdGQ+PC90cj48L3RoZWFkPjwvdGFibGU+YDsKKyAgICBjb25zdCB0
aGVhZCA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd0aGVhZCcpOworICAgIGFzc2Vy
dF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcs
ICdjb25uZWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyh0aGVhZC5pbm5lckhUTUwsICc8dHI+
PHRkPjxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48L3RyPicpOwor
CisgICAgY29uc3QgdGFibGUgPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3RvcigndGFibGUn
KTsKKyAgICBhc3NlcnRfZXF1YWxzKHRhYmxlLnRIZWFkLCB0aGVhZCk7CisgICAgY29uc3QgbmV3
VGhlYWQgPSBjb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGhlYWQnKTsKKyAgICB0YWJs
ZS50SGVhZCA9IG5ld1RoZWFkOyAvLyBDaHJvbWUgZG9lc24ndCBzdXBwb3J0IHNldHRpbmcgdG8g
bnVsbC4KKyAgICBhc3NlcnRfZXF1YWxzKHRhYmxlLnRIZWFkLCBuZXdUaGVhZCk7CisgICAgYXNz
ZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2Rpc2Nvbm5lY3Rl
ZCddKTsKK30sICd0SGVhZCBvbiBIVE1MVGFibGVFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25u
ZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93
aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQg
PSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20t
ZWxlbWVudCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5k
b3cuZG9jdW1lbnQ7CisgICAgY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gYDx0YWJs
ZT48dGhlYWQ+PHRyPjx0ZD48Y3VzdG9tLWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50Pjwv
dGQ+PC90cj48L3RoZWFkPjwvdGFibGU+YDsKKyAgICBjb25zdCB0aGVhZCA9IGNvbnRlbnREb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCd0aGVhZCcpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxl
bWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7Cisg
ICAgYXNzZXJ0X2VxdWFscyh0aGVhZC5pbm5lckhUTUwsICc8dHI+PHRkPjxjdXN0b20tZWxlbWVu
dD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48L3RyPicpOworCisgICAgY29uc3QgdGFibGUg
PSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3RvcigndGFibGUnKTsKKyAgICBhc3NlcnRfZXF1
YWxzKHRhYmxlLnRIZWFkLCB0aGVhZCk7CisgICAgdGFibGUuZGVsZXRlVEhlYWQoKTsKKyAgICBh
c3NlcnRfZXF1YWxzKHRhYmxlLnRIZWFkLCBudWxsKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxz
KGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ2RlbGV0
ZVRIZWFkKCkgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2Fs
bGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKKwordGVzdF93aXRoX3dp
bmRvdyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZp
bmVfY3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVu
dCcsIFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9j
dW1lbnQ7CisgICAgY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gYDx0YWJsZT48L3Rh
YmxlPmA7CisgICAgY29uc3QgdGFibGUgPSBjb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rvcign
dGFibGUnKTsKKworICAgIGNvbnN0IHRmb290ID0gY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ3Rmb290Jyk7CisgICAgdGZvb3QuaW5uZXJIVE1MID0gJzx0cj48dGQ+PGN1c3RvbS1lbGVt
ZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD48L3RkPjwvdHI+JzsKKworICAgIGFzc2VydF9hcnJh
eV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1Y3RlZCddKTsKKyAg
ICBhc3NlcnRfZXF1YWxzKHRmb290LmlubmVySFRNTCwgJzx0cj48dGQ+PGN1c3RvbS1lbGVtZW50
PmhlbGxvPC9jdXN0b20tZWxlbWVudD48L3RkPjwvdHI+Jyk7CisKKyAgICBhc3NlcnRfZXF1YWxz
KHRhYmxlLnRGb290LCBudWxsKTsKKyAgICB0YWJsZS50Rm9vdCA9IHRmb290OworICAgIGFzc2Vy
dF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25uZWN0ZWQnXSk7
Cit9LCAndEZvb3Qgb24gSFRNTFRhYmxlRWxlbWVudCBtdXN0IGVucXVldWUgY29ubmVjdGVkQ2Fs
bGJhY2sgd2hlbiBpbnNlcnRpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2lu
ZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmlu
ZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50
JywgW10pOworCisgICAgY29uc3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1
bWVudDsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBgPHRhYmxlPjx0Zm9v
dD48dHI+PHRkPjxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48L3Ry
PjwvdGZvb3Q+PC90YWJsZT5gOworICAgIGNvbnN0IHRmb290ID0gY29udGVudERvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoJ3Rmb290Jyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRh
a2VMb2coKS50eXBlcygpLCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3Nl
cnRfZXF1YWxzKHRmb290LmlubmVySFRNTCwgJzx0cj48dGQ+PGN1c3RvbS1lbGVtZW50PmhlbGxv
PC9jdXN0b20tZWxlbWVudD48L3RkPjwvdHI+Jyk7CisKKyAgICBjb25zdCB0YWJsZSA9IGNvbnRl
bnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd0YWJsZScpOworICAgIGFzc2VydF9lcXVhbHModGFi
bGUudEZvb3QsIHRmb290KTsKKyAgICBjb25zdCBuZXdUaGVhZCA9IGNvbnRlbnREb2N1bWVudC5j
cmVhdGVFbGVtZW50KCd0Zm9vdCcpOworICAgIHRhYmxlLnRGb290ID0gbmV3VGhlYWQ7IC8vIENo
cm9tZSBkb2Vzbid0IHN1cHBvcnQgc2V0dGluZyB0byBudWxsLgorICAgIGFzc2VydF9lcXVhbHMo
dGFibGUudEZvb3QsIG5ld1RoZWFkKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQu
dGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ3RGb290IG9uIEhUTUxU
YWJsZUVsZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3Zp
bmcgYSBjdXN0b20gZWxlbWVudCcpOworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250
ZW50V2luZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9p
bl93aW5kb3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29u
c3QgY29udGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50
RG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBgPHRhYmxlPjx0Zm9vdD48dHI+PHRkPjxjdXN0b20t
ZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+PC90ZD48L3RyPjwvdGZvb3Q+PC90YWJsZT5g
OworICAgIGNvbnN0IHRmb290ID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3Rmb290
Jyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBb
J2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCddKTsKKyAgICBhc3NlcnRfZXF1YWxzKHRmb290Lmlu
bmVySFRNTCwgJzx0cj48dGQ+PGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVudD48
L3RkPjwvdHI+Jyk7CisKKyAgICBjb25zdCB0YWJsZSA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCd0YWJsZScpOworICAgIGFzc2VydF9lcXVhbHModGFibGUudEZvb3QsIHRmb290KTsK
KyAgICB0YWJsZS5kZWxldGVURm9vdCgpOworICAgIGFzc2VydF9lcXVhbHModGFibGUudEZvb3Qs
IG51bGwpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMo
KSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAnZGVsZXRlVEZvb3QoKSBvbiBIVE1MVGFibGVFbGVt
ZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92aW5nIGEgY3Vz
dG9tIGVsZW1lbnQnKTsKKworCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2lu
ZG93KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5k
b3coY29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworCisgICAgY29uc3QgY29u
dGVudERvY3VtZW50ID0gY29udGVudFdpbmRvdy5kb2N1bWVudDsKKyAgICBjb250ZW50RG9jdW1l
bnQuYm9keS5pbm5lckhUTUwgPSBgPHRhYmxlPjx0cj48dGQ+PGN1c3RvbS1lbGVtZW50PmhlbGxv
PC9jdXN0b20tZWxlbWVudD48L3RkPjwvdHI+PC90YWJsZT5gOworICAgIGNvbnN0IHRyID0gY29u
dGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RyJyk7CisgICAgYXNzZXJ0X2FycmF5X2VxdWFs
cyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0cnVjdGVkJywgJ2Nvbm5lY3RlZCdd
KTsKKyAgICBhc3NlcnRfZXF1YWxzKHRyLmlubmVySFRNTCwgJzx0ZD48Y3VzdG9tLWVsZW1lbnQ+
aGVsbG88L2N1c3RvbS1lbGVtZW50PjwvdGQ+Jyk7CisKKyAgICBjb25zdCB0YWJsZSA9IGNvbnRl
bnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd0YWJsZScpOworICAgIGFzc2VydF9lcXVhbHModGFi
bGUucm93cy5sZW5ndGgsIDEpOworICAgIGFzc2VydF9lcXVhbHModGFibGUucm93c1swXSwgdHIp
OworICAgIHRhYmxlLmRlbGV0ZVJvdygwKTsKKyAgICBhc3NlcnRfZXF1YWxzKHRhYmxlLnJvd3Mu
bGVuZ3RoLCAwKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5
cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOworfSwgJ2RlbGV0ZVJvdygpIG9uIEhUTUxUYWJsZUVs
ZW1lbnQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBj
dXN0b20gZWxlbWVudCcpOworCis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVS
b3dFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRz
L3JlYWN0aW9ucy9IVE1MVGFibGVSb3dFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5k
YzYyMTE3OWQxODk3MTBlNTcyMDg2MjMzOGZjZGJlNjU0ZGZhZTVlCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJsZVJv
d0VsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitQQVNTIGRlbGV0ZUNlbGwo
KSBvbiBIVE1MVGFibGVSb3dFbGVtZW50IG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFj
ayB3aGVuIHJlbW92aW5nIGEgY3VzdG9tIGVsZW1lbnQgCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVSb3dFbGVtZW50Lmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRhYmxl
Um93RWxlbWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlmZGUwZDc2NWJkNDJiZjM2NmI0MTM2OTkxM2Jl
MTZkOWU5MjdhZDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1l
bGVtZW50cy9yZWFjdGlvbnMvSFRNTFRhYmxlUm93RWxlbWVudC5odG1sCkBAIC0wLDAgKzEsMzcg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5DdXN0b20gRWxlbWVu
dHM6IENFUmVhY3Rpb25zIG9uIEhUTUxUYWJsZVJvd0VsZW1lbnQgaW50ZXJmYWNlPC90aXRsZT4K
KzxtZXRhIG5hbWU9ImF1dGhvciIgdGl0bGU9IlJ5b3N1a2UgTml3YSIgaHJlZj0ibWFpbHRvOnJu
aXdhQHdlYmtpdC5vcmciPgorPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJkZWxldGVDZWxs
IG9mIEhUTUxUYWJsZVJvd0VsZW1lbnQgaW50ZXJmYWNlIG11c3QgaGF2ZSBDRVJlYWN0aW9ucyI+
Cis8bWV0YSBuYW1lPSJoZWxwIiBjb250ZW50PSJodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcv
I25vZGUiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZXNvdXJjZXMvY3VzdG9tLWVsZW1lbnRz
LWhlbHBlcnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9yZXNvdXJjZXMv
cmVhY3Rpb25zLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWRkaXRp
b25hbC1oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0ibG9n
Ij48L2Rpdj4KKzxzY3JpcHQ+CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRX
aW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dp
bmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBj
b250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1
bWVudC5ib2R5LmlubmVySFRNTCA9IGA8dGFibGU+PHRyPjx0ZD48Y3VzdG9tLWVsZW1lbnQ+aGVs
bG88L2N1c3RvbS1lbGVtZW50PjwvdGQ+PC90cj48L3RhYmxlPmA7CisgICAgY29uc3QgdGQgPSBj
b250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3RvcigndGQnKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1
YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVk
J10pOworICAgIGFzc2VydF9lcXVhbHModGQuaW5uZXJIVE1MLCAnPGN1c3RvbS1lbGVtZW50Pmhl
bGxvPC9jdXN0b20tZWxlbWVudD4nKTsKKworICAgIGNvbnN0IHRhYmxlID0gY29udGVudERvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoJ3RhYmxlJyk7CisgICAgY29uc3Qgcm93ID0gdGFibGUucm93c1sw
XTsKKyAgICBhc3NlcnRfZXF1YWxzKHJvdy5jZWxsc1swXSwgdGQpOworICAgIHJvdy5kZWxldGVD
ZWxsKDApOworICAgIGFzc2VydF9lcXVhbHMocm93LmNlbGxzLmxlbmd0aCwgMCk7CisgICAgYXNz
ZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2Rpc2Nvbm5lY3Rl
ZCddKTsKK30sICdkZWxldGVDZWxsKCkgb24gSFRNTFRhYmxlUm93RWxlbWVudCBtdXN0IGVucXVl
dWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7
CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJsZVNlY3Rpb25FbGVtZW50LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9I
VE1MVGFibGVTZWN0aW9uRWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWEwNGJjYTA0
MDlhYjk1YWYxMzMyMzMwNTVlNzIyNTA1YjNmODVkYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGFibGVTZWN0aW9uRWxl
bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKK1BBU1MgZGVsZXRlUm93KCkgb24g
SFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQgb24gdGhlYWQgbXVzdCBlbnF1ZXVlIGRpc2Nvbm5lY3Rl
ZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKK1BBU1MgZGVsZXRlUm93
KCkgb24gSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQgb24gdGZvb3QgbXVzdCBlbnF1ZXVlIGRpc2Nv
bm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCAKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJs
ZVNlY3Rpb25FbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9y
ZWFjdGlvbnMvSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMDk4NWRh
MTE1NmZjMjcyMDJiN2NjNjhlNDY2YTM5Zjk4MGEzNTU3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUYWJsZVNlY3Rpb25F
bGVtZW50Lmh0bWwKQEAgLTAsMCArMSw1MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPHRpdGxlPkN1c3RvbSBFbGVtZW50czogQ0VSZWFjdGlvbnMgb24gSFRNTFRhYmxlU2Vj
dGlvbkVsZW1lbnQgaW50ZXJmYWNlPC90aXRsZT4KKzxtZXRhIG5hbWU9ImF1dGhvciIgdGl0bGU9
IlJ5b3N1a2UgTml3YSIgaHJlZj0ibWFpbHRvOnJuaXdhQHdlYmtpdC5vcmciPgorPG1ldGEgbmFt
ZT0iYXNzZXJ0IiBjb250ZW50PSJkZWxldGVSb3cgb2YgSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQg
aW50ZXJmYWNlIG11c3QgaGF2ZSBDRVJlYWN0aW9ucyI+Cis8bWV0YSBuYW1lPSJoZWxwIiBjb250
ZW50PSJodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI25vZGUiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1l
bGVtZW50cy9yZXNvdXJjZXMvY3VzdG9tLWVsZW1lbnRzLWhlbHBlcnMuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Vz
dG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9yZXNvdXJjZXMvcmVhY3Rpb25zLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWRkaXRpb25hbC1oZWxwZXJzLmpzIj48L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisKK3Rl
c3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVt
ZW50ID0gZGVmaW5lX2N1c3RvbV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3Vz
dG9tLWVsZW1lbnQnLCBbXSk7CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50
V2luZG93LmRvY3VtZW50OworICAgIGNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGA8
dGFibGU+PHRoZWFkPjx0cj48dGQ+PGN1c3RvbS1lbGVtZW50PmhlbGxvPC9jdXN0b20tZWxlbWVu
dD48L3RkPjwvdHI+PC90aGVhZD48L3RhYmxlPmA7CisgICAgY29uc3QgdGhlYWQgPSBjb250ZW50
RG9jdW1lbnQucXVlcnlTZWxlY3RvcigndGhlYWQnKTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxz
KGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnY29uc3RydWN0ZWQnLCAnY29ubmVjdGVkJ10p
OworICAgIGFzc2VydF9lcXVhbHModGhlYWQuaW5uZXJIVE1MLCAnPHRyPjx0ZD48Y3VzdG9tLWVs
ZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50PjwvdGQ+PC90cj4nKTsKKworICAgIGNvbnN0IHRh
YmxlID0gY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RhYmxlJyk7CisgICAgYXNzZXJ0
X2VxdWFscyh0YWJsZS50SGVhZCwgdGhlYWQpOworICAgIHRhYmxlLnRIZWFkLmRlbGV0ZVJvdygw
KTsKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsn
ZGlzY29ubmVjdGVkJ10pOworfSwgJ2RlbGV0ZVJvdygpIG9uIEhUTUxUYWJsZVNlY3Rpb25FbGVt
ZW50IG9uIHRoZWFkIG11c3QgZW5xdWV1ZSBkaXNjb25uZWN0ZWRDYWxsYmFjayB3aGVuIHJlbW92
aW5nIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlvbiAoY29u
dGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2VsZW1lbnRf
aW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKworICAgIGNv
bnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAgY29udGVu
dERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gYDx0YWJsZT48dGZvb3Q+PHRyPjx0ZD48Y3VzdG9t
LWVsZW1lbnQ+aGVsbG88L2N1c3RvbS1lbGVtZW50PjwvdGQ+PC90cj48L3Rmb290PjwvdGFibGU+
YDsKKyAgICBjb25zdCB0Zm9vdCA9IGNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd0Zm9v
dCcpOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwg
Wydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyh0Zm9vdC5p
bm5lckhUTUwsICc8dHI+PHRkPjxjdXN0b20tZWxlbWVudD5oZWxsbzwvY3VzdG9tLWVsZW1lbnQ+
PC90ZD48L3RyPicpOworCisgICAgY29uc3QgdGFibGUgPSBjb250ZW50RG9jdW1lbnQucXVlcnlT
ZWxlY3RvcigndGFibGUnKTsKKyAgICBhc3NlcnRfZXF1YWxzKHRhYmxlLnRGb290LCB0Zm9vdCk7
CisgICAgdGFibGUudEZvb3QuZGVsZXRlUm93KDApOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMo
ZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydkaXNjb25uZWN0ZWQnXSk7Cit9LCAnZGVsZXRl
Um93KCkgb24gSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQgb24gdGZvb3QgbXVzdCBlbnF1ZXVlIGRp
c2Nvbm5lY3RlZENhbGxiYWNrIHdoZW4gcmVtb3ZpbmcgYSBjdXN0b20gZWxlbWVudCcpOworCis8
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGl0bGVFbGVtZW50LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3JlYWN0aW9ucy9IVE1MVGl0bGVFbGVt
ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNzZhYzNmMjVlYjRmMDk2YzgxN2UzODhjNmY5
YzJlM2JhYzcyZWFhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20t
ZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUaXRsZUVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMyBAQAorCitQQVNTIHRleHQgb24gSFRNTFRpdGxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlz
Y29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvSFRNTFRp
dGxlRWxlbWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rp
b25zL0hUTUxUaXRsZUVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hY2U4MzJhZTk1OTFhMTgyYjg5
ZGNmYWQ0Zjg2MDJlMGM5YTI0MTg2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL0hUTUxUaXRsZUVsZW1lbnQuaHRtbApAQCAtMCww
ICsxLDM2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+Q3VzdG9t
IEVsZW1lbnRzOiBDRVJlYWN0aW9ucyBvbiBIVE1MVGl0bGVFbGVtZW50IGludGVyZmFjZTwvdGl0
bGU+Cis8bWV0YSBuYW1lPSJhdXRob3IiIHRpdGxlPSJSeW9zdWtlIE5pd2EiIGhyZWY9Im1haWx0
bzpybml3YUB3ZWJraXQub3JnIj4KKzxtZXRhIG5hbWU9ImFzc2VydCIgY29udGVudD0idGV4dCBv
ZiBIVE1MVGl0bGVFbGVtZW50IGludGVyZmFjZSBtdXN0IGhhdmUgQ0VSZWFjdGlvbnMiPgorPG1l
dGEgbmFtZT0iaGVscCIgY29udGVudD0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNub2Rl
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxw
ZXJzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvcmVzb3VyY2VzL3JlYWN0
aW9ucy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FkZGl0aW9uYWwt
aGVscGVycy5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImxvZyI+PC9k
aXY+Cis8c2NyaXB0PgorCit0ZXN0X3dpdGhfd2luZG93KGZ1bmN0aW9uIChjb250ZW50V2luZG93
KSB7CisgICAgY29uc3QgZWxlbWVudCA9IGRlZmluZV9jdXN0b21fZWxlbWVudF9pbl93aW5kb3co
Y29udGVudFdpbmRvdywgJ2N1c3RvbS1lbGVtZW50JywgW10pOworICAgIGNvbnN0IGluc3RhbmNl
ID0gY29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KGVsZW1lbnQubmFtZSk7Cisg
ICAgYXNzZXJ0X2FycmF5X2VxdWFscyhlbGVtZW50LnRha2VMb2coKS50eXBlcygpLCBbJ2NvbnN0
cnVjdGVkJ10pOworCisgICAgY29udGVudFdpbmRvdy5kb2N1bWVudC50aXRsZSA9ICdoZWxsbyc7
CisgICAgdmFyIHRpdGxlRWxlbWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcigndGl0bGUnKTsKKyAgICB0aXRsZUVsZW1lbnQuYXBwZW5kQ2hpbGQoaW5zdGFuY2UpOwor
ICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25u
ZWN0ZWQnXSk7CisgICAgYXNzZXJ0X2VxdWFscyh0aXRsZUVsZW1lbnQuY2hpbGROb2Rlcy5sZW5n
dGgsIDIpOworCisgICAgdGl0bGVFbGVtZW50LnRleHQgPSAnd29ybGQnOworICAgIGFzc2VydF9l
cXVhbHModGl0bGVFbGVtZW50LmNoaWxkTm9kZXMubGVuZ3RoLCAxKTsKKyAgICBhc3NlcnRfYXJy
YXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5cGVzKCksIFsnZGlzY29ubmVjdGVkJ10pOwor
fSwgJ3RleHQgb24gSFRNTFRpdGxlRWxlbWVudCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2Fs
bGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50Jyk7CisKKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVu
dHMvcmVhY3Rpb25zL1NoYWRvd1Jvb3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9j
dXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL1NoYWRvd1Jvb3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjIzY2MzYmQwOTMwZjYzMmI2NTU2MWM1MzEyMzU3NTNmYmQxNmY4NTAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvU2hhZG93
Um9vdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK1BBU1MgaW5uZXJIVE1MIG9uIFNo
YWRvd1Jvb3QgbXVzdCB1cGdyYWRlIGEgY3VzdG9tIGVsZW1lbnQgCitQQVNTIGlubmVySFRNTCBv
biBTaGFkb3dSb290IG11c3QgZW5xdWV1ZSBjb25uZWN0ZWRDYWxsYmFjayBvbiBuZXdseSB1cGdy
YWRlZCBjdXN0b20gZWxlbWVudHMgd2hlbiB0aGUgc2hhZG93IHJvb3QgaXMgY29ubmVjdGVkIAor
UEFTUyBpbm5lckhUTUwgb24gU2hhZG93Um9vdCBtdXN0IGVucXVldWUgZGlzY29ubmVjdGVkQ2Fs
bGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVtZW50IAorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlvbnMvU2hhZG93Um9vdC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rpb25zL1NoYWRvd1Jvb3QuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi40YjNhMzkyNGNmYWYyNjUwOGY2ODg2YmFiMGEwNWU4YjcwMTk5NzFkCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVhY3Rp
b25zL1NoYWRvd1Jvb3QuaHRtbApAQCAtMCwwICsxLDU5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8dGl0bGU+Q3VzdG9tIEVsZW1lbnRzOiBDRVJlYWN0aW9ucyBvbiBTaGFk
b3dSb290IGludGVyZmFjZTwvdGl0bGU+Cis8bWV0YSBuYW1lPSJhdXRob3IiIHRpdGxlPSJSeW9z
dWtlIE5pd2EiIGhyZWY9Im1haWx0bzpybml3YUB3ZWJraXQub3JnIj4KKzxtZXRhIG5hbWU9ImFz
c2VydCIgY29udGVudD0iaW5uZXJIVE1MIG9mIFNoYWRvd1Jvb3QgaW50ZXJmYWNlIG11c3QgaGF2
ZSBDRVJlYWN0aW9ucyI+Cis8bWV0YSBuYW1lPSJoZWxwIiBjb250ZW50PSJodHRwczovL2RvbS5z
cGVjLndoYXR3Zy5vcmcvI25vZGUiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2N1c3RvbS1lbGVtZW50cy9yZXNvdXJjZXMv
Y3VzdG9tLWVsZW1lbnRzLWhlbHBlcnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3VzdG9tLWVsZW1lbnRzL3JlYWN0
aW9ucy9yZXNvdXJjZXMvcmVhY3Rpb25zLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvYWRkaXRpb25hbC1oZWxwZXJzLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisKK3Rlc3Rfd2l0aF93aW5kb3coZnVu
Y3Rpb24gKGNvbnRlbnRXaW5kb3cpIHsKKyAgICBjb25zdCBlbGVtZW50ID0gZGVmaW5lX2N1c3Rv
bV9lbGVtZW50X2luX3dpbmRvdyhjb250ZW50V2luZG93LCAnY3VzdG9tLWVsZW1lbnQnLCBbXSk7
CisKKyAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRvY3VtZW50Owor
ICAgIGNvbnN0IGhvc3QgPSBjb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cisg
ICAgY29uc3Qgc2hhZG93Um9vdCA9IGhvc3QuYXR0YWNoU2hhZG93KHttb2RlOiAnY2xvc2VkJ30p
OworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gJzxjdXN0b20tZWxlbWVudD48L2N1c3RvbS1l
bGVtZW50Pic7CisKKyAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKGVsZW1lbnQudGFrZUxvZygpLnR5
cGVzKCksIFsnY29uc3RydWN0ZWQnXSk7Cit9LCAnaW5uZXJIVE1MIG9uIFNoYWRvd1Jvb3QgbXVz
dCB1cGdyYWRlIGEgY3VzdG9tIGVsZW1lbnQnKTsKKwordGVzdF93aXRoX3dpbmRvdyhmdW5jdGlv
biAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVfY3VzdG9tX2Vs
ZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcsIFtdKTsKKwor
ICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7CisgICAg
Y29uc3QgaG9zdCA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICBj
b250ZW50RG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChob3N0KTsKKyAgICBjb25zdCBzaGFkb3dS
b290ID0gaG9zdC5hdHRhY2hTaGFkb3coe21vZGU6ICdjbG9zZWQnfSk7CisgICAgc2hhZG93Um9v
dC5pbm5lckhUTUwgPSAnPGN1c3RvbS1lbGVtZW50PjwvY3VzdG9tLWVsZW1lbnQ+JzsKKworICAg
IGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwgWydjb25zdHJ1
Y3RlZCcsICdjb25uZWN0ZWQnXSk7Cit9LCAnaW5uZXJIVE1MIG9uIFNoYWRvd1Jvb3QgbXVzdCBl
bnF1ZXVlIGNvbm5lY3RlZENhbGxiYWNrIG9uIG5ld2x5IHVwZ3JhZGVkIGN1c3RvbSBlbGVtZW50
cyB3aGVuIHRoZSBzaGFkb3cgcm9vdCBpcyBjb25uZWN0ZWQnKTsKKwordGVzdF93aXRoX3dpbmRv
dyhmdW5jdGlvbiAoY29udGVudFdpbmRvdykgeworICAgIGNvbnN0IGVsZW1lbnQgPSBkZWZpbmVf
Y3VzdG9tX2VsZW1lbnRfaW5fd2luZG93KGNvbnRlbnRXaW5kb3csICdjdXN0b20tZWxlbWVudCcs
IFtdKTsKKworICAgIGNvbnN0IGNvbnRlbnREb2N1bWVudCA9IGNvbnRlbnRXaW5kb3cuZG9jdW1l
bnQ7CisgICAgY29uc3QgaG9zdCA9IGNvbnRlbnREb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYn
KTsKKyAgICBjb250ZW50RG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChob3N0KTsKKworICAgIGNv
bnN0IHNoYWRvd1Jvb3QgPSBob3N0LmF0dGFjaFNoYWRvdyh7bW9kZTogJ2Nsb3NlZCd9KTsKKyAg
ICBzaGFkb3dSb290LmlubmVySFRNTCA9ICc8Y3VzdG9tLWVsZW1lbnQ+PC9jdXN0b20tZWxlbWVu
dD4nOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMoKSwg
Wydjb25zdHJ1Y3RlZCcsICdjb25uZWN0ZWQnXSk7CisKKyAgICBzaGFkb3dSb290LmlubmVySFRN
TCA9ICcnOworICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZWxlbWVudC50YWtlTG9nKCkudHlwZXMo
KSwgWydkaXNjb25uZWN0ZWQnXSk7CisKK30sICdpbm5lckhUTUwgb24gU2hhZG93Um9vdCBtdXN0
IGVucXVldWUgZGlzY29ubmVjdGVkQ2FsbGJhY2sgd2hlbiByZW1vdmluZyBhIGN1c3RvbSBlbGVt
ZW50Jyk7CisKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvcmVzb3VyY2VzL2FkZGl0aW9uYWwtaGVscGVycy5q
cyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3Jlc291cmNlcy9hZGRpdGlvbmFs
LWhlbHBlcnMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2JiOTE4ZWM3NTU1OGZhZDQ0ZTM1YzhjZmViYWY1Njk0
ZWNmMWM5OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1l
bnRzL3Jlc291cmNlcy9hZGRpdGlvbmFsLWhlbHBlcnMuanMKQEAgLTAsMCArMSw0OCBAQAorZnVu
Y3Rpb24gY3JlYXRlX2NvbnN0cnVjdG9yX2xvZyhlbGVtZW50KSB7CisgICAgcmV0dXJuIHt0eXBl
OiAnY29uc3RydWN0ZWQnLCBlbGVtZW50OiBlbGVtZW50fTsKK30KKworZnVuY3Rpb24gYXNzZXJ0
X2NvbnN0cnVjdG9yX2xvZ19lbnRyeShsb2csIGVsZW1lbnQpIHsKKyAgICBhc3NlcnRfZXF1YWxz
KGxvZy50eXBlLCAnY29uc3RydWN0ZWQnKTsKKyAgICBhc3NlcnRfZXF1YWxzKGxvZy5lbGVtZW50
LCBlbGVtZW50KTsKK30KKworZnVuY3Rpb24gY3JlYXRlX2Nvbm5lY3RlZF9jYWxsYmFja19sb2co
ZWxlbWVudCkgeworICAgIHJldHVybiB7dHlwZTogJ2Nvbm5lY3RlZCcsIGVsZW1lbnQ6IGVsZW1l
bnR9OworfQorCitmdW5jdGlvbiBhc3NlcnRfY29ubmVjdGVkX2xvZ19lbnRyeShsb2csIGVsZW1l
bnQpIHsKKyAgICBhc3NlcnRfZXF1YWxzKGxvZy50eXBlLCAnY29ubmVjdGVkJyk7CisgICAgYXNz
ZXJ0X2VxdWFscyhsb2cuZWxlbWVudCwgZWxlbWVudCk7Cit9CisKK2Z1bmN0aW9uIGRlZmluZV9j
dXN0b21fZWxlbWVudF9pbl93aW5kb3cod2luZG93LCBuYW1lLCBvYnNlcnZlZEF0dHJpYnV0ZXMp
IHsKKyAgICBsZXQgbG9nID0gW107CisKKyAgICBjbGFzcyBDdXN0b21FbGVtZW50IGV4dGVuZHMg
d2luZG93LkhUTUxFbGVtZW50IHsKKyAgICAgICAgY29uc3RydWN0b3IoKSB7CisgICAgICAgICAg
ICBzdXBlcigpOworICAgICAgICAgICAgbG9nLnB1c2goe3R5cGU6ICdjb25zdHJ1Y3RlZCcsIGVs
ZW1lbnQ6IHRoaXN9KTsKKyAgICAgICAgfQorICAgICAgICBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJh
Y2soLi4uYXJncykgeworICAgICAgICAgICAgbG9nLnB1c2goY3JlYXRlX2F0dHJpYnV0ZV9jaGFu
Z2VkX2NhbGxiYWNrX2xvZyh0aGlzLCAuLi5hcmdzKSk7CisgICAgICAgIH0KKyAgICAgICAgY29u
bmVjdGVkQ2FsbGJhY2soKSB7IGxvZy5wdXNoKHt0eXBlOiAnY29ubmVjdGVkJywgZWxlbWVudDog
dGhpc30pOyB9CisgICAgICAgIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCkgeyBsb2cucHVzaCh7dHlw
ZTogJ2Rpc2Nvbm5lY3RlZCcsIGVsZW1lbnQ6IHRoaXN9KTsgfQorICAgICAgICBhZG9wdGVkQ2Fs
bGJhY2sob2xkRG9jdW1lbnQsIG5ld0RvY3VtZW50KSB7IGxvZy5wdXNoKHt0eXBlOiAnYWRvcHRl
ZCcsIGVsZW1lbnQ6IHRoaXMsIG9sZERvY3VtZW50OiBvbGREb2N1bWVudCwgbmV3RG9jdW1lbnQ6
IG5ld0RvY3VtZW50fSk7IH0KKyAgICB9CisgICAgQ3VzdG9tRWxlbWVudC5vYnNlcnZlZEF0dHJp
YnV0ZXMgPSBvYnNlcnZlZEF0dHJpYnV0ZXM7CisKKyAgICB3aW5kb3cuY3VzdG9tRWxlbWVudHMu
ZGVmaW5lKG5hbWUsIEN1c3RvbUVsZW1lbnQpOworCisgICAgcmV0dXJuIHsKKyAgICAgICAgbmFt
ZTogbmFtZSwKKyAgICAgICAgY2xhc3M6IEN1c3RvbUVsZW1lbnQsCisgICAgICAgIHRha2VMb2c6
IGZ1bmN0aW9uICgpIHsKKyAgICAgICAgICAgIGxldCBjdXJyZW50TG9nID0gbG9nOyBsb2cgPSBb
XTsKKyAgICAgICAgICAgIGN1cnJlbnRMb2cudHlwZXMgPSAoKSA9PiBjdXJyZW50TG9nLm1hcCgo
ZW50cnkpID0+IGVudHJ5LnR5cGUpOworICAgICAgICAgICAgY3VycmVudExvZy5sYXN0ID0gKCkg
PT4gY3VycmVudExvZ1tjdXJyZW50TG9nLmxlbmd0aCAtIDFdOworICAgICAgICAgICAgcmV0dXJu
IGN1cnJlbnRMb2c7CisgICAgICAgIH0KKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jdXN0b20tZWxlbWVudHMvdXBncmFkaW5nLWVucXVldWUtcmVhY3Rpb25zLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3VwZ3JhZGluZy1lbnF1
ZXVlLXJlYWN0aW9ucy1leHBlY3RlZC50eHQKaW5kZXggNzhlMDNlNDlkOGNhMzBmNGNmNTk1Nzk0
YmUwMzczZDFjMWZkOTgyNi4uYTBkZGRlYTRmMjVhMjU2Nzg0YTg0NGNhMGE1NjcyMzJjZTk0ZmZk
YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvdXBncmFkaW5n
LWVucXVldWUtcmVhY3Rpb25zLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2N1
c3RvbS1lbGVtZW50cy91cGdyYWRpbmctZW5xdWV1ZS1yZWFjdGlvbnMtZXhwZWN0ZWQudHh0CkBA
IC0xLDQgKzEsNCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1NzogRXhjZXB0aW9uIHRocm93
biBhcyBhIHBhcnQgb2YgdGVzdAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE0MDogRXhjZXB0aW9u
IHRocm93biBhcyBhIHBhcnQgb2YgdGVzdAogCiBQQVNTIFVwZ3JhZGluZyBhIGN1c3RvbSBlbGVt
ZW50IG11c3QgZW5xdWV1ZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sgb24gZWFjaCBhdHRyaWJ1
dGUgCiBQQVNTIFVwZ3JhZGluZyBhIGN1c3RvbSBlbGVtZW50IG5vdCBtdXN0IGVucXVldWUgYXR0
cmlidXRlQ2hhbmdlZENhbGxiYWNrIG9uIHVub2JzZXJ2ZWQgYXR0cmlidXRlcyAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvY3VzdG9tLWVsZW1lbnRzL3VwZ3JhZGluZy1lbnF1ZXVlLXJl
YWN0aW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvdXBncmFkaW5n
LWVucXVldWUtcmVhY3Rpb25zLmh0bWwKaW5kZXggNDVlNDMxNmRmZDg5YTM5NDY2MGZmMjZjMGZh
M2FlZjM5OTM2MjNlMC4uY2M1YzZiMmE2YThkZDMzZDg1NzA1ZjRkZWI5NDA2ZTkzMWUxNTEzYiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVudHMvdXBncmFkaW5nLWVu
cXVldWUtcmVhY3Rpb25zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jdXN0b20tZWxlbWVu
dHMvdXBncmFkaW5nLWVucXVldWUtcmVhY3Rpb25zLmh0bWwKQEAgLTgsMzAgKzgsMTMgQEAKIDxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iLi4vLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jdXN0
b20tZWxlbWVudHMvcmVzb3VyY2VzL2N1c3RvbS1lbGVtZW50cy1oZWxwZXJzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYWRkaXRpb25hbC1oZWxwZXJzLmpzIj48L3Njcmlw
dD4KIDwvaGVhZD4KIDxib2R5PgogPGRpdiBpZD0ibG9nIj48L2Rpdj4KIDxzY3JpcHQ+CiBzZXR1
cCh7YWxsb3dfdW5jYXVnaHRfZXhjZXB0aW9uOnRydWV9KTsKIAotZnVuY3Rpb24gY3JlYXRlX2Nv
bnN0cnVjdG9yX2xvZyhlbGVtZW50KSB7Ci0gICAgcmV0dXJuIHt0eXBlOiAnY29uc3RydWN0ZWQn
LCBlbGVtZW50OiBlbGVtZW50fTsKLX0KLQotZnVuY3Rpb24gYXNzZXJ0X2NvbnN0cnVjdG9yX2xv
Z19lbnRyeShsb2csIGVsZW1lbnQpIHsKLSAgICBhc3NlcnRfZXF1YWxzKGxvZy50eXBlLCAnY29u
c3RydWN0ZWQnKTsKLSAgICBhc3NlcnRfZXF1YWxzKGxvZy5lbGVtZW50LCBlbGVtZW50KTsKLX0K
LQotZnVuY3Rpb24gY3JlYXRlX2Nvbm5lY3RlZF9jYWxsYmFja19sb2coZWxlbWVudCkgewotICAg
IHJldHVybiB7dHlwZTogJ2Nvbm5lY3RlZCcsIGVsZW1lbnQ6IGVsZW1lbnR9OwotfQotCi1mdW5j
dGlvbiBhc3NlcnRfY29ubmVjdGVkX2xvZ19lbnRyeShsb2csIGVsZW1lbnQpIHsKLSAgICBhc3Nl
cnRfZXF1YWxzKGxvZy50eXBlLCAnY29ubmVjdGVkJyk7Ci0gICAgYXNzZXJ0X2VxdWFscyhsb2cu
ZWxlbWVudCwgZWxlbWVudCk7Ci19Ci0KIHRlc3Rfd2l0aF93aW5kb3coZnVuY3Rpb24gKGNvbnRl
bnRXaW5kb3cpIHsKICAgICBjb25zdCBjb250ZW50RG9jdW1lbnQgPSBjb250ZW50V2luZG93LmRv
Y3VtZW50OwogICAgIGNvbnRlbnREb2N1bWVudC53cml0ZSgnPHRlc3QtZWxlbWVudCBpZD0ic29t
ZSIgdGl0bGU9IlRoaXMgaXMgYSB0ZXN0Ij4nKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rl
c3RFeHBlY3RhdGlvbnMKaW5kZXggZTU2YzNkZWNlYTc2ZmYwOGNjNjIyMzAzMjY5ZWYxOTVlODBl
YzhlMS4uZmVlZTg2NjY3M2Q2YzE5MTA3NDQzMjFjYjhiZTk4MDk3M2U4YzIyMCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE2MzMsNiArMTYzMyw3IEBA
IHdlYmtpdC5vcmcvYi84ODA4MCBodHRwL3Rlc3RzL3BvaW50ZXItbG9jayBbIFNraXAgXQogCiAj
IFJlcXVpcmVzIElORElFX1VJIHN1cHBvcnQKIHdlYmtpdC5vcmcvYi8xMTE0NDYgaW5kaWV1aSBb
IFNraXAgXQord2Via2l0Lm9yZy9iLzExMTQ0NiBmYXN0L2N1c3RvbS1lbGVtZW50cy9yZWFjdGlv
bnMtZm9yLWluZGlldWkuaHRtbCBbIFNraXAgXQogCiAjIFJlcXVpcmVzIHN1cHBvcnQgZm9yIFdl
YiBub3RpZmljYXRpb25zCiB3ZWJraXQub3JnL2IvNzM1NDQgZmFzdC9ub3RpZmljYXRpb25zIFsg
U2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0
aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGM2
NmM5MDU5MGQ5NDYzZmFiNzhkNGQzNzg5OWU3NjM3MzZkMjcxM2EuLjYwZmY0ZTcyMzQ4OGIyYTEw
ZDBkYjc5MTk2MTE1ZWM0YmJiYWNlMDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0
RXhwZWN0YXRpb25zCkBAIC0xNzYsNiArMTc2LDcgQEAgaHR0cC90ZXN0cy9ub3RpZmljYXRpb25z
L2xlZ2FjeS9ub3RpZmljYXRpb24tcmVxdWVzdC1wZXJtaXNzaW9uLXRoZW4tbmF2aWdhdGUuaHQK
IAogIyBEYXRhbGlzdCBpcyBub3QgeWV0IGVuYWJsZWQuCiB3ZWJraXQub3JnL2IvOTg5MzQgZmFz
dC9mb3Jtcy9kYXRhbGlzdCBbIFNraXAgXQord2Via2l0Lm9yZy9iLzk4OTM0IGZhc3QvY3VzdG9t
LWVsZW1lbnRzL3JlYWN0aW9ucy1mb3ItaW5kaWV1aS5odG1sIFsgU2tpcCBdCiAKICMgRU5BQkxF
X0lOUFVUX1RZUEVfKiBhcmUgbm90IGVuYWJsZWQuCiB3ZWJraXQub3JnL2IvOTg5MzYgZmFzdC9m
b3Jtcy9kYXRlIFsgU2tpcCBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>