<?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>218570</bug_id>
          
          <creation_ts>2020-11-04 09:19:21 -0800</creation_ts>
          <short_desc>Resync web-platform-tests/dom tests from upstream</short_desc>
          <delta_ts>2020-11-04 15:49:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>215461</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>clopez</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1704461</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-04 09:19:21 -0800</bug_when>
    <thetext>Resync web-platform-tests/dom tests from upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704463</commentid>
    <comment_count>1</comment_count>
      <attachid>413171</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-04 09:21:50 -0800</bug_when>
    <thetext>Created attachment 413171
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704499</commentid>
    <comment_count>2</comment_count>
      <attachid>413171</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-11-04 10:49:13 -0800</bug_when>
    <thetext>Comment on attachment 413171
Patch

rs=me once all the bots pass.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704593</commentid>
    <comment_count>3</comment_count>
      <attachid>413204</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-04 13:52:42 -0800</bug_when>
    <thetext>Created attachment 413204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704638</commentid>
    <comment_count>4</comment_count>
      <attachid>413204</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-04 15:48:12 -0800</bug_when>
    <thetext>Comment on attachment 413204
Patch

Clearing flags on attachment: 413204

Committed r269400: &lt;https://trac.webkit.org/changeset/269400&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704639</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-11-04 15:48:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704641</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-04 15:49:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/71055067&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413171</attachid>
            <date>2020-11-04 09:21:50 -0800</date>
            <delta_ts>2020-11-04 13:52:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218570-20201104092149.patch</filename>
            <type>text/plain</type>
            <size>89917</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MzYzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCAwOGMwNDZhODQ3NzVmODZjYzA2ZmZlMjczZGU1MmU2MTlkOTRkM2JmLi40NDUwMDM0NDZh
ZDA1ZDJkZDg0YzczYmFkMDdlMDY0ZTg2YTUxZDBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0xMS0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIFJlc3luYyB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tIHRlc3Rz
IGZyb20gdXBzdHJlYW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODU3MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlc3luYyB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tIHRlc3RzIGZyb20gdXBzdHJlYW0g
N2EyODdjOWUyNmZiYzEyYzkxLgorCisgICAgICAgICogcmVzb3VyY2VzL3Jlc291cmNlLWZpbGVz
Lmpzb246CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS8qOiBVcGRhdGVkCisKIDIw
MjAtMTEtMDQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1
ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1wYW5uZXItY29ubmVjdGlvbnMuaHRtbCBmYWlscyBv
biBzb21lIHBsYXRmb3JtcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jl
c291cmNlcy9yZXNvdXJjZS1maWxlcy5qc29uIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jl
c291cmNlcy9yZXNvdXJjZS1maWxlcy5qc29uCmluZGV4IDQwMDRiZDg4YWZlZGE0YzRmNTE1ZGM3
OTRhYmQ2YjQ2ODUzYmU1YjUuLmUwZTJmYTM2YzI4NzdiYTE4MzU1NmNlNjVlOGUwOTA2MTY5Zjcy
NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNvdXJjZXMvcmVzb3Vy
Y2UtZmlsZXMuanNvbgorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvcmVzb3VyY2VzL3Jl
c291cmNlLWZpbGVzLmpzb24KQEAgLTEyNjUsNyArMTI2NSwxMCBAQAogICAgICAgICAid2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnRMaXN0ZW5lci1pbmN1bWJlbnQtZ2xvYmFsLXN1
YmZyYW1lLTIuc3ViLmh0bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVu
dHMvRXZlbnRMaXN0ZW5lci1pbmN1bWJlbnQtZ2xvYmFsLXN1YnN1YmZyYW1lLnN1Yi5odG1sIiwK
ICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3JlcGxhY2UtZXZlbnQtbGlz
dGVuZXItbnVsbC1icm93c2luZy1jb250ZXh0LWNyYXNoLmh0bWwiLAorICAgICAgICAid2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVEb2N1bWVudC13
aXRoLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1sIiwKKyAgICAgICAgIndlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50
LXdpdGgtbnVsbC1icm93c2luZy1jb250ZXh0LWNyYXNoLmh0bWwiLAogICAgICAgICAid2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LWdldEVsZW1lbnRzQnlUYWdOYW1lLWNoYW5n
ZS1kb2N1bWVudC1IVE1MTmVzcy1pZnJhbWUueG1sIiwKKyAgICAgICAgIndlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vbm9kZXMvTm9kZS1jbG9uZU5vZGUtb24taW5hY3RpdmUtZG9jdW1lbnQtY3Jhc2gu
aHRtbCIsCiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL05vZGUtaXNFcXVh
bE5vZGUtaWZyYW1lMS54bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9Ob2RlLWlzRXF1YWxOb2RlLWlmcmFtZTIueG1sIiwKICAgICAgICAgIndlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vbm9kZXMvTm9kZS1wYXJlbnROb2RlLWlmcmFtZS5odG1sIiwKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9B
ZGRFdmVudExpc3RlbmVyT3B0aW9ucy1vbmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9BZGRFdmVudExpc3RlbmVy
T3B0aW9ucy1vbmNlLWV4cGVjdGVkLnR4dAppbmRleCBhYTgxMjc0YjQ0ZWRhYmJmMjAzYjNhYTAz
NjliOTViZTYyYmUyMWM1Li43MjRjNWQ3YTRhYmJmZDhlMWQ5ZTFmZDUwZjUzZGM4MjFjNTU2MTA0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9ldmVudHMvQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMtb25jZS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L0FkZEV2ZW50TGlzdGVuZXJPcHRpb25zLW9uY2UtZXhwZWN0ZWQudHh0CkBAIC0yLDQgKzIsNSBA
QAogUEFTUyBPbmNlIGxpc3RlbmVyIHNob3VsZCBiZSBpbnZva2VkIG9ubHkgb25jZQogUEFTUyBP
bmNlIGxpc3RlbmVyIHNob3VsZCBiZSBpbnZva2VkIG9ubHkgb25jZSBldmVuIGlmIHRoZSBldmVu
dCBpcyBuZXN0ZWQKIFBBU1MgT25jZSBsaXN0ZW5lciBzaG91bGQgYmUgYWRkZWQgLyByZW1vdmVk
IGxpa2Ugbm9ybWFsIGxpc3RlbmVycworUEFTUyBNdWx0aXBsZSBvbmNlIGxpc3RlbmVycyBzaG91
bGQgYmUgaW52b2tlZCBldmVuIGlmIHRoZSBzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24gaXMgc2V0
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL2V2ZW50cy9BZGRFdmVudExpc3RlbmVyT3B0aW9ucy1vbmNlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvQWRkRXZlbnRM
aXN0ZW5lck9wdGlvbnMtb25jZS5odG1sCmluZGV4IGFlNzUwNzAyYzc5ZDBlMmY0OTM1MzdhZGUx
Yzc4NTU4OTg3ZjUzNmUuLjM2MWM4MzhiNzM2MjU4NjQyYzBiZjVmMjZmMjQzNTQ0ZWRmMjIyNGIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL2V2ZW50cy9BZGRFdmVudExpc3RlbmVyT3B0aW9ucy1vbmNlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0FkZEV2ZW50
TGlzdGVuZXJPcHRpb25zLW9uY2UuaHRtbApAQCAtNzgsNCArNzgsMjEgQEAgdGVzdChmdW5jdGlv
bigpIHsKICAgYXNzZXJ0X2VxdWFscyhpbnZva2VkX2NvdW50LCAwLCAiVGhlIGhhbmRsZXIgc2hv
dWxkIGhhdmUgYmVlbiByZW1vdmVkIik7CiB9LCAiT25jZSBsaXN0ZW5lciBzaG91bGQgYmUgYWRk
ZWQgLyByZW1vdmVkIGxpa2Ugbm9ybWFsIGxpc3RlbmVycyIpOwogCit0ZXN0KGZ1bmN0aW9uKCkg
eworICB2YXIgaW52b2tlZF9jb3VudCA9IDA7CisKKyAgZm9yIChsZXQgbiA9IDQ7IG4gPiAwOyBu
LS0pIHsKKyAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0ZXN0JywgKGUpID0+IHsKKyAg
ICAgIGludm9rZWRfY291bnQrKzsKKyAgICAgIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7
CisgICAgfSwge29uY2U6IHRydWV9KTsKKyAgfQorCisgIGZvciAobGV0IG4gPSA0OyBuID4gMDsg
bi0tKSB7CisgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3Rlc3QnKSk7Cisg
IH0KKworICBhc3NlcnRfZXF1YWxzKGludm9rZWRfY291bnQsIDQsICJUaGUgbGlzdGVuZXJzIHNo
b3VsZCBiZSBpbnZva2VkIik7Cit9LCAiTXVsdGlwbGUgb25jZSBsaXN0ZW5lcnMgc2hvdWxkIGJl
IGludm9rZWQgZXZlbiBpZiB0aGUgc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uIGlzIHNldCIpOwor
CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMv
RXZlbnQtZGlzcGF0Y2gtY2xpY2stZXhwZWN0ZWQudHh0CmluZGV4IDhlODY4ZTZhZTI3YTI5MDFj
MzhlM2FkM2U3MmVhZmQ5YjRjZDA5YWUuLmNmYTViOTA0MzQ4NTgyODg4NmEyOWQ3ODFjNTlkMWVh
N2UzZWU4YzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L0V2ZW50LWRpc3BhdGNoLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDYgQEAKIAorSGFy
bmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKIFBBU1MgYmFzaWMgd2l0aCBj
bGljaygpCiBQQVNTIGJhc2ljIHdpdGggZGlzcGF0Y2hFdmVudCgpCiBQQVNTIGJhc2ljIHdpdGgg
d3JvbmcgZXZlbnQgY2xhc3MKQEAgLTE0LDUgKzE2LDE2IEBAIFBBU1MgZGlzY29ubmVjdGVkIGNo
ZWNrYm94IHNob3VsZCBiZSBjaGVja2VkCiBQQVNTIGRpc2Nvbm5lY3RlZCByYWRpbyBzaG91bGQg
YmUgY2hlY2tlZAogUEFTUyBkaXNjb25uZWN0ZWQgY2hlY2tib3ggc2hvdWxkIGJlIGNoZWNrZWQg
ZnJvbSBkaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCdjbGljaycpKQogUEFTUyBkaXNjb25u
ZWN0ZWQgcmFkaW8gc2hvdWxkIGJlIGNoZWNrZWQgZnJvbSBkaXNwYXRjaEV2ZW50KG5ldyBNb3Vz
ZUV2ZW50KCdjbGljaycpKQorUEFTUyBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQgYmUgY2hlY2tl
ZCBmcm9tIGRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpCitQQVNTIGRpc2Fi
bGVkIHJhZGlvIHNob3VsZCBiZSBjaGVja2VkIGZyb20gZGlzcGF0Y2hFdmVudChuZXcgTW91c2VF
dmVudCgiY2xpY2siKSkKK1RJTUVPVVQgZGlzYWJsZWQgY2hlY2tib3ggc2hvdWxkIGZpcmUgb25j
bGljayBUZXN0IHRpbWVkIG91dAorVElNRU9VVCBkaXNhYmxlZCByYWRpbyBzaG91bGQgZmlyZSBv
bmNsaWNrIFRlc3QgdGltZWQgb3V0CitUSU1FT1VUIGRpc2FibGVkIGNoZWNrYm94IHNob3VsZCBn
ZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3IgVGVzdCB0aW1lZCBvdXQKK1RJ
TUVPVVQgZGlzYWJsZWQgcmFkaW8gc2hvdWxkIGdldCBsZWdhY3ktY2FuY2VsZWQtYWN0aXZhdGlv
biBiZWhhdmlvciBUZXN0IHRpbWVkIG91dAorUEFTUyBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQg
Z2V0IGxlZ2FjeS1jYW5jZWxlZC1hY3RpdmF0aW9uIGJlaGF2aW9yIDIKK0ZBSUwgZGlzYWJsZWQg
cmFkaW8gc2hvdWxkIGdldCBsZWdhY3ktY2FuY2VsZWQtYWN0aXZhdGlvbiBiZWhhdmlvciAyIGFz
c2VydF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKIFBBU1MgZGlzY29ubmVjdGVkIGZv
cm0gc2hvdWxkIG5vdCBzdWJtaXQKK1BBU1MgZGlzYWJsZWQgc3VibWl0IGJ1dHRvbiBzaG91bGQg
bm90IGFjdGl2YXRlCitQQVNTIHN1Ym1pdCBidXR0b24gc2hvdWxkIG5vdCBhY3RpdmF0ZSBpZiB0
aGUgZXZlbnQgbGlzdGVuZXIgZGlzYWJsZXMgaXQKK1BBU1Mgc3VibWl0IGJ1dHRvbiB0aGF0IG1v
cnBoZWQgZnJvbSBjaGVja2JveCBzaG91bGQgbm90IGFjdGl2YXRlCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVu
dC1kaXNwYXRjaC1jbGljay5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLmh0bWwKaW5kZXggNzY5
MGY3NTNkOWNkMGI0N2YyYzJjMjUzNTI1NzZjYWVkOTcwY2QxOS4uYmJjNDA4ZGY4ODI1NjY2OGU3
ZjRjYWNjMDgzNzA2NWMzYzdkMWMxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
ZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLmh0bWwKQEAgLTIwOSw2ICsyMDksODYgQEAgYXN5
bmNfdGVzdCh0ID0+IHsKICAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgnY2xp
Y2snKSk7CiB9LCBgZGlzY29ubmVjdGVkIHJhZGlvIHNob3VsZCBiZSBjaGVja2VkIGZyb20gZGlz
cGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgnY2xpY2snKSlgKTsKIAordGVzdCgoKSA9PiB7Cisg
IGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5wdXQu
dHlwZSA9ICJjaGVja2JveCI7CisgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgaW5wdXQuZGlz
cGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSk7CisgIGFzc2VydF90cnVlKGlucHV0
LmNoZWNrZWQpOworfSwgYGRpc2FibGVkIGNoZWNrYm94IHNob3VsZCBiZSBjaGVja2VkIGZyb20g
ZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSlgKTsKKwordGVzdCgoKSA9PiB7
CisgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5w
dXQudHlwZSA9ICJyYWRpbyI7CisgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgaW5wdXQuZGlz
cGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSk7CisgIGFzc2VydF90cnVlKGlucHV0
LmNoZWNrZWQpOworfSwgYGRpc2FibGVkIHJhZGlvIHNob3VsZCBiZSBjaGVja2VkIGZyb20gZGlz
cGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSlgKTsKKworYXN5bmNfdGVzdCh0ID0+
IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOworICBp
bnB1dC50eXBlID0gImNoZWNrYm94IjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBpbnB1
dC5vbmNsaWNrID0gdC5zdGVwX2Z1bmNfZG9uZSgpOworICBpbnB1dC5kaXNwYXRjaEV2ZW50KG5l
dyBNb3VzZUV2ZW50KCJjbGljayIpKTsKK30sIGBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQgZmly
ZSBvbmNsaWNrYCk7CisKK2FzeW5jX3Rlc3QodCA9PiB7CisgIGNvbnN0IGlucHV0ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5wdXQudHlwZSA9ICJyYWRpbyI7CisgIGlu
cHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgaW5wdXQub25jbGljayA9IHQuc3RlcF9mdW5jX2RvbmUo
KTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSk7Cit9LCBg
ZGlzYWJsZWQgcmFkaW8gc2hvdWxkIGZpcmUgb25jbGlja2ApOworCithc3luY190ZXN0KHQgPT4g
eworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7CisgIGlu
cHV0LnR5cGUgPSAiY2hlY2tib3giOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGlucHV0
Lm9uY2xpY2sgPSB0LnN0ZXBfZnVuYyhldiA9PiB7CisgICAgYXNzZXJ0X3RydWUoaW5wdXQuY2hl
Y2tlZCk7CisgICAgZXYucHJldmVudERlZmF1bHQoKTsKKyAgICBxdWV1ZU1pY3JvdGFzayh0LnN0
ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgIGFzc2VydF9mYWxzZShpbnB1dC5jaGVja2VkKTsK
KyAgICB9KSk7CisgIH0pOworICBpbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJj
bGljayIsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7Cit9LCBgZGlzYWJsZWQgY2hlY2tib3ggc2hv
dWxkIGdldCBsZWdhY3ktY2FuY2VsZWQtYWN0aXZhdGlvbiBiZWhhdmlvcmApOworCithc3luY190
ZXN0KHQgPT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0
Iik7CisgIGlucHV0LnR5cGUgPSAicmFkaW8iOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7Cisg
IGlucHV0Lm9uY2xpY2sgPSB0LnN0ZXBfZnVuYyhldiA9PiB7CisgICAgYXNzZXJ0X3RydWUoaW5w
dXQuY2hlY2tlZCk7CisgICAgZXYucHJldmVudERlZmF1bHQoKTsKKyAgICBxdWV1ZU1pY3JvdGFz
ayh0LnN0ZXBfZnVuY19kb25lKCgpID0+IHsKKyAgICAgIGFzc2VydF9mYWxzZShpbnB1dC5jaGVj
a2VkKTsKKyAgICB9KSk7CisgIH0pOworICBpbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2
ZW50KCJjbGljayIsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7Cit9LCBgZGlzYWJsZWQgcmFkaW8g
c2hvdWxkIGdldCBsZWdhY3ktY2FuY2VsZWQtYWN0aXZhdGlvbiBiZWhhdmlvcmApOworCit0ZXN0
KHQgPT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7
CisgIGlucHV0LnR5cGUgPSAiY2hlY2tib3giOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7Cisg
IGNvbnN0IGV2ID0gbmV3IE1vdXNlRXZlbnQoImNsaWNrIiwgeyBjYW5jZWxhYmxlOiB0cnVlIH0p
OworICBldi5wcmV2ZW50RGVmYXVsdCgpOworICBpbnB1dC5kaXNwYXRjaEV2ZW50KGV2KTsKKyAg
YXNzZXJ0X2ZhbHNlKGlucHV0LmNoZWNrZWQpOworfSwgYGRpc2FibGVkIGNoZWNrYm94IHNob3Vs
ZCBnZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3IgMmApOworCit0ZXN0KHQg
PT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7Cisg
IGlucHV0LnR5cGUgPSAicmFkaW8iOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGNvbnN0
IGV2ID0gbmV3IE1vdXNlRXZlbnQoImNsaWNrIiwgeyBjYW5jZWxhYmxlOiB0cnVlIH0pOworICBl
di5wcmV2ZW50RGVmYXVsdCgpOworICBpbnB1dC5kaXNwYXRjaEV2ZW50KGV2KTsKKyAgYXNzZXJ0
X2ZhbHNlKGlucHV0LmNoZWNrZWQpOworfSwgYGRpc2FibGVkIHJhZGlvIHNob3VsZCBnZXQgbGVn
YWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3IgMmApOworCiBhc3luY190ZXN0KGZ1bmN0
aW9uKHQpIHsKICAgdmFyIGZvcm0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb3JtIikKICAg
dmFyIGRpZFN1Ym1pdCA9IGZhbHNlCkBAIC0yMjIsNCArMzAyLDUwIEBAIGFzeW5jX3Rlc3QoZnVu
Y3Rpb24odCkgewogICBhc3NlcnRfZmFsc2UoZGlkU3VibWl0KQogICB0LmRvbmUoKQogfSwgImRp
c2Nvbm5lY3RlZCBmb3JtIHNob3VsZCBub3Qgc3VibWl0IikKKworYXN5bmNfdGVzdCh0ID0+IHsK
KyAgY29uc3QgZm9ybSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImZvcm0iKTsKKyAgZm9ybS5v
bnN1Ym1pdCA9IHQuc3RlcF9mdW5jKGV2ID0+IHsKKyAgICBldi5wcmV2ZW50RGVmYXVsdCgpOwor
ICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBmb3JtIGlzIHVuZXhwZWN0ZWRseSBzdWJtaXR0ZWQu
Iik7CisgIH0pOworICBkdW1wLmFwcGVuZChmb3JtKTsKKyAgY29uc3QgaW5wdXQgPSBmb3JtLmFw
cGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IikpOworICBpbnB1dC50eXBl
ID0gInN1Ym1pdCIKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBpbnB1dC5kaXNwYXRjaEV2
ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7CisgIHQu
ZG9uZSgpOworfSwgImRpc2FibGVkIHN1Ym1pdCBidXR0b24gc2hvdWxkIG5vdCBhY3RpdmF0ZSIp
OworCithc3luY190ZXN0KHQgPT4geworICBjb25zdCBmb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZm9ybSIpOworICBmb3JtLm9uc3VibWl0ID0gdC5zdGVwX2Z1bmMoZXYgPT4geworICAg
IGV2LnByZXZlbnREZWZhdWx0KCk7CisgICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhlIGZvcm0gaXMg
dW5leHBlY3RlZGx5IHN1Ym1pdHRlZC4iKTsKKyAgfSk7CisgIGR1bXAuYXBwZW5kKGZvcm0pOwor
ICBjb25zdCBpbnB1dCA9IGZvcm0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
aW5wdXQiKSk7CisgIGlucHV0Lm9uY2xpY2sgPSB0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgaW5w
dXQuZGlzYWJsZWQgPSB0cnVlOworICB9KTsKKyAgaW5wdXQudHlwZSA9ICJzdWJtaXQiCisgIGlu
cHV0LmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIiwgeyBjYW5jZWxhYmxlOiB0
cnVlIH0pKTsKKyAgdC5kb25lKCk7Cit9LCAic3VibWl0IGJ1dHRvbiBzaG91bGQgbm90IGFjdGl2
YXRlIGlmIHRoZSBldmVudCBsaXN0ZW5lciBkaXNhYmxlcyBpdCIpOworCithc3luY190ZXN0KHQg
PT4geworICBjb25zdCBmb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9ybSIpOworICBm
b3JtLm9uc3VibWl0ID0gdC5zdGVwX2Z1bmMoZXYgPT4geworICAgIGV2LnByZXZlbnREZWZhdWx0
KCk7CisgICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhlIGZvcm0gaXMgdW5leHBlY3RlZGx5IHN1Ym1p
dHRlZC4iKTsKKyAgfSk7CisgIGR1bXAuYXBwZW5kKGZvcm0pOworICBjb25zdCBpbnB1dCA9IGZv
cm0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSk7CisgIGlucHV0
Lm9uY2xpY2sgPSB0LnN0ZXBfZnVuYygoKSA9PiB7CisgICAgaW5wdXQudHlwZSA9ICJzdWJtaXQi
CisgICAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICB9KTsKKyAgaW5wdXQuY2xpY2soKTsKKyAg
dC5kb25lKCk7Cit9LCAic3VibWl0IGJ1dHRvbiB0aGF0IG1vcnBoZWQgZnJvbSBjaGVja2JveCBz
aG91bGQgbm90IGFjdGl2YXRlIik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRj
aC1jbGljay50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLnRlbnRh
dGl2ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWI2YzU1MDc1ZDQ1NDUxYTliYWE2NjUxNDUy
YzdjZDFhYjMxZTUyMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorCitQQVNTIGRpc2FibGVkIGNoZWNr
Ym94IHNob3VsZCBub3QgYmUgY2hlY2tlZCBmcm9tIGxhYmVsIGNsaWNrCitQQVNTIGRpc2FibGVk
IHJhZGlvIHNob3VsZCBub3QgYmUgY2hlY2tlZCBmcm9tIGxhYmVsIGNsaWNrCitQQVNTIGRpc2Fi
bGVkIGNoZWNrYm94IHNob3VsZCBub3QgYmUgY2hlY2tlZCBmcm9tIGxhYmVsIGNsaWNrIGJ5IGRp
c3BhdGNoRXZlbnQKK1BBU1MgZGlzYWJsZWQgcmFkaW8gc2hvdWxkIG5vdCBiZSBjaGVja2VkIGZy
b20gbGFiZWwgY2xpY2sgYnkgZGlzcGF0Y2hFdmVudAorRkFJTCBjaGVja2JveCBtb3JwaGVkIGlu
dG8gYW5vdGhlciB0eXBlIHNob3VsZCBub3QgbXV0YXRlIGNoZWNrZWQgc3RhdGUgYXNzZXJ0X2Zh
bHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorRkFJTCByYWRpbyBtb3JwaGVkIGludG8gYW5v
dGhlciB0eXBlIHNob3VsZCBub3Qgc3RlYWwgdGhlIGV4aXN0aW5nIGNoZWNrZWQgc3RhdGUgYXNz
ZXJ0X2ZhbHNlOiBleHBlY3RlZCBmYWxzZSBnb3QgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlz
cGF0Y2gtY2xpY2sudGVudGF0aXZlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xpY2sudGVudGF0aXZl
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uY2ZkYWU1NWVmMmFiNDhkZjA4NDJjMDUwYjc4NDRiM2U1Mjk5NmRl
NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay50ZW50YXRpdmUuaHRtbApA
QCAtMCwwICsxLDc4IEBACis8IWRvY3R5cGUgaHRtbD4KKzx0aXRsZT5DbGlja3Mgb24gaW5wdXQg
ZWxlbWVudDwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+Cis8ZGl2IGlkPWR1bXAgc3R5bGU9ZGlzcGxheTpub25lPjwvZGl2PgorPHNjcmlw
dD4KK3ZhciBkdW1wID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImR1bXAiKQorCit0ZXN0KHQg
PT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7Cisg
IGlucHV0LnR5cGUgPSAiY2hlY2tib3giOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGNv
bnN0IGxhYmVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGFiZWwiKTsKKyAgbGFiZWwuYXBw
ZW5kKGlucHV0KTsKKyAgZHVtcC5hcHBlbmQobGFiZWwpOworICBsYWJlbC5jbGljaygpOworICBh
c3NlcnRfZmFsc2UoaW5wdXQuY2hlY2tlZCk7Cit9LCAiZGlzYWJsZWQgY2hlY2tib3ggc2hvdWxk
IG5vdCBiZSBjaGVja2VkIGZyb20gbGFiZWwgY2xpY2siKTsKKwordGVzdCh0ID0+IHsKKyAgY29u
c3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOworICBpbnB1dC50eXBl
ID0gInJhZGlvIjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBjb25zdCBsYWJlbCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImxhYmVsIik7CisgIGxhYmVsLmFwcGVuZChpbnB1dCk7Cisg
IGR1bXAuYXBwZW5kKGxhYmVsKTsKKyAgbGFiZWwuY2xpY2soKTsKKyAgYXNzZXJ0X2ZhbHNlKGlu
cHV0LmNoZWNrZWQpOworfSwgImRpc2FibGVkIHJhZGlvIHNob3VsZCBub3QgYmUgY2hlY2tlZCBm
cm9tIGxhYmVsIGNsaWNrIik7CisKK3Rlc3QodCA9PiB7CisgIGNvbnN0IGlucHV0ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5wdXQudHlwZSA9ICJjaGVja2JveCI7Cisg
IGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgY29uc3QgbGFiZWwgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJsYWJlbCIpOworICBsYWJlbC5hcHBlbmQoaW5wdXQpOworICBkdW1wLmFwcGVuZChs
YWJlbCk7CisgIGxhYmVsLmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpOwor
ICBhc3NlcnRfZmFsc2UoaW5wdXQuY2hlY2tlZCk7Cit9LCAiZGlzYWJsZWQgY2hlY2tib3ggc2hv
dWxkIG5vdCBiZSBjaGVja2VkIGZyb20gbGFiZWwgY2xpY2sgYnkgZGlzcGF0Y2hFdmVudCIpOwor
Cit0ZXN0KHQgPT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlu
cHV0Iik7CisgIGlucHV0LnR5cGUgPSAicmFkaW8iOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7
CisgIGNvbnN0IGxhYmVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGFiZWwiKTsKKyAgbGFi
ZWwuYXBwZW5kKGlucHV0KTsKKyAgZHVtcC5hcHBlbmQobGFiZWwpOworICBsYWJlbC5kaXNwYXRj
aEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIpKTsKKyAgYXNzZXJ0X2ZhbHNlKGlucHV0LmNo
ZWNrZWQpOworfSwgImRpc2FibGVkIHJhZGlvIHNob3VsZCBub3QgYmUgY2hlY2tlZCBmcm9tIGxh
YmVsIGNsaWNrIGJ5IGRpc3BhdGNoRXZlbnQiKTsKKwordGVzdCh0ID0+IHsKKyAgY29uc3QgY2hl
Y2tib3ggPSBkdW1wLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iikp
OworICBjaGVja2JveC50eXBlID0gImNoZWNrYm94IjsKKyAgY2hlY2tib3gub25jbGljayA9IGV2
ID0+IHsKKyAgICBjaGVja2JveC50eXBlID0gImRhdGUiOworICAgIGV2LnByZXZlbnREZWZhdWx0
KCk7CisgIH07CisgIGNoZWNrYm94LmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNr
IiwgeyBjYW5jZWxhYmxlOiB0cnVlIH0pKTsKKyAgYXNzZXJ0X2ZhbHNlKGNoZWNrYm94LmNoZWNr
ZWQpOworfSwgImNoZWNrYm94IG1vcnBoZWQgaW50byBhbm90aGVyIHR5cGUgc2hvdWxkIG5vdCBt
dXRhdGUgY2hlY2tlZCBzdGF0ZSIpOworCit0ZXN0KHQgPT4geworICBjb25zdCByYWRpbzEgPSBk
dW1wLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IikpOworICBjb25z
dCByYWRpbzIgPSBkdW1wLmFwcGVuZENoaWxkKHJhZGlvMS5jbG9uZU5vZGUoKSk7CisgIHJhZGlv
MS50eXBlID0gcmFkaW8yLnR5cGUgPSAicmFkaW8iOworICByYWRpbzEubmFtZSA9IHJhZGlvMi5u
YW1lID0gImZvbyI7CisgIHJhZGlvMi5jaGVja2VkID0gdHJ1ZTsKKyAgcmFkaW8xLm9uY2xpY2sg
PSBldiA9PiB7CisgICAgcmFkaW8xLnR5cGUgPSAiZGF0ZSI7CisgICAgZXYucHJldmVudERlZmF1
bHQoKTsKKyAgfTsKKyAgcmFkaW8xLmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNr
IiwgeyBjYW5jZWxhYmxlOiB0cnVlIH0pKTsKKyAgYXNzZXJ0X2ZhbHNlKHJhZGlvMS5jaGVja2Vk
KTsKKyAgYXNzZXJ0X3RydWUocmFkaW8yLmNoZWNrZWQpOworfSwgInJhZGlvIG1vcnBoZWQgaW50
byBhbm90aGVyIHR5cGUgc2hvdWxkIG5vdCBzdGVhbCB0aGUgZXhpc3RpbmcgY2hlY2tlZCBzdGF0
ZSIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtcmVkaXNwYXRjaC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L0V2ZW50LWRpc3BhdGNoLXJlZGlzcGF0Y2guaHRtbAppbmRleCA4OTNmNTdmMDc3MDNjMDY5ZTIw
Y2Y1MmQ5NmVkMWU1NjhmNDAwZDlmLi43ODY5YWEwMGRlODQ2ZjgwN2I1MmFiMWM5MzM3N2Y2N2I2
OTNhYTQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtcmVkaXNwYXRjaC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVu
dC1kaXNwYXRjaC1yZWRpc3BhdGNoLmh0bWwKQEAgLTQ3LDcgKzQ3LDcgQEAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLCBsb2FkRXZlbnQgPT4gewogICAgIGFzc2VydF90cnVlKGNvbnRl
bnRMb2FkZWRFdmVudC5pc1RydXN0ZWQsICJSZWNlaXZlZCBET01Db250ZW50TG9hZGVkIGV2ZW50
IHNob3VsZCBiZSB0cnVzdGVkIGJlZm9yZSByZWRpc3BhdGNoaW5nIik7CiAgICAgYnV0dG9uRWxl
bWVudC5kaXNwYXRjaEV2ZW50KGNvbnRlbnRMb2FkZWRFdmVudCk7CiAgICAgYXNzZXJ0X2ZhbHNl
KGNvbnRlbnRMb2FkZWRFdmVudC5pc1RydXN0ZWQsICJSZWNlaXZlZCBET01Db250ZW50TG9hZGVk
IGV2ZW50IHNob3VsZG4ndCBiZSB0cnVzdGVkIGFmdGVyIHJlZGlzcGF0Y2hpbmciKTsKLSAgICBh
c3NlcnRfdHJ1ZSh1bnRydXN0ZWRDb250ZW50TG9hZGVkRXZlbnQgIT09IHVuZGVmaW5lZCwgIlVu
dHJ1c3RlZCBET01Db250ZW50TG9hZGVkIGV2ZW50IHNob3VsZCd2ZSBiZWVuIGZpcmVkIik7Cisg
ICAgYXNzZXJ0X25vdF9lcXVhbHModW50cnVzdGVkQ29udGVudExvYWRlZEV2ZW50LCB1bmRlZmlu
ZWQsICJVbnRydXN0ZWQgRE9NQ29udGVudExvYWRlZCBldmVudCBzaG91bGQndmUgYmVlbiBmaXJl
ZCIpOwogICAgIHRlc3RfY29udGVudExvYWRlZF9yZWRpc3BhdGNoaW5nLmRvbmUoKTsKICAgfSk7
CiB9LCB7Y2FwdHVyZTogdHJ1ZSwgb25jZTogdHJ1ZX0pOwpAQCAtMTE0LDcgKzExNCw3IEBAIGFz
eW5jIGZ1bmN0aW9uIHRlc3RNb3VzZVVwQW5kQ2xpY2tFdmVudCgpIHsKICAgICAgIC5zZW5kKCkK
ICAgICAgIC50aGVuKCgpID0+IHsKICAgICAgICAgdGVzdF9tb3VzZXVwX3JlZGlzcGF0Y2hpbmcu
c3RlcCgoKSA9PiB7Ci0gICAgICAgICAgYXNzZXJ0X3RydWUoY2xpY2tFdmVudCAhPT0gdW5kZWZp
bmVkLCAibW91c2V1cCBhbmQgY2xpY2sgZXZlbnRzIHNob3VsZCd2ZSBiZWVuIGZpcmVkIik7Cisg
ICAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoY2xpY2tFdmVudCwgdW5kZWZpbmVkLCAibW91c2V1
cCBhbmQgY2xpY2sgZXZlbnRzIHNob3VsZCd2ZSBiZWVuIGZpcmVkIik7CiAgICAgICAgIH0pOwog
ICAgICAgICB0ZXN0X21vdXNldXBfcmVkaXNwYXRjaGluZy5kb25lKCk7CiAgICAgICAgIHRlc3Rf
cmVkaXNwYXRjaGluZ19vZl9kaXNwYXRjaGluZ19ldmVudC5kb25lKCk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Ny
b2xsaW5nL292ZXJzY3JvbGwtZGVsdGFzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL292ZXJzY3JvbGwtZGVsdGFz
Lmh0bWwKaW5kZXggMDkxY2ZkMDYzMWI0NTRiYWJhZWI4YzMyZGQyODk0NjhiNmQ1MDlkMy4uNmYw
Yjc3ZjIyZWRhMmFiNDk3ODU5Y2U4YjBiY2FmYzI2MWI2NmM1YSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGlu
Zy9vdmVyc2Nyb2xsLWRlbHRhcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvb3ZlcnNjcm9sbC1kZWx0YXMu
aHRtbApAQCAtMTEsNiArMTEsMTEgQEAKICAgaGVpZ2h0OiA1MDBweDsKICAgYmFja2dyb3VuZDog
cmVkOwogfQoraHRtbCwgYm9keSB7CisgIC8qIFByZXZlbnQgYW55IGJ1aWx0LWluIGJyb3dzZXIg
b3ZlcnNjcm9sbCBmZWF0dXJlcyBmcm9tIGNvbnN1bWluZyB0aGUgc2Nyb2xsCisgICAqIGRlbHRh
cyAqLworICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBub25lOworfQogCiA8L3N0eWxlPgogCkBAIC00
Niw2ICs1MSwxMSBAQCBmdW5jdGlvbiBydW5UZXN0KCkgewogICAgIGF3YWl0IHdhaXRGb3IoKCkg
PT4geyByZXR1cm4gc2Nyb2xsZW5kX3JlY2VpdmVkOyB9LAogICAgICAgICAnRG9jdW1lbnQgZGlk
IG5vdCByZWNlaXZlIHNjcm9sbGVuZCBldmVudC4nKTsKIAorICAgIC8vIEV2ZW4gdGhvdWdoIHdl
IHJlcXVlc3QgMzAwIHBpeGVscyBvZiBzY3JvbGwsIHRoZSBBUEkgYWJvdmUgZG9lc24ndAorICAg
IC8vIGd1YXJhbnRlZSBob3cgbXVjaCBzY3JvbGwgZGVsdGEgd2lsbCBiZSBnZW5lcmF0ZWQgLSBk
aWZmZXJlbnQgYnJvd3NlcnMKKyAgICAvLyBjYW4gY29uc3VtZSBkaWZmZXJlbnQgYW1vdW50cyBm
b3IgInRvdWNoIHNsb3AiIChmb3IgZXhhbXBsZSkuIEVuc3VyZSB0aGUKKyAgICAvLyBvdmVyc2Ny
b2xsIHJlYWNoZXMgYXQgbGVhc3QgMTAwIHBpeGVscyB3aGljaCBpcyBhIGZhaXJseSBjb25zZXJ2
YXRpdmUKKyAgICAvLyB2YWx1ZS4KICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKG92ZXJzY3JvbGxl
ZF95X2RlbHRhcy5sZW5ndGgsIDAsICJUaGVyZSBzaG91bGQgYmUgYXQgbGVhc3Qgb25lIG92ZXJz
Y3JvbGwgZXZlbnRzIHdoZW4gb3ZlcnNjcm9sbGluZy4iKTsKICAgICBhc3NlcnRfZXF1YWxzKG92
ZXJzY3JvbGxlZF94X2RlbHRhcy5maWx0ZXIoZnVuY3Rpb24oeCl7IHJldHVybiB4IT0wOyB9KS5s
ZW5ndGgsIDAsICJUaGUgZGVsdGFYIGF0dHJpYnV0ZSBtdXN0IGJlIDAgd2hlbiB0aGVyZSBpcyBu
byBzY3JvbGxpbmcgaW4geCBkaXJlY3Rpb24uIik7CiAgICAgYXNzZXJ0X2xlc3NfdGhhbl9lcXVh
bChNYXRoLm1heCguLi5vdmVyc2Nyb2xsZWRfeV9kZWx0YXMpLCAwLCAiVGhlIGRlbHRhWSBhdHRy
aWJ1dGUgbXVzdCBiZSA8PSAwIHdoZW4gdGhlcmUgaXMgb3ZlcnNjcm9sbGluZyBpbiB1cCBkaXJl
Y3Rpb24uIik7CkBAIC02MSwxMCArNzEsMTQgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICBh
d2FpdCB3YWl0Rm9yKCgpID0+IHsgcmV0dXJuIHNjcm9sbGVuZF9yZWNlaXZlZDsgfSwKICAgICAg
ICAgJ0RvY3VtZW50IGRpZCBub3QgcmVjZWl2ZSBzY3JvbGxlbmQgZXZlbnQuJyk7CiAKKyAgICAv
LyBUT0RPKGJva2FuKTogSXQgbG9va3MgbGlrZSBDaHJvbWUgaW5hcHByb3ByaWF0ZWx5IGZpbHRl
cnMgc29tZSBzY3JvbGwKKyAgICAvLyBldmVudHMgZGVzcGl0ZSB8b3ZlcnNjcm9sbC1iZWhhdmlv
cnwgYmVpbmcgc2V0IHRvIG5vbmUuIFRoZSBvdmVyc2Nyb2xsCisgICAgLy8gYW1vdW50IGhlcmUg
aGFzIGJlZW4gbG9vc2VuZWQgYnV0IHRoaXMgc2hvdWxkIGJlIGZpeGVkIGluIENocm9tZS4KKyAg
ICAvLyBodHRwczovL2NyYnVnLmNvbS8xMTEyMTgzLgogICAgIGFzc2VydF9ncmVhdGVyX3RoYW4o
b3ZlcnNjcm9sbGVkX3lfZGVsdGFzLmxlbmd0aCwgMCwgIlRoZXJlIHNob3VsZCBiZSBhdCBsZWFz
dCBvbmUgb3ZlcnNjcm9sbCBldmVudHMgd2hlbiBvdmVyc2Nyb2xsaW5nLiIpOwogICAgIGFzc2Vy
dF9lcXVhbHMob3ZlcnNjcm9sbGVkX3lfZGVsdGFzLmZpbHRlcihmdW5jdGlvbih4KXsgcmV0dXJu
IHghPTA7IH0pLmxlbmd0aCwgMCwgIlRoZSBkZWx0YVkgYXR0cmlidXRlIG11c3QgYmUgMCB3aGVu
IHRoZXJlIGlzIG5vIHNjcm9sbGluZyBpbiB5IGRpcmVjdGlvbi4iKTsKICAgICBhc3NlcnRfbGVz
c190aGFuX2VxdWFsKE1hdGgubWF4KC4uLm92ZXJzY3JvbGxlZF94X2RlbHRhcyksIDAsICJUaGUg
ZGVsdGFYIGF0dHJpYnV0ZSBtdXN0IGJlIDw9IDAgd2hlbiB0aGVyZSBpcyBvdmVyc2Nyb2xsaW5n
IGluIGxlZnQgZGlyZWN0aW9uLiIpOwotICAgIGFzc2VydF9sZXNzX3RoYW5fZXF1YWwoTWF0aC5t
aW4oLi4ub3ZlcnNjcm9sbGVkX3hfZGVsdGFzKSwtMTAwLCAiVGhlIGRlbHRhWCBhdHRyaWJ1dGUg
bXVzdCBiZSB0aGUgbnVtYmVyIG9mIHBpeGVscyBvdmVyc2Nyb2xsZWQuIik7CisgICAgYXNzZXJ0
X2xlc3NfdGhhbl9lcXVhbChNYXRoLm1pbiguLi5vdmVyc2Nyb2xsZWRfeF9kZWx0YXMpLC01MCwg
IlRoZSBkZWx0YVggYXR0cmlidXRlIG11c3QgYmUgdGhlIG51bWJlciBvZiBwaXhlbHMgb3ZlcnNj
cm9sbGVkLiIpOwogCiAgIH0sICdUZXN0cyB0aGF0IHRoZSBkb2N1bWVudCBnZXRzIG92ZXJzY3Jv
bGwgZXZlbnQgd2l0aCByaWdodCBkZWx0YVgvWSBhdHRyaWJ1dGVzLicpOwogfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L3Njcm9sbGluZy9zY3JvbGxfc3VwcG9ydC5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xsX3N1cHBvcnQuanMK
aW5kZXggNmZkMWIzMjI5NGJiODkzM2I1ZTk5MThlYTgyNjBiODczYjk4N2Y4YS4uMGE3M2YzNGZl
ZmM4YWI1Mzk2MmUxYTE1Y2U1ZmI2ZThjMGI0NWE5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3Jv
bGxfc3VwcG9ydC5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbF9zdXBwb3J0LmpzCkBAIC04MywzICs4
MywxNSBAQCBmdW5jdGlvbiB0b3VjaFNjcm9sbEluVGFyZ2V0KHBpeGVsc190b19zY3JvbGwsIHRh
cmdldCwgZGlyZWN0aW9uLCBwYXVzZV90aW1lX2luXwogZnVuY3Rpb24gdG91Y2hGbGluZ0luVGFy
Z2V0KHBpeGVsc190b19zY3JvbGwsIHRhcmdldCwgZGlyZWN0aW9uKSB7CiAgIHRvdWNoU2Nyb2xs
SW5UYXJnZXQocGl4ZWxzX3RvX3Njcm9sbCwgdGFyZ2V0LCBkaXJlY3Rpb24sIDAgLyogcGF1c2Vf
dGltZSAqLyk7CiB9CisKK2Z1bmN0aW9uIG1vdXNlQWN0aW9uc0luVGFyZ2V0KHRhcmdldCwgb3Jp
Z2luLCBkZWx0YSwgcGF1c2VfdGltZV9pbl9tcyA9IDEwMCkgeworICByZXR1cm4gbmV3IHRlc3Rf
ZHJpdmVyLkFjdGlvbnMoKQorICAgIC5hZGRQb2ludGVyKCJwb2ludGVyMSIsICJtb3VzZSIpCisg
ICAgLnBvaW50ZXJNb3ZlKG9yaWdpbi54LCBvcmlnaW4ueSwgeyBvcmlnaW46IHRhcmdldCB9KQor
ICAgIC5wb2ludGVyRG93bigpCisgICAgLnBvaW50ZXJNb3ZlKG9yaWdpbi54ICsgZGVsdGEueCwg
b3JpZ2luLnkgKyBkZWx0YS55LCB7IG9yaWdpbjogdGFyZ2V0IH0pCisgICAgLnBvaW50ZXJNb3Zl
KG9yaWdpbi54ICsgZGVsdGEueCAqIDIsIG9yaWdpbi55ICsgZGVsdGEueSAqIDIsIHsgb3JpZ2lu
OiB0YXJnZXQgfSkKKyAgICAucGF1c2UocGF1c2VfdGltZV9pbl9tcykKKyAgICAucG9pbnRlclVw
KCkKKyAgICAuc2VuZCgpOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxlbmQtZXZlbnQt
Zm9yLXVzZXItc2Nyb2xsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbGVuZC1ldmVudC1mb3ItdXNlci1z
Y3JvbGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMGYxNjU3MWNkODMyMDFlMDM5ZmQ5ZTY4MmUwY2NhNmI4
NTY5ZDc2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxlbmQtZXZlbnQtZm9yLXVz
ZXItc2Nyb2xsLmh0bWwKQEAgLTAsMCArMSwxMzggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Rkcml2ZXIuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGRyaXZlci1hY3Rpb25zLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Rkcml2ZXItdmVuZG9yLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJzY3JvbGxfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgI3Rh
cmdldERpdiB7CisgICAgICAgIHdpZHRoOiAyMDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMDBweDsK
KyAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsKKyAgICB9CisKKyAgICAjaW5uZXJEaXYgeworICAg
ICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogNDAwcHg7CisgICAgfQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5IHN0eWxlPSJtYXJnaW46MCIgb25sb2FkPXJ1blRlc3QoKT4KKyAg
ICA8ZGl2IGlkPSJ0YXJnZXREaXYiPgorICAgICAgICA8ZGl2IGlkPSJpbm5lckRpdiI+CisgICAg
ICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9ib2R5PgorCis8c2NyaXB0PgordmFyIHRhcmdldF9k
aXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGFyZ2V0RGl2Jyk7Cit2YXIgc2Nyb2xsZW5k
X2Fycml2ZWQgPSBmYWxzZTsKKworZnVuY3Rpb24gb25TY3JvbGxFbmQoZXZlbnQpIHsKKyAgICBh
c3NlcnRfZmFsc2UoZXZlbnQuY2FuY2VsYWJsZSk7CisgICAgYXNzZXJ0X2ZhbHNlKGV2ZW50LmJ1
YmJsZXMpOworICAgIHNjcm9sbGVuZF9hcnJpdmVkID0gdHJ1ZTsKK30KKworZnVuY3Rpb24gcmVz
ZXRUYXJnZXRTY3JvbGxTdGF0ZSgpIHsKKyAgICB0YXJnZXRfZGl2LnNjcm9sbFRvcCA9IDA7Cisg
ICAgdGFyZ2V0X2Rpdi5zY3JvbGxMZWZ0ID0gMDsKK30KKworZnVuY3Rpb24gY2hlY2tGaW5hbFBv
c2l0aW9uKHRhcmdldCwgcG9zaXRpb24sIHBhdXNlX3RpbWVfaW5fbXMpIHsKKyAgICByZXR1cm4g
bmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICBzdGVwX3RpbWVvdXQo
KCkgPT4geworICAgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhwb3NpdGlvbi54LCB0YXJnZXQuc2Nyb2xsTGVmdCk7CisgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHBvc2l0aW9uLnksIHRhcmdldC5zY3JvbGxUb3ApOworICAgICAgICB9LCBwYXVzZV90aW1l
X2luX21zKTsKKyAgICB9KTsKK30KKwordGFyZ2V0X2Rpdi5hZGRFdmVudExpc3RlbmVyKCJzY3Jv
bGxlbmQiLCBvblNjcm9sbEVuZCk7CisKK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgcHJvbWlz
ZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IG5vIHNjcm9s
bGVuZCBldmVudCBpcyBzZW50IHRvIHdpbmRvdy4KKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoInNjcm9sbGVuZCIsCisgICAgICAgICAgICB0LnVucmVhY2hlZF9mdW5jKCJ3aW5kb3cg
Z290IHVuZXhwZWN0ZWQgc2Nyb2xsZW5kIGV2ZW50LiIpKTsKKyAgICAgICAgYXdhaXQgd2FpdEZv
ckNvbXBvc2l0b3JDb21taXQoKTsKKyAgICAgICAgc2Nyb2xsZW5kX2Fycml2ZWQgPSBmYWxzZTsK
KworICAgICAgICAvLyBQZXJmb3JtIGRyYWcgYWN0aW9uIG9uIHRhcmdldCBkaXYgYW5kIHdhaXQg
Zm9yIHRhcmdldF9kaXYgdG8gZ2V0IHNjcm9sbGVuZCBldmVudC4KKyAgICAgICAgdmFyIG9yaWdp
biA9IHsgeDogdGFyZ2V0X2Rpdi5vZmZzZXRXaWR0aCAvIDIsIHk6IHRhcmdldF9kaXYub2Zmc2V0
SGVpZ2h0IC0gNTAgfTsKKyAgICAgICAgdmFyIGRlbHRhID0geyB4OiAwLCB5OiA0MCB9OworICAg
ICAgICBhd2FpdCBtb3VzZUFjdGlvbnNJblRhcmdldCh0YXJnZXRfZGl2LCBvcmlnaW4sIGRlbHRh
LCAzMDApOworICAgICAgICBhd2FpdCB3YWl0Rm9yKCgpID0+IHsgcmV0dXJuIHNjcm9sbGVuZF9h
cnJpdmVkOyB9LAorICAgICAgICAgICAgJ3RhcmdldF9kaXYgZGlkIG5vdCByZWNlaXZlIHNjcm9s
bGVuZCBldmVudCBhZnRlciBkcmFnZ2luZyBzY3JvbGwgb24gdGFyZ2V0LicpOworICAgICAgICBh
c3NlcnRfdHJ1ZSh0YXJnZXRfZGl2LnNjcm9sbFRvcCA+IDApOworICAgICAgICBhd2FpdCBjaGVj
a0ZpbmFsUG9zaXRpb24odGFyZ2V0X2Rpdiwge3g6IHRhcmdldF9kaXYuc2Nyb2xsTGVmdCwgeTog
dGFyZ2V0X2Rpdi5zY3JvbGxUb3B9LCAzMDApOworICAgIH0sICdUZXN0cyB0aGF0IHRoZSB0YXJn
ZXRfZGl2IGdldHMgc2Nyb2xsZW5kIGV2ZW50IHdoZW4gZHJhZ2dpbmcgc2Nyb2xsIG9uIHRhcmdl
dC4nKTsKKworICAgIHByb21pc2VfdGVzdChhc3luYyAodCkgPT4geworICAgICAgICByZXNldFRh
cmdldFNjcm9sbFN0YXRlKCk7CisgICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IG5vIHNjcm9sbGVu
ZCBldmVudCBpcyBzZW50IHRvIHdpbmRvdy4KKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoInNjcm9sbGVuZCIsCisgICAgICAgICAgICB0LnVucmVhY2hlZF9mdW5jKCJ3aW5kb3cgZ290
IHVuZXhwZWN0ZWQgc2Nyb2xsZW5kIGV2ZW50LiIpKTsKKyAgICAgICAgYXdhaXQgd2FpdEZvckNv
bXBvc2l0b3JDb21taXQoKTsKKyAgICAgICAgc2Nyb2xsZW5kX2Fycml2ZWQgPSBmYWxzZTsKKwor
ICAgICAgICAvLyBIaXQgdGhlIHNjcm9sbGJhciBvZiB0YXJnZXQgZGl2IGFuZCB3YWl0IGZvciB0
YXJnZXRfZGl2IHRvIGdldCBzY3JvbGxlbmQgZXZlbnQuCisgICAgICAgIHZhciBzY3JvbGxiYXJf
d2lkdGggPSB0YXJnZXRfZGl2Lm9mZnNldFdpZHRoIC0gdGFyZ2V0X2Rpdi5jbGllbnRXaWR0aDsK
KyAgICAgICAgYXNzZXJ0X3RydWUoc2Nyb2xsYmFyX3dpZHRoID4gMCwgIlRoaXMgdGVzdCByZXF1
aXJlcyBzY3JvbGxiYXIuIik7CisgICAgICAgIHZhciBvcmlnaW4gPSB7eDogdGFyZ2V0X2Rpdi5v
ZmZzZXRXaWR0aCAtIHNjcm9sbGJhcl93aWR0aCAvIDIsIHk6IHRhcmdldF9kaXYub2Zmc2V0SGVp
Z2h0IC0gNTB9OworICAgICAgICB2YXIgZGVsdGEgPSB7eDogMCwgeTogMH07CisgICAgICAgIGF3
YWl0IG1vdXNlQWN0aW9uc0luVGFyZ2V0KHRhcmdldF9kaXYsIG9yaWdpbiwgZGVsdGEsIDEwMCk7
CisgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4geyByZXR1cm4gc2Nyb2xsZW5kX2Fycml2ZWQ7
IH0sCisgICAgICAgICAgICAndGFyZ2V0X2RpdiBkaWQgbm90IHJlY2VpdmUgc2Nyb2xsZW5kIGV2
ZW50IGFmdGVyIGNsaWNraW5nIHNjcm9sbGJhciBvbiB0YXJnZXQuJyk7CisgICAgICAgIGFzc2Vy
dF90cnVlKHRhcmdldF9kaXYuc2Nyb2xsVG9wID4gMCk7CisgICAgICAgIGF3YWl0IGNoZWNrRmlu
YWxQb3NpdGlvbih0YXJnZXRfZGl2LCB7IHg6IHRhcmdldF9kaXYuc2Nyb2xsTGVmdCwgeTogdGFy
Z2V0X2Rpdi5zY3JvbGxUb3AgfSwgMzAwKTsKKyAgICB9LCAnVGVzdHMgdGhhdCB0aGUgdGFyZ2V0
X2RpdiBnZXRzIHNjcm9sbGVuZCBldmVudCB3aGVuIGNsaWNrIHNjcm9sbGJhciBvbiB0YXJnZXQu
Jyk7CisKKyAgICBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgICAgICAgcmVzZXRUYXJn
ZXRTY3JvbGxTdGF0ZSgpOworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCBubyBzY3JvbGxlbmQg
ZXZlbnQgaXMgc2VudCB0byB3aW5kb3cuCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVy
KCJzY3JvbGxlbmQiLAorICAgICAgICAgICAgdC51bnJlYWNoZWRfZnVuYygid2luZG93IGdvdCB1
bmV4cGVjdGVkIHNjcm9sbGVuZCBldmVudC4iKSk7CisgICAgICAgIGF3YWl0IHdhaXRGb3JDb21w
b3NpdG9yQ29tbWl0KCk7CisgICAgICAgIHNjcm9sbGVuZF9hcnJpdmVkID0gZmFsc2U7CisKKwor
ICAgICAgICAvLyBEcmFnIHRoZSB0aHVtYiBvZiB0YXJnZXQgZGl2LgorICAgICAgICB2YXIgc2Ny
b2xsYmFyX3dpZHRoID0gdGFyZ2V0X2Rpdi5vZmZzZXRXaWR0aCAtIHRhcmdldF9kaXYuY2xpZW50
V2lkdGg7CisgICAgICAgIGFzc2VydF90cnVlKHNjcm9sbGJhcl93aWR0aCA+IDAsICJUaGlzIHRl
c3QgcmVxdWlyZXMgc2Nyb2xsYmFyLiIpOworICAgICAgICB2YXIgb3JpZ2luID0geyB4OiB0YXJn
ZXRfZGl2Lm9mZnNldFdpZHRoIC0gc2Nyb2xsYmFyX3dpZHRoIC8gMiwgeTogNTAgfTsKKyAgICAg
ICAgdmFyIGRlbHRhID0geyB4OiAwLCB5OiAyMCB9OworICAgICAgICBhd2FpdCBtb3VzZUFjdGlv
bnNJblRhcmdldCh0YXJnZXRfZGl2LCBvcmlnaW4sIGRlbHRhLCAxMDApOworICAgICAgICBhd2Fp
dCB3YWl0Rm9yKCgpID0+IHsgcmV0dXJuIHNjcm9sbGVuZF9hcnJpdmVkOyB9LAorICAgICAgICAg
ICAgJ3RhcmdldF9kaXYgZGlkIG5vdCByZWNlaXZlIHNjcm9sbGVuZCBldmVudCBhZnRlciBkcmFn
Z2luZyB0aGUgdGh1bWIgb2YgdGFyZ2V0LicpOworICAgICAgICBhc3NlcnRfdHJ1ZSh0YXJnZXRf
ZGl2LnNjcm9sbFRvcCA+IDApOworICAgICAgICBhd2FpdCBjaGVja0ZpbmFsUG9zaXRpb24odGFy
Z2V0X2RpdiwgeyB4OiB0YXJnZXRfZGl2LnNjcm9sbExlZnQsIHk6IHRhcmdldF9kaXYuc2Nyb2xs
VG9wIH0sIDMwMCk7CisgICAgfSwgJ1Rlc3RzIHRoYXQgdGhlIHRhcmdldF9kaXYgZ2V0cyBzY3Jv
bGxlbmQgZXZlbnQgd2hlbiBkcmFnIHRoZSB0aHVtYiBvZiB0YXJnZXQuJyk7CisKKyAgICBwcm9t
aXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgICAgICAgcmVzZXRUYXJnZXRTY3JvbGxTdGF0ZSgp
OworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCBubyBzY3JvbGxlbmQgZXZlbnQgaXMgc2VudCB0
byB3aW5kb3cuCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGxlbmQiLAor
ICAgICAgICAgICAgdC51bnJlYWNoZWRfZnVuYygid2luZG93IGdvdCB1bmV4cGVjdGVkIHNjcm9s
bGVuZCBldmVudC4iKSk7CisgICAgICAgIGF3YWl0IHdhaXRGb3JDb21wb3NpdG9yQ29tbWl0KCk7
CisgICAgICAgIHNjcm9sbGVuZF9hcnJpdmVkID0gZmFsc2U7CisKKyAgICAgICAgLy8gSGl0IGFu
ZCBhY3RpdmUgdGhlIHRhcmdldCBkaXYuCisgICAgICAgIHZhciBvcmlnaW4gPSB7IHg6IHRhcmdl
dF9kaXYub2Zmc2V0V2lkdGggLyAyLCB5OiB0YXJnZXRfZGl2Lm9mZnNldEhlaWdodCAvIDJ9Owor
ICAgICAgICB2YXIgZGVsdGEgPSB7IHg6IDAsIHk6IDAgfTsKKyAgICAgICAgYXdhaXQgbW91c2VB
Y3Rpb25zSW5UYXJnZXQodGFyZ2V0X2Rpdiwgb3JpZ2luLCBkZWx0YSwgMTAwKTsKKyAgICAgICAg
Ly8gU2VuZCBET1dOIGtleSB0byB0aGUgdGFyZ2V0IGRpdi4KKyAgICAgICAgd2luZG93LnRlc3Rf
ZHJpdmVyLnNlbmRfa2V5cyh0YXJnZXRfZGl2LCAnXHVlMDE1Jyk7CisKKyAgICAgICAgYXdhaXQg
d2FpdEZvcigoKSA9PiB7IHJldHVybiBzY3JvbGxlbmRfYXJyaXZlZDsgfSwKKyAgICAgICAgICAg
ICd0YXJnZXRfZGl2IGRpZCBub3QgcmVjZWl2ZSBzY3JvbGxlbmQgZXZlbnQgYWZ0ZXIgc2VuZGlu
ZyBET1dOIGtleSB0byB0YXJnZXQuJyk7CisgICAgICAgIGFzc2VydF90cnVlKHRhcmdldF9kaXYu
c2Nyb2xsVG9wID4gMCk7CisgICAgICAgIGF3YWl0IGNoZWNrRmluYWxQb3NpdGlvbih0YXJnZXRf
ZGl2LCB7IHg6IHRhcmdldF9kaXYuc2Nyb2xsTGVmdCwgeTogdGFyZ2V0X2Rpdi5zY3JvbGxUb3Ag
fSwgMzAwKTsKKyAgICB9LCAnVGVzdHMgdGhhdCB0aGUgdGFyZ2V0X2RpdiBnZXRzIHNjcm9sbGVu
ZCBldmVudCB3aGVuIHNlbmQgRE9XTiBrZXkgdG8gdGFyZ2V0LicpOworfQorPC9zY3JpcHQ+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy93M2Mt
aW1wb3J0LmxvZwppbmRleCBhMjdjNGJlNzMxMThjY2VmZmY2NDlhMDQ3YWQ2NDQ2OGUzMjljODg3
Li5kMDAzNDllYjU2ZTU1OGIyNDEzMzM5ODJhNGE0ZTdiMmUwMmMxMWM4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Ny
b2xsaW5nL3czYy1pbXBvcnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvdzNjLWltcG9ydC5sb2cKQEAgLTI4
LDMgKzI4LDQgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbGVuZC1ldmVudC1maXJl
ZC10by1lbGVtZW50LXdpdGgtb3ZlcnNjcm9sbC1iZWhhdmlvci5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3Jv
bGxlbmQtZXZlbnQtZmlyZWQtdG8tc2Nyb2xsZWQtZWxlbWVudC5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3Jv
bGxlbmQtZXZlbnQtZmlyZWQtdG8td2luZG93Lmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbGVuZC1ldmVu
dC1mb3ItdXNlci1zY3JvbGwuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3czYy1pbXBv
cnQubG9nCmluZGV4IDUxOWEyYmI0N2JhNTE0Y2Q3NTkxOWEwNGQ4MmJmZjk1YTFlOGFjZWMuLjI3
ZGJhY2FjNzYwZmZlZWMzMDRhZWYyYTg0ODE1ZDUxZjU4NDk2ZjcgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy93M2MtaW1w
b3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9ldmVudHMvdzNjLWltcG9ydC5sb2cKQEAgLTI2LDYgKzI2LDcgQEAgTGlzdCBvZiBmaWxl
czoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVu
dHMvRXZlbnQtZGlzcGF0Y2gtYnViYmxlcy1mYWxzZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWJ1YmJs
ZXMtdHJ1ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xp
Y2sudGVudGF0aXZlLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtZGV0YWNoZWQtY2xpY2suaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVu
dC1kaXNwYXRjaC1kZXRhY2hlZC1pbnB1dC1hbmQtY2hhbmdlLmh0bWwKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gt
aGFuZGxlcnMtY2hhbmdlZC5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVE
b2N1bWVudC13aXRoLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50
YXRpb24tY3JlYXRlRG9jdW1lbnQtd2l0aC1udWxsLWJyb3dzaW5nLWNvbnRleHQtY3Jhc2guaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5jOTM5M2QwYTA5NWIwMGVmYzcxYjQwMzBlYTJjZmNlY2FhOTRkODA1Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlRG9jdW1lbnQtd2l0aC1udWxs
LWJyb3dzaW5nLWNvbnRleHQtY3Jhc2guaHRtbApAQCAtMCwwICsxLDEzIEBACis8IWRvY3R5cGUg
aHRtbD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+RE9NSW1wbGVtZW50YXRpb24uY3Jl
YXRlRG9jdW1lbnQoKTwvdGl0bGU+Cis8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ik5hdGUgQ2hh
cGluIiBocmVmPSJtYWlsdG86amFwaGV0QGNocm9taXVtLm9yZyI+Cis8bGluayByZWw9aGVscCBo
cmVmPSJodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2RvbS1kb21pbXBsZW1lbnRhdGlvbi1j
cmVhdGVkb2N1bWVudCI+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vYnVncy5jaHJv
bWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTEwODY4MDEiPgorPG1ldGEgbmFt
ZT0iYXNzZXJ0IiBjb250ZW50PSJDYWxsaW5nIG9uIGNyZWF0ZURvY3VtZW50KCkgb24gYSBET01J
bXBsZW1lbnRhdGlvbiBmcm9tIGEgZG9jdW1lbnQgd2l0aCBhIG51bGwgYnJvd3NpbmcgY29udGV4
dCBzaG91bGQgbm90IGNyYXNoIi8+Cis8aWZyYW1lIGlkPSJpIj48L2lmcmFtZT4KKzxzY3JpcHQ+
Cit2YXIgZG9jID0gaS5jb250ZW50RG9jdW1lbnQ7CitpLnJlbW92ZSgpOworZG9jLmltcGxlbWVu
dGF0aW9uLmNyZWF0ZURvY3VtZW50KCIiLCAiIik7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUlt
cGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13aXRoLW51bGwtYnJvd3NpbmctY29udGV4
dC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50LXdpdGgtbnVs
bC1icm93c2luZy1jb250ZXh0LWNyYXNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDBjZDZmMWY3NGIyMmFh
MDc4NTkyMjc2OTAzMDA5NGYxYmNkOGVjMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0
aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13aXRoLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5o
dG1sCkBAIC0wLDAgKzEsMTMgQEAKKzwhZG9jdHlwZSBodG1sPgorPG1ldGEgY2hhcnNldD11dGYt
OD4KKzx0aXRsZT5ET01JbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoKTwvdGl0bGU+
Cis8bGluayByZWw9ImF1dGhvciIgdGl0bGU9Ik5hdGUgQ2hhcGluIiBocmVmPSJtYWlsdG86amFw
aGV0QGNocm9taXVtLm9yZyI+Cis8bGluayByZWw9aGVscCBocmVmPSJodHRwczovL2RvbS5zcGVj
LndoYXR3Zy5vcmcvI2RvbS1kb21pbXBsZW1lbnRhdGlvbi1jcmVhdGVodG1sZG9jdW1lbnQiPgor
PGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21p
dW0vaXNzdWVzL2RldGFpbD9pZD0xMDg2ODAwIj4KKzxtZXRhIG5hbWU9ImFzc2VydCIgY29udGVu
dD0iQ2FsbGluZyBvbiBjcmVhdGVIVE1MRG9jdW1lbnQoKSBvbiBhIERPTUltcGxlbWVudGF0aW9u
IGZyb20gYSBkb2N1bWVudCB3aXRoIGEgbnVsbCBicm93c2luZyBjb250ZXh0IHNob3VsZCBub3Qg
Y3Jhc2giLz4KKzxpZnJhbWUgaWQ9ImkiPjwvaWZyYW1lPgorPHNjcmlwdD4KK3ZhciBkb2MgPSBp
LmNvbnRlbnREb2N1bWVudDsKK2kucmVtb3ZlKCk7Citkb2MuaW1wbGVtZW50YXRpb24uY3JlYXRl
SFRNTERvY3VtZW50KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNy
ZWF0ZUhUTUxEb2N1bWVudC13aXRoLXNhdmVkLWltcGxlbWVudGF0aW9uLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RP
TUltcGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13aXRoLXNhdmVkLWltcGxlbWVudGF0
aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOWNjNWNlYWE2MzkwNzMzODdlNDkwYjY0MjQ5
ZWI0N2I3MGQ5ZmVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRN
TERvY3VtZW50LXdpdGgtc2F2ZWQtaW1wbGVtZW50YXRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMyBAQAorCitQQVNTIGNyZWF0ZUhUTUxEb2N1bWVudCgpOiBmcm9tIGEgc2F2ZWQgYW5kIGRl
dGFjaGVkIGltcGxlbWVudGF0aW9uIGRvZXMgbm90IHJldHVybiBudWxsCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RP
TUltcGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13aXRoLXNhdmVkLWltcGxlbWVudGF0
aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1p
bXBsZW1lbnRhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJhZTIyNjYwYmZiNWRlZjA5YTExYWQ5Yzhi
OWQ5NWQ4ZDY4ZmU5Y2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVI
VE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1pbXBsZW1lbnRhdGlvbi5odG1sCkBAIC0wLDAgKzEsMTYg
QEAKKzwhRE9DVFlQRSBodG1sPgorPHRpdGxlPkRPTUltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxE
b2N1bWVudDwvdGl0bGU+Cis8bGluayByZWw9aGVscCBocmVmPSJodHRwczovL2RvbS5zcGVjLndo
YXR3Zy5vcmcvI2RvbS1kb21pbXBsZW1lbnRhdGlvbi1jcmVhdGVodG1sZG9jdW1lbnQiPgorPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorPGRpdiBpZD0i
bG9nIj48L2Rpdj4KKzxzY3JpcHQ+CisvLyBUZXN0IHRoZSBkb2N1bWVudCBsb2NhdGlvbiBnZXR0
ZXIgaXMgbnVsbCBvdXRzaWRlIG9mIGJyb3dzZXIgY29udGV4dAordGVzdChmdW5jdGlvbigpIHsK
KyAgdmFyIGlmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOworICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcmFtZSk7CisgIHZhciBpbXBsZW1lbnRhdGlvbiA9IGlm
cmFtZS5jb250ZW50RG9jdW1lbnQuaW1wbGVtZW50YXRpb247CisgIGlmcmFtZS5yZW1vdmUoKTsK
KyAgYXNzZXJ0X25vdF9lcXVhbHMoaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCks
IG51bGwpOworfSwgImNyZWF0ZUhUTUxEb2N1bWVudCgpOiBmcm9tIGEgc2F2ZWQgYW5kIGRldGFj
aGVkIGltcGxlbWVudGF0aW9uIGRvZXMgbm90IHJldHVybiBudWxsIikKKzwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvRG9jdW1lbnQtY29udGVudFR5cGUvc3VwcG9ydC9jb250ZW50dHlwZV9zZXR0ZXIucHkg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9E
b2N1bWVudC1jb250ZW50VHlwZS9zdXBwb3J0L2NvbnRlbnR0eXBlX3NldHRlci5weQppbmRleCAw
MmVmZjY1M2NjZjljMzkyM2NjMmUwNzBkMjQ5MDUwZDc3ZGEzZTg3Li5jNGIxZjhkZjI3YzFlZjAz
ZWNiZTdiNmU4ZDRlMjM4ZDg5OTcyNDhiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Eb2N1bWVudC1jb250ZW50VHlwZS9z
dXBwb3J0L2NvbnRlbnR0eXBlX3NldHRlci5weQorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Eb2N1bWVudC1jb250ZW50VHlwZS9zdXBw
b3J0L2NvbnRlbnR0eXBlX3NldHRlci5weQpAQCAtMSwyMCArMSwyMCBAQAogZGVmIG1haW4ocmVx
dWVzdCwgcmVzcG9uc2UpOgotICAgIHR5cGUgPSByZXF1ZXN0LkdFVC5maXJzdCgidHlwZSIsIE5v
bmUpCi0gICAgc3VidHlwZSA9IHJlcXVlc3QuR0VULmZpcnN0KCJzdWJ0eXBlIiwgTm9uZSkKKyAg
ICB0eXBlID0gcmVxdWVzdC5HRVQuZmlyc3QoYiJ0eXBlIiwgTm9uZSkKKyAgICBzdWJ0eXBlID0g
cmVxdWVzdC5HRVQuZmlyc3QoYiJzdWJ0eXBlIiwgTm9uZSkKICAgICBpZiB0eXBlIGFuZCBzdWJ0
eXBlOgotICAgICAgICByZXNwb25zZS5oZWFkZXJzWyJDb250ZW50LVR5cGUiXSA9IHR5cGUgKyAi
LyIgKyBzdWJ0eXBlCisgICAgICAgIHJlc3BvbnNlLmhlYWRlcnNbYiJDb250ZW50LVR5cGUiXSA9
IHR5cGUgKyBiIi8iICsgc3VidHlwZQogCi0gICAgcmVtb3ZlQ29udGVudFR5cGUgPSByZXF1ZXN0
LkdFVC5maXJzdCgicmVtb3ZlQ29udGVudFR5cGUiLCBOb25lKQorICAgIHJlbW92ZUNvbnRlbnRU
eXBlID0gcmVxdWVzdC5HRVQuZmlyc3QoYiJyZW1vdmVDb250ZW50VHlwZSIsIE5vbmUpCiAgICAg
aWYgcmVtb3ZlQ29udGVudFR5cGU6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIGRlbCByZXNw
b25zZS5oZWFkZXJzWyJDb250ZW50LVR5cGUiXQorICAgICAgICAgICAgZGVsIHJlc3BvbnNlLmhl
YWRlcnNbYiJDb250ZW50LVR5cGUiXQogICAgICAgICBleGNlcHQgS2V5RXJyb3I6CiAgICAgICAg
ICAgICBwYXNzCiAKLSAgICBjb250ZW50ID0gJzxoZWFkPicKLSAgICBtaW1lSGVhZCA9IHJlcXVl
c3QuR0VULmZpcnN0KCJtaW1lIiwgTm9uZSk7CisgICAgY29udGVudCA9IGInPGhlYWQ+JworICAg
IG1pbWVIZWFkID0gcmVxdWVzdC5HRVQuZmlyc3QoYiJtaW1lIiwgTm9uZSk7CiAgICAgaWYgbWlt
ZUhlYWQ6Ci0gICAgICAgIGNvbnRlbnQgKz0gJzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlw
ZSIgY29udGVudD0iJXM7IGNoYXJzZXQ9dXRmLTgiLz4nICUgbWltZUhlYWQKLSAgICBjb250ZW50
ICs9ICI8L2hlYWQ+IgorICAgICAgICBjb250ZW50ICs9IGInPG1ldGEgaHR0cC1lcXVpdj0iQ29u
dGVudC1UeXBlIiBjb250ZW50PSIlczsgY2hhcnNldD11dGYtOCIvPicgJSBtaW1lSGVhZAorICAg
IGNvbnRlbnQgKz0gYiI8L2hlYWQ+IgogCiAgICAgcmV0dXJuIGNvbnRlbnQKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0Rv
Y3VtZW50LWNyZWF0ZUVsZW1lbnQtbmFtZXNwYWNlLXRlc3RzL2dlbmVyYXRlLnB5IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRG9jdW1lbnQt
Y3JlYXRlRWxlbWVudC1uYW1lc3BhY2UtdGVzdHMvZ2VuZXJhdGUucHkKaW5kZXggODExNDEzZGJl
MmRmZGNmZWMyYzA3YmMwOWJkZDc3NjNjNzFiNzU1YS4uYTBiY2E1NDZjNzVmZGJhODczYjVhOTlk
MmU1OTNhY2RkYTJlNTQ5OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRG9jdW1lbnQtY3JlYXRlRWxlbWVudC1uYW1lc3Bh
Y2UtdGVzdHMvZ2VuZXJhdGUucHkKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRG9jdW1lbnQtY3JlYXRlRWxlbWVudC1uYW1lc3BhY2Ut
dGVzdHMvZ2VuZXJhdGUucHkKQEAgLTUsMjUgKzUsMjUgQEAgZnJvbSBfX2Z1dHVyZV9fIGltcG9y
dCBwcmludF9mdW5jdGlvbgogaW1wb3J0IG9zCiBpbXBvcnQgc3lzCiAKLVRISVNfTkFNRSA9ICJn
ZW5lcmF0ZS5weSIKK1RISVNfTkFNRSA9IHUiZ2VuZXJhdGUucHkiCiAKICMgTm90ZTogdGhlc2Ug
bGlzdHMgbXVzdCBiZSBrZXB0IGluIHN5bmMgd2l0aCB0aGUgbGlzdHMgaW4KICMgRG9jdW1lbnQt
Y3JlYXRlRWxlbWVudC1uYW1lc3BhY2UuaHRtbCwgYW5kIHRoaXMgc2NyaXB0IG11c3QgYmUgcnVu
IHdoZW5ldmVyCiAjIHRoZSBsaXN0cyBhcmUgdXBkYXRlZC4gIChXZSBjb3VsZCBrZWVwIHRoZSBs
aXN0cyBpbiBhIHNoYXJlZCBKU09OIGZpbGUsIGJ1dAogIyBzZWVtcyBsaWtlIHRvbyBtdWNoIGVm
Zm9ydC4pCiBGSUxFUyA9ICgKLSAgICAoImVtcHR5IiwgIiIpLAotICAgICgibWluaW1hbF9odG1s
IiwgIjwhZG9jdHlwZSBodG1sPjx0aXRsZT48L3RpdGxlPiIpLAorICAgICh1ImVtcHR5IiwgdSIi
KSwKKyAgICAodSJtaW5pbWFsX2h0bWwiLCB1IjwhZG9jdHlwZSBodG1sPjx0aXRsZT48L3RpdGxl
PiIpLAogCi0gICAgKCJ4aHRtbCIsICc8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCI+PC9odG1sPicpLAotICAgICgic3ZnIiwgJzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIj48L3N2Zz4nKSwKLSAgICAoIm1hdGhtbCIsICc8bWF0aG1sIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIj48L21hdGhtbD4nKSwKKyAgICAo
dSJ4aHRtbCIsIHUnPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPjwv
aHRtbD4nKSwKKyAgICAodSJzdmciLCB1JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnIj48L3N2Zz4nKSwKKyAgICAodSJtYXRobWwiLCB1JzxtYXRobWwgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiPjwvbWF0aG1sPicpLAogCi0gICAgKCJiYXJl
X3hodG1sIiwgIjxodG1sPjwvaHRtbD4iKSwKLSAgICAoImJhcmVfc3ZnIiwgIjxzdmc+PC9zdmc+
IiksCi0gICAgKCJiYXJlX21hdGhtbCIsICI8bWF0aD48L21hdGg+IiksCisgICAgKHUiYmFyZV94
aHRtbCIsIHUiPGh0bWw+PC9odG1sPiIpLAorICAgICh1ImJhcmVfc3ZnIiwgdSI8c3ZnPjwvc3Zn
PiIpLAorICAgICh1ImJhcmVfbWF0aG1sIiwgdSI8bWF0aD48L21hdGg+IiksCiAKLSAgICAoInho
dG1sX25zX3JlbW92ZWQiLCAiIiJcCisgICAgKHUieGh0bWxfbnNfcmVtb3ZlZCIsIHUiIiJcCiA8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CiAgIDxoZWFkPjxzY3Jp
cHQ+CiAgICAgdmFyIG5ld1Jvb3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMobnVsbCwgImh0
bWwiKTsKQEAgLTMyLDcgKzMyLDcgQEAgRklMRVMgPSAoCiAgIDwvc2NyaXB0PjwvaGVhZD4KIDwv
aHRtbD4KICIiIiksCi0gICAgKCJ4aHRtbF9uc19jaGFuZ2VkIiwgIiIiXAorICAgICh1InhodG1s
X25zX2NoYW5nZWQiLCB1IiIiXAogPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkv
eGh0bWwiPgogICA8aGVhZD48c2NyaXB0PgogICAgIHZhciBuZXdSb290ID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsICJhYmMiKTsKQEAgLTQ0
LDM2ICs0NCwzNiBAQCBGSUxFUyA9ICgKICkKIAogRVhURU5TSU9OUyA9ICgKLSAgICAiaHRtbCIs
Ci0gICAgInhodG1sIiwKLSAgICAieG1sIiwKLSAgICAic3ZnIiwKKyAgICB1Imh0bWwiLAorICAg
IHUieGh0bWwiLAorICAgIHUieG1sIiwKKyAgICB1InN2ZyIsCiAgICAgIyBXYXMgbm90IGFibGUg
dG8gZ2V0IHNlcnZlciBNSU1FIHR5cGUgd29ya2luZyBwcm9wZXJseSA6KAogICAgICMibW1sIiwK
ICkKIAogZGVmIF9fbWFpbl9fKCk6CiAgICAgaWYgbGVuKHN5cy5hcmd2KSA+IDE6Ci0gICAgICAg
IHByaW50KCJObyBhcmd1bWVudHMgZXhwZWN0ZWQsIGFib3J0aW5nIikKKyAgICAgICAgcHJpbnQo
dSJObyBhcmd1bWVudHMgZXhwZWN0ZWQsIGFib3J0aW5nIikKICAgICAgICAgcmV0dXJuCiAKICAg
ICBpZiBub3Qgb3MuYWNjZXNzKFRISVNfTkFNRSwgb3MuRl9PSyk6Ci0gICAgICAgIHByaW50KCJN
dXN0IGJlIHJ1biBmcm9tIHRoZSBkaXJlY3Rvcnkgb2YgIiArIFRISVNfTkFNRSArICIsIGFib3J0
aW5nIikKKyAgICAgICAgcHJpbnQodSJNdXN0IGJlIHJ1biBmcm9tIHRoZSBkaXJlY3Rvcnkgb2Yg
IiArIFRISVNfTkFNRSArIHUiLCBhYm9ydGluZyIpCiAgICAgICAgIHJldHVybgogCi0gICAgZm9y
IG5hbWUgaW4gb3MubGlzdGRpcigiLiIpOgorICAgIGZvciBuYW1lIGluIG9zLmxpc3RkaXIodSIu
Iik6CiAgICAgICAgIGlmIG5hbWUgPT0gVEhJU19OQU1FOgogICAgICAgICAgICAgY29udGludWUK
ICAgICAgICAgb3MucmVtb3ZlKG5hbWUpCiAKLSAgICBtYW5pZmVzdCA9IG9wZW4oIk1BTklGRVNU
IiwgInciKQorICAgIG1hbmlmZXN0ID0gb3Blbih1Ik1BTklGRVNUIiwgdSJ3IikKIAogICAgIGZv
ciBuYW1lLCBjb250ZW50cyBpbiBGSUxFUzoKICAgICAgICAgZm9yIGV4dGVuc2lvbiBpbiBFWFRF
TlNJT05TOgotICAgICAgICAgICAgZiA9IG9wZW4obmFtZSArICIuIiArIGV4dGVuc2lvbiwgInci
KQorICAgICAgICAgICAgZiA9IG9wZW4obmFtZSArIHUiLiIgKyBleHRlbnNpb24sIHUidyIpCiAg
ICAgICAgICAgICBmLndyaXRlKGNvbnRlbnRzKQogICAgICAgICAgICAgZi5jbG9zZSgpCi0gICAg
ICAgICAgICBtYW5pZmVzdC53cml0ZSgic3VwcG9ydCAiICsgbmFtZSArICIuIiArIGV4dGVuc2lv
biArICJcbiIpCisgICAgICAgICAgICBtYW5pZmVzdC53cml0ZSh1InN1cHBvcnQgIiArIG5hbWUg
KyB1Ii4iICsgZXh0ZW5zaW9uICsgdSJcbiIpCiAKICAgICBtYW5pZmVzdC5jbG9zZSgpCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L25vZGVzL0VsZW1lbnQtc2V0QXR0cmlidXRlLWNyYnVnLTExMzg0ODctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxl
bWVudC1zZXRBdHRyaWJ1dGUtY3JidWctMTEzODQ4Ny1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MmVkNGVhMWU3OWJjZTNkNGUzMzAwZThhOTcwOWRhMTQxNGNjODdjZQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVz
L0VsZW1lbnQtc2V0QXR0cmlidXRlLWNyYnVnLTExMzg0ODctZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMyBAQAorCitQQVNTIEF0dHJpYnV0ZXMgZmlyc3Qgc2VlbiBpbiBtaXhlZCBBU0NJSSBjYXNl
IHNob3VsZCBub3QgYmUgY29ycnVwdGVkLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LXNldEF0dHJpYnV0
ZS1jcmJ1Zy0xMTM4NDg3Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LXNldEF0dHJpYnV0ZS1jcmJ1Zy0xMTM4NDg3Lmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uOWFhOWVkODEzOWVlZGQxMzQxOTUwYjRlOTg2ZDE2YWI3ZDUxNDM3Zgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL25vZGVzL0VsZW1lbnQtc2V0QXR0cmlidXRlLWNyYnVnLTExMzg0ODcuaHRtbApA
QCAtMCwwICsxLDIyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisvLyBSZWdyZXNzaW9uIHRlc3Qg
Zm9yIGNyYnVnLmNvbS8xMTM4NDg3LgorLy8KKy8vIEl0IHdhcyBwb3NzaWJsZSBmb3IgYSBub24t
QVNDSUktbG93ZXJjYXNlIHN0cmluZyB0byBiZSB1c2VkIHdoZW4gaW5zZXJ0aW5nCisvLyBpbnRv
IHRoZSBhdHRyaWJ1dGUgY29sbGVjdGlvbiBpZiBhIGhhc2h0YWJsZSBlbmNvdW50ZXJlZCBpdCBk
dXJpbmcgcHJvYmluZworLy8gd2hpbGUgbG9va2luZyBmb3IgdGhlIEFTQ0lJLWxvd2VyY2FzZSBl
cXVpdmFsZW50LgorLy8KKy8vIFRoaXMgY2F1c2VkIHN1Y2ggYSBzdHJpbmcgdG8gYmUgaWxsZWdh
bGx5IHVzZWQgYXMgYW4gYXR0cmlidXRlIG5hbWUsIHRodXMKKy8vIGNhdXNpbmcgaW5jb25zaXN0
ZW50IGJlaGF2aW9yIGluIGZ1dHVyZSBhdHRyaWJ1dGUgbG9va3VwLgordGVzdCgoKSA9PiB7Cisg
IGNvbnN0IGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgIGVsLnNldEF0dHJp
YnV0ZSgnbGFiZWxYUUwnLCAnYWJjJyk7CisgIGVsLnNldEF0dHJpYnV0ZSgnX3ZhbHVlWFFMJywg
J2RlZicpOworICBhc3NlcnRfZXF1YWxzKGVsLmdldEF0dHJpYnV0ZSgnbGFiZWxYUUwnKSwgJ2Fi
YycpOworICBhc3NlcnRfZXF1YWxzKGVsLmdldEF0dHJpYnV0ZSgnbGFiZWx4cWwnKSwgJ2FiYycp
OworICBhc3NlcnRfZXF1YWxzKGVsLmdldEF0dHJpYnV0ZSgnX3ZhbHVlWFFMJyksICdkZWYnKTsK
KyAgYXNzZXJ0X2VxdWFscyhlbC5nZXRBdHRyaWJ1dGUoJ192YWx1ZXhxbCcpLCAnZGVmJyk7Cit9
LCAiQXR0cmlidXRlcyBmaXJzdCBzZWVuIGluIG1peGVkIEFTQ0lJIGNhc2Ugc2hvdWxkIG5vdCBi
ZSBjb3JydXB0ZWQuIik7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2Fs
bGJhY2stYXJndW1lbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2FsbGJhY2stYXJn
dW1lbnRzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZjJmMzk2MTUyMjQyNzdlZWNkZWZmYTQy
OTA3NzhjNzlmODdiOWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTXV0YXRpb25PYnNlcnZlci1jYWxsYmFj
ay1hcmd1bWVudHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorCitQQVNTIENhbGxiYWNr
IGlzIGludm9rZWQgd2l0aCB8dGhpc3wgdmFsdWUgb2YgTXV0YXRpb25PYnNlcnZlciBhbmQgdHdv
IGFyZ3VtZW50cworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVyLWNhbGxiYWNrLWFyZ3VtZW50
cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvTXV0YXRpb25PYnNlcnZlci1jYWxsYmFjay1hcmd1bWVudHMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kNjQ3NThjYjRmYTAwZDI1YWQzZGFmZTU3NmEwMDk4YzkwMjkyMmI3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9k
ZXMvTXV0YXRpb25PYnNlcnZlci1jYWxsYmFjay1hcmd1bWVudHMuaHRtbApAQCAtMCwwICsxLDMx
IEBACis8IURPQ1RZUEUgSFRNTD4KKzxtZXRhIGNoYXJzZXQ9dXRmLTg+Cis8dGl0bGU+TXV0YXRp
b25PYnNlcnZlcjogY2FsbGJhY2sgYXJndW1lbnRzPC90aXRsZT4KKzxsaW5rIHJlbD0iaGVscCIg
aHJlZj0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNub3RpZnktbXV0YXRpb24tb2JzZXJ2
ZXJzIj4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4K
KzxkaXYgaWQ9Im1vLXRhcmdldCI+PC9kaXY+Cis8ZGl2IGlkPSJsb2ciPjwvZGl2PgorPHNjcmlw
dD4KKyJ1c2Ugc3RyaWN0IjsKKworYXN5bmNfdGVzdCh0ID0+IHsKKyAgY29uc3QgbW9UYXJnZXQg
PSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjbW8tdGFyZ2V0Iik7CisgIGNvbnN0IG1vID0gbmV3
IE11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24ocmVjb3Jkcywgb2JzZXJ2ZXIpIHsKKyAgICB0LnN0
ZXAoKCkgPT4geworICAgICAgYXNzZXJ0X2VxdWFscyh0aGlzLCBtbyk7CisgICAgICBhc3NlcnRf
ZXF1YWxzKGFyZ3VtZW50cy5sZW5ndGgsIDIpOworICAgICAgYXNzZXJ0X3RydWUoQXJyYXkuaXNB
cnJheShyZWNvcmRzKSk7CisgICAgICBhc3NlcnRfZXF1YWxzKHJlY29yZHMubGVuZ3RoLCAxKTsK
KyAgICAgIGFzc2VydF90cnVlKHJlY29yZHNbMF0gaW5zdGFuY2VvZiBNdXRhdGlvblJlY29yZCk7
CisgICAgICBhc3NlcnRfZXF1YWxzKG9ic2VydmVyLCBtbyk7CisKKyAgICAgIG1vLmRpc2Nvbm5l
Y3QoKTsKKyAgICAgIHQuZG9uZSgpOworICAgIH0pOworICB9KTsKKworICBtby5vYnNlcnZlKG1v
VGFyZ2V0LCB7YXR0cmlidXRlczogdHJ1ZX0pOworICBtb1RhcmdldC5jbGFzc05hbWUgPSAidHJp
Z2dlci1tdXRhdGlvbiI7Cit9LCAiQ2FsbGJhY2sgaXMgaW52b2tlZCB3aXRoIHx0aGlzfCB2YWx1
ZSBvZiBNdXRhdGlvbk9ic2VydmVyIGFuZCB0d28gYXJndW1lbnRzIik7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L25vZGVzL05vZGUtY2xvbmVOb2RlLW9uLWluYWN0aXZlLWRvY3VtZW50LWNyYXNoLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Ob2Rl
LWNsb25lTm9kZS1vbi1pbmFjdGl2ZS1kb2N1bWVudC1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNi
ZDdhMWU2YTUwMGU1NjcxYzFlMGE3MWM1ZGNiOTYzY2FiNzI3YmEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9O
b2RlLWNsb25lTm9kZS1vbi1pbmFjdGl2ZS1kb2N1bWVudC1jcmFzaC5odG1sCkBAIC0wLDAgKzEs
NiBAQAorPGlmcmFtZSBpZD0iaSI+PC9pZnJhbWU+Cis8c2NyaXB0PgordmFyIGRvYyA9IGkuY29u
dGVudERvY3VtZW50OworaS5yZW1vdmUoKTsKK2RvYy5jbG9uZU5vZGUoKTsKKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vbm9kZXMvUGFyZW50Tm9kZS1yZXBsYWNlQ2hpbGRyZW4uaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL1BhcmVudE5vZGUtcmVwbGFj
ZUNoaWxkcmVuLmh0bWwKaW5kZXggY2Q0ODk3YzM3ODRmY2NkZWJiMzY1NWRkNjkyMjM0MzdmNjNk
MDBkNS4uOGYyZmRhOWQ5OWMxNTRmN2I4ZWIwOGFlZmUwNjA0YmYzN2NiNGEzNyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMv
UGFyZW50Tm9kZS1yZXBsYWNlQ2hpbGRyZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9QYXJlbnROb2RlLXJlcGxhY2VDaGls
ZHJlbi5odG1sCkBAIC0xMDIsMTQgKzEwMiwxNCBAQAogCiAgICAgICBjb25zdCBvYnNlcnZlciA9
IG5ldyBNdXRhdGlvbk9ic2VydmVyKG11dGF0aW9ucyA9PiB7CiAgICAgICAgIHQuc3RlcCgoKSA9
PiB7Ci0gICAgICAgICAgYXNzZXJ0X2VxdWFscyhwaGFzZSwgMSk7Ci0gICAgICAgICAgYXNzZXJ0
X2VxdWFscyhtdXRhdGlvbnMubGVuZ3RoLCAxKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKHBo
YXNlLCAxLCAicGhhc2UiKTsKKyAgICAgICAgICBhc3NlcnRfZXF1YWxzKG11dGF0aW9ucy5sZW5n
dGgsIDEsICJtdXRhdGlvbnMubGVuZ3RoIik7CiAgICAgICAgICAgY29uc3QgbXV0YXRpb24gPSBt
dXRhdGlvbnNbMF07Ci0gICAgICAgICAgYXNzZXJ0X2VxdWFscyhtdXRhdGlvbi50eXBlLCAiY2hp
bGRMaXN0Iik7Ci0gICAgICAgICAgYXNzZXJ0X2VxdWFscyhtdXRhdGlvbi5hZGRlZE5vZGVzLmxl
bmd0aCwgMik7Ci0gICAgICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhbLi4ubXV0YXRpb24uYWRk
ZWROb2Rlc10sIGluc2VydGlvbnMpOwotICAgICAgICAgIGFzc2VydF9lcXVhbHMobXV0YXRpb24u
cmVtb3ZlZE5vZGVzLmxlbmd0aCwgMik7Ci0gICAgICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhb
Li4ubXV0YXRpb24ucmVtb3ZlZE5vZGVzXSwgY2hpbGRyZW4pOworICAgICAgICAgIGFzc2VydF9l
cXVhbHMobXV0YXRpb24udHlwZSwgImNoaWxkTGlzdCIsICJtdXRhdGlvbi50eXBlIik7CisgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyhtdXRhdGlvbi5hZGRlZE5vZGVzLmxlbmd0aCwgMiwgImFkZGVk
IG5vZGVzIGxlbmd0aCIpOworICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLm11dGF0
aW9uLmFkZGVkTm9kZXNdLCBpbnNlcnRpb25zLCAiYWRkZWQgbm9kZXMiKTsKKyAgICAgICAgICBh
c3NlcnRfZXF1YWxzKG11dGF0aW9uLnJlbW92ZWROb2Rlcy5sZW5ndGgsIDIsICJyZW1vdmVkIG5v
ZGVzIGxlbmd0aCIpOworICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLm11dGF0aW9u
LnJlbW92ZWROb2Rlc10sIGNoaWxkcmVuLCAicmVtb3ZlZCBub2RlcyIpOwogICAgICAgICB9KTsK
ICAgICAgICAgdC5kb25lKCk7CiAgICAgICB9KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL2VuY29kaW5nLnB5IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvZW5jb2Rp
bmcucHkKaW5kZXggNWY4ODllOGRiMmE1NWNkZmQyM2IwMDgzYTQ1YTE0N2E5ZmI4N2FiMi4uMjgx
YWEwYmNlNDkxNjI0NjVmNGEwMTFmYTUwYjhiYmU4MzFlMjEzYiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvZW5jb2Rpbmcu
cHkKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvZW5jb2RpbmcucHkKQEAgLTEsNSArMSwxMCBAQAotZnJvbSBjZ2kgaW1wb3J0IGVzY2Fw
ZQordHJ5OgorICAgIGZyb20gY2dpIGltcG9ydCBlc2NhcGUKK2V4Y2VwdCBJbXBvcnRFcnJvcjoK
KyAgICBmcm9tIGh0bWwgaW1wb3J0IGVzY2FwZQorCitmcm9tIHdwdHNlcnZlLnV0aWxzIGltcG9y
dCBpc29tb3JwaGljX2RlY29kZQogCiBkZWYgbWFpbihyZXF1ZXN0LCByZXNwb25zZSk6Ci0gICAg
bGFiZWwgPSByZXF1ZXN0LkdFVC5maXJzdCgnbGFiZWwnKQotICAgIHJldHVybiAiIiI8IWRvY3R5
cGUgaHRtbD48bWV0YSBjaGFyc2V0PSIlcyI+IiIiICUgZXNjYXBlKGxhYmVsKQorICAgIGxhYmVs
ID0gcmVxdWVzdC5HRVQuZmlyc3QoYidsYWJlbCcpCisgICAgcmV0dXJuIHUiIiI8IWRvY3R5cGUg
aHRtbD48bWV0YSBjaGFyc2V0PSIlcyI+IiIiICUgZXNjYXBlKGlzb21vcnBoaWNfZGVjb2RlKGxh
YmVsKSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL25vZGVzL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvdzNjLWltcG9ydC5sb2cKaW5kZXggMjdjOWJj
NzA0NWYxYmRiODI1MDIyNGUzNWJmYTg5NzRmOGM2NTI0Ni4uODcyM2ZlNTJjYjEwMWVmNWI1Nzhh
ODNhNDM3NjEyNGQxZjBhNGNiNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvdzNjLWltcG9ydC5sb2cKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvdzNjLWltcG9y
dC5sb2cKQEAgLTI5LDggKzI5LDExIEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvQ2hpbGROb2RlLXJlcGxhY2VX
aXRoLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS9ub2Rlcy9Db21tZW50LVRleHQtY29uc3RydWN0b3IuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Db21tZW50LWNvbnN0cnVjdG9yLmh0
bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVEb2N1bWVudC13aXRoLW51bGwtYnJvd3NpbmctY29u
dGV4dC1jcmFzaC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlRG9jdW1lbnQuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUlt
cGxlbWVudGF0aW9uLWNyZWF0ZURvY3VtZW50VHlwZS5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3Jl
YXRlSFRNTERvY3VtZW50LXdpdGgtbnVsbC1icm93c2luZy1jb250ZXh0LWNyYXNoLmh0bWwKKy9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01J
bXBsZW1lbnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1pbXBsZW1lbnRhdGlv
bi5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50Lmh0bWwKIC9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1l
bnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQuanMKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlvbi1oYXNGZWF0dXJl
Lmh0bWwKQEAgLTEyMyw2ICsxMjYsNyBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0VsZW1lbnQtcmVtb3ZlLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9FbGVtZW50LXJlbW92ZUF0dHJpYnV0ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1yZW1vdmVBdHRyaWJ1dGVOUy5o
dG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9k
ZXMvRWxlbWVudC1zZXRBdHRyaWJ1dGUtY3JidWctMTEzODQ4Ny5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1zZXRBdHRy
aWJ1dGUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL0VsZW1lbnQtc2libGluZ0VsZW1lbnQtbnVsbC1zdmcuc3ZnCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1zaWJs
aW5nRWxlbWVudC1udWxsLXhodG1sLnhodG1sCkBAIC0xMzAsNiArMTM0LDcgQEAgTGlzdCBvZiBm
aWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9u
b2Rlcy9FbGVtZW50LXRhZ05hbWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0VsZW1lbnQtd2Via2l0TWF0Y2hlc1NlbGVjdG9yLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9NdXRhdGlvbk9ic2VydmVyLWF0dHJpYnV0ZXMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2FsbGJh
Y2stYXJndW1lbnRzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVyLWNoYXJhY3RlckRhdGEuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL011dGF0
aW9uT2JzZXJ2ZXItY2hpbGRMaXN0Lmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVyLWRpc2Nvbm5lY3QuaHRt
bApAQCAtMTQ0LDYgKzE0OSw3IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTm9kZS1jbG9uZU5vZGUtWE1MRG9j
dW1lbnQuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL05vZGUtY2xvbmVOb2RlLWRvY3VtZW50LXdpdGgtZG9jdHlwZS5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTm9kZS1j
bG9uZU5vZGUtZXh0ZXJuYWwtc3R5bGVzaGVldC1uby1iYy5zdWIuaHRtbAorL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL05vZGUtY2xvbmVOb2Rl
LW9uLWluYWN0aXZlLWRvY3VtZW50LWNyYXNoLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Ob2RlLWNsb25lTm9kZS1zdmcuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL05v
ZGUtY2xvbmVOb2RlLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ub2Rlcy9Ob2RlLWNvbXBhcmVEb2N1bWVudFBvc2l0aW9uLmh0bWwKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jh
bmdlcy9SYW5nZS1pbnNlcnROb2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtaW5zZXJ0Tm9kZS5odG1sCmluZGV4IDA0
NzI3ZGJjNGQyODU1ZGNlMzRjM2E5MzU2ZjE2MWZkZWIxZTBhODYuLmIwYTlkNDNmOTgyZGQ2MjE3
MzhkMDE5Y2Q4ODFiMDJmMDJjZDRhMzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1pbnNlcnROb2RlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFu
Z2VzL1JhbmdlLWluc2VydE5vZGUuaHRtbApAQCAtNzUsMTkgKzc1LDE5IEBAIGZ1bmN0aW9uIHRl
c3RJbnNlcnROb2RlKGksIGopIHsKICAgICAgICAgICAgICJVbmV4cGVjdGVkIGV4Y2VwdGlvbiB0
aHJvd24gd2hlbiBzZXR0aW5nIHVwIFJhbmdlIGZvciBzaW11bGF0ZWQgaW5zZXJ0Tm9kZSgpIik7
CiAgICAgICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGFjdHVhbFJhbmdlLCAib2JqZWN0IiwKICAg
ICAgICAgICAgICJ0eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSIpOwotICAg
ICAgICBhc3NlcnRfZmFsc2UoYWN0dWFsUmFuZ2UgPT09IG51bGwsCisgICAgICAgIGFzc2VydF9u
b3RfZXF1YWxzKGFjdHVhbFJhbmdlLCBudWxsLAogICAgICAgICAgICAgIlJhbmdlIHByb2R1Y2Vk
IGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICAgICAgYXNzZXJ0X2VxdWFscyh0eXBl
b2YgZXhwZWN0ZWRSYW5nZSwgIm9iamVjdCIsCiAgICAgICAgICAgICAidHlwZW9mIFJhbmdlIHBy
b2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIpOwotICAgICAgICBhc3NlcnRfZmFsc2UoZXhwZWN0
ZWRSYW5nZSA9PT0gbnVsbCwKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoZXhwZWN0ZWRSYW5n
ZSwgbnVsbCwKICAgICAgICAgICAgICJSYW5nZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUg
d2FzIG51bGwiKTsKICAgICAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgYWN0dWFsTm9kZSwgIm9i
amVjdCIsCiAgICAgICAgICAgICAidHlwZW9mIE5vZGUgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFt
ZSIpOwotICAgICAgICBhc3NlcnRfZmFsc2UoYWN0dWFsTm9kZSA9PT0gbnVsbCwKKyAgICAgICAg
YXNzZXJ0X25vdF9lcXVhbHMoYWN0dWFsTm9kZSwgbnVsbCwKICAgICAgICAgICAgICJOb2RlIHBy
b2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICAgICAgYXNzZXJ0X2VxdWFs
cyh0eXBlb2YgZXhwZWN0ZWROb2RlLCAib2JqZWN0IiwKICAgICAgICAgICAgICJ0eXBlb2YgTm9k
ZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUiKTsKLSAgICAgICAgYXNzZXJ0X2ZhbHNlKGV4
cGVjdGVkTm9kZSA9PT0gbnVsbCwKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoZXhwZWN0ZWRO
b2RlLCBudWxsLAogICAgICAgICAgICAgIk5vZGUgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZyYW1l
IHdhcyBudWxsIik7CiAKICAgICAgICAgLy8gV2Ugd2FudCB0byB0ZXN0IHRoYXQgdGhlIHRyZWVz
IGNvbnRhaW5pbmcgdGhlIHJhbmdlcyBhcmUgZXF1YWwsIGFuZApAQCAtMTc5LDE5ICsxNzksMTkg
QEAgZnVuY3Rpb24gdGVzdEluc2VydE5vZGUoaSwgaikgewogICAgICAgICAgICAgIlVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHRocm93biB3aGVuIHNldHRpbmcgdXAgUmFuZ2UgZm9yIHNpbXVsYXRlZCBp
bnNlcnROb2RlKCkiKTsKICAgICAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgYWN0dWFsUmFuZ2Us
ICJvYmplY3QiLAogICAgICAgICAgICAgInR5cGVvZiBSYW5nZSBwcm9kdWNlZCBpbiBhY3R1YWwg
aWZyYW1lIik7Ci0gICAgICAgIGFzc2VydF9mYWxzZShhY3R1YWxSYW5nZSA9PT0gbnVsbCwKKyAg
ICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoYWN0dWFsUmFuZ2UsIG51bGwsCiAgICAgICAgICAgICAi
UmFuZ2UgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgICAgICBhc3Nl
cnRfZXF1YWxzKHR5cGVvZiBleHBlY3RlZFJhbmdlLCAib2JqZWN0IiwKICAgICAgICAgICAgICJ0
eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZyYW1lIik7Ci0gICAgICAgIGFzc2Vy
dF9mYWxzZShleHBlY3RlZFJhbmdlID09PSBudWxsLAorICAgICAgICBhc3NlcnRfbm90X2VxdWFs
cyhleHBlY3RlZFJhbmdlLCBudWxsLAogICAgICAgICAgICAgIlJhbmdlIHByb2R1Y2VkIGluIGV4
cGVjdGVkIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBh
Y3R1YWxOb2RlLCAib2JqZWN0IiwKICAgICAgICAgICAgICJ0eXBlb2YgTm9kZSBwcm9kdWNlZCBp
biBhY3R1YWwgaWZyYW1lIik7Ci0gICAgICAgIGFzc2VydF9mYWxzZShhY3R1YWxOb2RlID09PSBu
dWxsLAorICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhhY3R1YWxOb2RlLCBudWxsLAogICAgICAg
ICAgICAgIk5vZGUgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgICAg
ICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBleHBlY3RlZE5vZGUsICJvYmplY3QiLAogICAgICAgICAg
ICAgInR5cGVvZiBOb2RlIHByb2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIpOwotICAgICAgICBh
c3NlcnRfZmFsc2UoZXhwZWN0ZWROb2RlID09PSBudWxsLAorICAgICAgICBhc3NlcnRfbm90X2Vx
dWFscyhleHBlY3RlZE5vZGUsIG51bGwsCiAgICAgICAgICAgICAiTm9kZSBwcm9kdWNlZCBpbiBl
eHBlY3RlZCBpZnJhbWUgd2FzIG51bGwiKTsKIAogICAgICAgICBmb3IgKHZhciBrID0gMDsgayA8
IGFjdHVhbFJvb3RzLmxlbmd0aDsgaysrKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtbXV0YXRpb25zLmpz
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2Vz
L1JhbmdlLW11dGF0aW9ucy5qcwppbmRleCAzODM3ZGU5MjgyODlhN2MxMWQ3MGY1YWZjNWYzZGNh
NDRjMjNhYjRjLi4yM2MwMTNhYzZhMWQ3YTE1NjM3MzlhZmU1MGYxNTFhZjQ5YjRmZmE2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9y
YW5nZXMvUmFuZ2UtbXV0YXRpb25zLmpzCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1tdXRhdGlvbnMuanMKQEAgLTYzLDcg
KzYzLDcgQEAgZnVuY3Rpb24gZG9UZXN0cyhzb3VyY2VUZXN0cywgZGVzY0ZuLCB0ZXN0Rm4pIHsK
ICAgICAgIGZ1bmN0aW9uKHBhcmFtcykgeyByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgIHZh
ciBldmFsZWRQYXJhbXMgPSBwYXJhbXMubWFwKGV2YWwpOwogICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGV2YWxlZFBhcmFtcy5sZW5ndGg7IGkrKykgewotICAgICAgICAgIGFzc2VydF90cnVl
KHR5cGVvZiBldmFsZWRQYXJhbXNbaV0gIT0gInVuZGVmaW5lZCIsCisgICAgICAgICAgYXNzZXJ0
X25vdF9lcXVhbHModHlwZW9mIGV2YWxlZFBhcmFtc1tpXSwgInVuZGVmaW5lZCIsCiAgICAgICAg
ICAgICAiVGVzdCBidWc6ICIgKyBwYXJhbXNbaV0gKyAiIGlzIHVuZGVmaW5lZCIpOwogICAgICAg
ICB9CiAgICAgICAgIHJldHVybiB0ZXN0Rm4uYXBwbHkobnVsbCwgZXZhbGVkUGFyYW1zKTsKQEAg
LTc5LDcgKzc5LDcgQEAgZnVuY3Rpb24gZG9UZXN0cyhzb3VyY2VUZXN0cywgZGVzY0ZuLCB0ZXN0
Rm4pIHsKICAgICAgIGZ1bmN0aW9uKHBhcmFtcykgeyByZXR1cm4gZnVuY3Rpb24oc2VsZWN0ZWRS
YW5nZSkgewogICAgICAgICB2YXIgZXZhbGVkUGFyYW1zID0gcGFyYW1zLnNsaWNlKDAsIGxlbiAt
IDQpLm1hcChldmFsKTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmFsZWRQYXJhbXMu
bGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICBhc3NlcnRfdHJ1ZSh0eXBlb2YgZXZhbGVkUGFyYW1z
W2ldICE9ICJ1bmRlZmluZWQiLAorICAgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKHR5cGVvZiBl
dmFsZWRQYXJhbXNbaV0sICJ1bmRlZmluZWQiLAogICAgICAgICAgICAgIlRlc3QgYnVnOiAiICsg
cGFyYW1zW2ldICsgIiBpcyB1bmRlZmluZWQiKTsKICAgICAgICAgfQogICAgICAgICAvLyBPdmVy
cmlkZSBpbnB1dCByYW5nZSB3aXRoIHRoZSBvbmUgdGhhdCB3YXMgYWN0dWFsbHkgc2VsZWN0ZWQg
d2hlbiBjb21wdXRpbmcgdGhlIGV4cGVjdGVkIHJlc3VsdC4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1zdXJy
b3VuZENvbnRlbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2Utc3Vycm91bmRDb250ZW50cy5odG1sCmluZGV4IGMxZWQz
MGQwMDUzZjIxNTc3NzZiOGM1OGIxOWNlODJjYWZiNWU3NGYuLmM5ZDQ3ZmNiYWQwZGVlOTE3YmU5
MDQ2OGE5ZTg0NGQ2YzUxYzRiNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1zdXJyb3VuZENvbnRlbnRzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
cmFuZ2VzL1JhbmdlLXN1cnJvdW5kQ29udGVudHMuaHRtbApAQCAtMTI1LDE5ICsxMjUsMTkgQEAg
ZnVuY3Rpb24gdGVzdFN1cnJvdW5kQ29udGVudHMoaSwgaikgewogICAgICAgIlVuZXhwZWN0ZWQg
ZXhjZXB0aW9uIHRocm93biB3aGVuIHNldHRpbmcgdXAgUmFuZ2UgZm9yIHNpbXVsYXRlZCBzdXJy
b3VuZENvbnRlbnRzKCkiKTsKICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBhY3R1YWxSYW5nZSwg
Im9iamVjdCIsCiAgICAgICAidHlwZW9mIFJhbmdlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUi
KTsKLSAgICBhc3NlcnRfZmFsc2UoYWN0dWFsUmFuZ2UgPT09IG51bGwsCisgICAgYXNzZXJ0X25v
dF9lcXVhbHMoYWN0dWFsUmFuZ2UsIG51bGwsCiAgICAgICAiUmFuZ2UgcHJvZHVjZWQgaW4gYWN0
dWFsIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGV4cGVjdGVk
UmFuZ2UsICJvYmplY3QiLAogICAgICAgInR5cGVvZiBSYW5nZSBwcm9kdWNlZCBpbiBleHBlY3Rl
ZCBpZnJhbWUiKTsKLSAgICBhc3NlcnRfZmFsc2UoZXhwZWN0ZWRSYW5nZSA9PT0gbnVsbCwKKyAg
ICBhc3NlcnRfbm90X2VxdWFscyhleHBlY3RlZFJhbmdlLCBudWxsLAogICAgICAgIlJhbmdlIHBy
b2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgIGFzc2VydF9lcXVhbHMo
dHlwZW9mIGFjdHVhbE5vZGUsICJvYmplY3QiLAogICAgICAgInR5cGVvZiBOb2RlIHByb2R1Y2Vk
IGluIGFjdHVhbCBpZnJhbWUiKTsKLSAgICBhc3NlcnRfZmFsc2UoYWN0dWFsTm9kZSA9PT0gbnVs
bCwKKyAgICBhc3NlcnRfbm90X2VxdWFscyhhY3R1YWxOb2RlLCBudWxsLAogICAgICAgIk5vZGUg
cHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSB3YXMgbnVsbCIpOwogICAgIGFzc2VydF9lcXVhbHMo
dHlwZW9mIGV4cGVjdGVkTm9kZSwgIm9iamVjdCIsCiAgICAgICAidHlwZW9mIE5vZGUgcHJvZHVj
ZWQgaW4gZXhwZWN0ZWQgaWZyYW1lIik7Ci0gICAgYXNzZXJ0X2ZhbHNlKGV4cGVjdGVkTm9kZSA9
PT0gbnVsbCwKKyAgICBhc3NlcnRfbm90X2VxdWFscyhleHBlY3RlZE5vZGUsIG51bGwsCiAgICAg
ICAiTm9kZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUgd2FzIG51bGwiKTsKIAogICAgIC8v
IFdlIHdhbnQgdG8gdGVzdCB0aGF0IHRoZSB0cmVlcyBjb250YWluaW5nIHRoZSByYW5nZXMgYXJl
IGVxdWFsLCBhbmQKQEAgLTIyMiwxOSArMjIyLDE5IEBAIGZ1bmN0aW9uIHRlc3RTdXJyb3VuZENv
bnRlbnRzKGksIGopIHsKICAgICAgICJVbmV4cGVjdGVkIGV4Y2VwdGlvbiB0aHJvd24gd2hlbiBz
ZXR0aW5nIHVwIFJhbmdlIGZvciBzaW11bGF0ZWQgc3Vycm91bmRDb250ZW50cygpIik7CiAgICAg
YXNzZXJ0X2VxdWFscyh0eXBlb2YgYWN0dWFsUmFuZ2UsICJvYmplY3QiLAogICAgICAgInR5cGVv
ZiBSYW5nZSBwcm9kdWNlZCBpbiBhY3R1YWwgaWZyYW1lIik7Ci0gICAgYXNzZXJ0X2ZhbHNlKGFj
dHVhbFJhbmdlID09PSBudWxsLAorICAgIGFzc2VydF9ub3RfZXF1YWxzKGFjdHVhbFJhbmdlLCBu
dWxsLAogICAgICAgIlJhbmdlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsK
ICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBleHBlY3RlZFJhbmdlLCAib2JqZWN0IiwKICAgICAg
ICJ0eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZyYW1lIik7Ci0gICAgYXNzZXJ0
X2ZhbHNlKGV4cGVjdGVkUmFuZ2UgPT09IG51bGwsCisgICAgYXNzZXJ0X25vdF9lcXVhbHMoZXhw
ZWN0ZWRSYW5nZSwgbnVsbCwKICAgICAgICJSYW5nZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJh
bWUgd2FzIG51bGwiKTsKICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBhY3R1YWxOb2RlLCAib2Jq
ZWN0IiwKICAgICAgICJ0eXBlb2YgTm9kZSBwcm9kdWNlZCBpbiBhY3R1YWwgaWZyYW1lIik7Ci0g
ICAgYXNzZXJ0X2ZhbHNlKGFjdHVhbE5vZGUgPT09IG51bGwsCisgICAgYXNzZXJ0X25vdF9lcXVh
bHMoYWN0dWFsTm9kZSwgbnVsbCwKICAgICAgICJOb2RlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJh
bWUgd2FzIG51bGwiKTsKICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBleHBlY3RlZE5vZGUsICJv
YmplY3QiLAogICAgICAgInR5cGVvZiBOb2RlIHByb2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIp
OwotICAgIGFzc2VydF9mYWxzZShleHBlY3RlZE5vZGUgPT09IG51bGwsCisgICAgYXNzZXJ0X25v
dF9lcXVhbHMoZXhwZWN0ZWROb2RlLCBudWxsLAogICAgICAgIk5vZGUgcHJvZHVjZWQgaW4gZXhw
ZWN0ZWQgaWZyYW1lIHdhcyBudWxsIik7CiAKICAgICBmb3IgKHZhciBrID0gMDsgayA8IGFjdHVh
bFJvb3RzLmxlbmd0aDsgaysrKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvdzNjLWltcG9y
dC5sb2cKaW5kZXggNTc5OGQyOTJkNzM0OWJhNWE5YjA0ZmJkMDcyNjBjYmUwZTY1OWIxOC4uMGQ1
ZmQwOTBjYjFlMTU5OWM5ZDUxZmJiMThkOTM2NTU0MzA4OTJkMiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL3czYy1pbXBv
cnQubG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3Jhbmdlcy93M2MtaW1wb3J0LmxvZwpAQCAtMTQsNiArMTQsNyBAQCBQcm9wZXJ0eSB2YWx1
ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKIE5vbmUKIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogTGlz
dCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9yYW5nZXMvUmFuZ2UtYWRvcHQtdGVzdC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWF0dHJpYnV0ZXMuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9S
YW5nZS1jbG9uZUNvbnRlbnRzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtY2xvbmVSYW5nZS5odG1sCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJz
YWwvVHJlZVdhbGtlci1hY2NlcHROb2RlLWZpbHRlci5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItYWNjZXB0
Tm9kZS1maWx0ZXIuaHRtbAppbmRleCBhY2QzODA0ZmFkZTBlN2U0YTM3MzVjYzY4Mjc2ZWE1NjY5
NDE2NDA3Li4yODJkYzlkMTQyYjE1NTE1NDYzZWNlMjUyNTVkNWJkNmY1ZWYxOGJlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2
ZXJzYWwvVHJlZVdhbGtlci1hY2NlcHROb2RlLWZpbHRlci5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2Vy
LWFjY2VwdE5vZGUtZmlsdGVyLmh0bWwKQEAgLTEsNyArMSw3IEBACiA8IURPQ1RZUEUgaHRtbD4K
IDxodG1sPgogPCEtLQotVGVzdCBhZGFwdGVkIGZyb20gaHR0cHM6Ly9keHIubW96aWxsYS5vcmcv
Y2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9k
b20vVHJlZVdhbGtlci9zY3JpcHQtdGVzdHMvYWNjZXB0Tm9kZS1maWx0ZXIuanMKK1Rlc3QgYWRh
cHRlZCBmcm9tIGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRl
c3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL2FjY2VwdE5vZGUtZmlsdGVyLmpz
CiAtLT4KIDxoZWFkPgogPHRpdGxlPlRyZWVXYWxrZXI6IGFjY2VwdE5vZGUtZmlsdGVyPC90aXRs
ZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLWJhc2ljLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1iYXNp
Yy5odG1sCmluZGV4IDRlMTRhYzQyMWVmNWU5OTg3NTRmNWIzMzBjOGY1MTM2NzUyMjc2NmUuLmJk
OGIxMTI4NDA4YzkzYjYzYzZhNmIxOTUyOWYzNWEyYWM2NjQ1YTkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVl
V2Fsa2VyLWJhc2ljLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItYmFzaWMuaHRtbApAQCAtMSw3ICsx
LDcgQEAKIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8IS0tCi1UZXN0IGFkYXB0ZWQgZnJvbSBo
dHRwczovL2R4ci5tb3ppbGxhLm9yZy9jaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3BhcnR5L1dl
YktpdC9MYXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL1RyZWVXYWxrZXItYmFzaWMuaHRt
bAorVGVzdCBhZGFwdGVkIGZyb20gY2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJL
aXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9UcmVlV2Fsa2VyLWJhc2ljLmh0bWwK
IC0tPgogPGhlYWQ+CiA8dGl0bGU+VHJlZVdhbGtlcjogQmFzaWMgdGVzdDwvdGl0bGU+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90
cmF2ZXJzYWwvVHJlZVdhbGtlci1jdXJyZW50Tm9kZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItY3VycmVu
dE5vZGUuaHRtbAppbmRleCA3YzVkODgxMGE4NmI4MzEwNDk5OTI1ZjhkNjhlZjRkNjY4NWU3ZTc2
Li5mNzk1YWJlMGQyOTI0YWRiNGIxNTljMDc5NjhiMmQ2YzYxMTUxMjVlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwv
VHJlZVdhbGtlci1jdXJyZW50Tm9kZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLWN1cnJlbnROb2Rl
Lmh0bWwKQEAgLTEsNyArMSw3IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPCEtLQotVGVz
dCBhZGFwdGVkIGZyb20gaHR0cHM6Ly9keHIubW96aWxsYS5vcmcvY2hyb21pdW0vc291cmNlL3Ny
Yy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9yZXNv
dXJjZXMvVHJlZVdhbGtlci1jdXJyZW50Tm9kZS5qcworVGVzdCBhZGFwdGVkIGZyb20gY2hyb21p
dW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJl
ZVdhbGtlci9yZXNvdXJjZXMvVHJlZVdhbGtlci1jdXJyZW50Tm9kZS5qcwogLS0+CiA8aGVhZD4K
IDx0aXRsZT5UcmVlV2Fsa2VyOiBjdXJyZW50Tm9kZTwvdGl0bGU+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJl
ZVdhbGtlci1wcmV2aW91c05vZGVMYXN0Q2hpbGRSZWplY3QuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXBy
ZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVjdC5odG1sCmluZGV4IDAxNDdiODExMTJlZjcyMjc5Y2Ex
NmNjNTUzMmZkODlhNWUyZGNhMzcuLmUyNGNhMDZlMjA5NTQ2MmNmNjk3MzczNTRiMjVlM2Q3MGRj
ZDA4ZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXByZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVj
dC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXByZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVjdC5odG1s
CkBAIC0xLDcgKzEsNyBAQAogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDwhLS0KLVRlc3QgYWRh
cHRlZCBmcm9tIGh0dHBzOi8vZHhyLm1vemlsbGEub3JnL2Nocm9taXVtL3NvdXJjZS9zcmMvdGhp
cmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRl
c3RzL3ByZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVjdC5qcworVGVzdCBhZGFwdGVkIGZyb20gY2hy
b21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20v
VHJlZVdhbGtlci9zY3JpcHQtdGVzdHMvcHJldmlvdXNOb2RlTGFzdENoaWxkUmVqZWN0LmpzCiAt
LT4KIDxoZWFkPgogPHRpdGxlPlRyZWVXYWxrZXI6IHByZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVj
dDwvdGl0bGU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1wcmV2aW91c1NpYmxpbmdMYXN0Q2hp
bGRTa2lwLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1wcmV2aW91c1NpYmxpbmdMYXN0Q2hpbGRTa2lwLmh0
bWwKaW5kZXggNTU2NjU2NGQyNDAzYTcxZGQ2OTUxMDk0MTI0NjU3ZDM5YmU0MDI0YS4uNWUyOGFh
NTE0MmY1ZTY2MDBkZDRjNWQyOGUxZDE2NzdhNDUxZjY2MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxr
ZXItcHJldmlvdXNTaWJsaW5nTGFzdENoaWxkU2tpcC5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXBy
ZXZpb3VzU2libGluZ0xhc3RDaGlsZFNraXAuaHRtbApAQCAtMSw3ICsxLDcgQEAKIDwhRE9DVFlQ
RSBodG1sPgogPGh0bWw+CiA8IS0tCi1UZXN0IGFkYXB0ZWQgZnJvbSBodHRwczovL2R4ci5tb3pp
bGxhLm9yZy9jaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3BhcnR5L1dlYktpdC9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0cy9wcmV2aW91c1NpYmxpbmdMYXN0Q2hp
bGRTa2lwLmpzCitUZXN0IGFkYXB0ZWQgZnJvbSBjaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3Bh
cnR5L1dlYktpdC9MYXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0cy9w
cmV2aW91c1NpYmxpbmdMYXN0Q2hpbGRTa2lwLmpzCiAtLT4KIDxoZWFkPgogPHRpdGxlPlRyZWVX
YWxrZXI6IHByZXZpb3VzU2libGluZ0xhc3RDaGlsZFNraXA8L3RpdGxlPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2Fs
L1RyZWVXYWxrZXItdHJhdmVyc2FsLXJlamVjdC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItdHJhdmVyc2Fs
LXJlamVjdC5odG1sCmluZGV4IDUzYjczNDE4OGM0NzdiNGJlNjNjYjJiNjY3ZDEzYmY1YTM1MjUy
ZmEuLmQ2Yzk2YWRjMTE0ZjZiOGMxMzFlZTBlOGJmNDk0Njg2YmIzNjRkYTggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNh
bC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1yZWplY3QuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2
ZXJzYWwtcmVqZWN0Lmh0bWwKQEAgLTEsNyArMSw3IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1s
PgogPCEtLQotVGVzdCBhZGFwdGVkIGZyb20gaHR0cHM6Ly9keHIubW96aWxsYS5vcmcvY2hyb21p
dW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJl
ZVdhbGtlci9zY3JpcHQtdGVzdHMvdHJhdmVyc2FsLXJlamVjdC5qcworVGVzdCBhZGFwdGVkIGZy
b20gY2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFz
dC9kb20vVHJlZVdhbGtlci9zY3JpcHQtdGVzdHMvdHJhdmVyc2FsLXJlamVjdC5qcwogLS0+CiA8
aGVhZD4KIDx0aXRsZT5UcmVlV2Fsa2VyOiB0cmF2ZXJzYWwtcmVqZWN0PC90aXRsZT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Ry
YXZlcnNhbC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1za2lwLW1vc3QuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2Vy
LXRyYXZlcnNhbC1za2lwLW1vc3QuaHRtbAppbmRleCAxNzM5MjJjMTVlNjgyN2E3OWFkYjRlY2Fm
MTBlYTU0OGM0MDc1YzI0Li5iNmVhZmQ0NTk2ODJlOWU3ZGQwMjljOTZkYzQ2ZTEzNGZlMDJhNGU4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwtc2tpcC1tb3N0Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2Fs
L1RyZWVXYWxrZXItdHJhdmVyc2FsLXNraXAtbW9zdC5odG1sCkBAIC0xLDcgKzEsNyBAQAogPCFE
T0NUWVBFIGh0bWw+CiA8aHRtbD4KIDwhLS0KLVRlc3QgYWRhcHRlZCBmcm9tIGh0dHBzOi8vZHhy
Lm1vemlsbGEub3JnL2Nocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91
dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3RyYXZlcnNhbC1za2lwLW1v
c3QuanMKK1Rlc3QgYWRhcHRlZCBmcm9tIGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkv
V2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3RyYXZl
cnNhbC1za2lwLW1vc3QuanMKIC0tPgogPGhlYWQ+CiA8dGl0bGU+VHJlZVdhbGtlcjogdHJhdmVy
c2FsLXNraXAtbW9zdDwvdGl0bGU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwt
c2tpcC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vdHJhdmVyc2FsL1RyZWVXYWxrZXItdHJhdmVyc2FsLXNraXAuaHRtbAppbmRleCA4YzZmMmJm
MjJiZTBiMzFiYmE4NGIxNGY1YjU1MThjYmVhYzg3ODU1Li42YmJlYmU2NjdlYTVlZTYwYThlOTY5
OWQ3OTcyNmE2MWI1YzU5YWI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwtc2tp
cC5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1za2lwLmh0bWwKQEAgLTEsNyArMSw3
IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPCEtLQotVGVzdCBhZGFwdGVkIGZyb20gaHR0
cHM6Ly9keHIubW96aWxsYS5vcmcvY2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJL
aXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9zY3JpcHQtdGVzdHMvdHJhdmVyc2Fs
LXNraXAuanMKK1Rlc3QgYWRhcHRlZCBmcm9tIGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFy
dHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3Ry
YXZlcnNhbC1za2lwLmpzCiAtLT4KIDxoZWFkPgogPHRpdGxlPlRyZWVXYWxrZXI6IHRyYXZlcnNh
bC1za2lwPC90aXRsZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMS54bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5p
c2hlZC8wMDEueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVlNjY3OTJhMzJlYmMwZWJhMTdmNjk5ODhmYTdlODIz
NDZiMjYzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDEueG1sCkBAIC0wLDAg
KzEsNTMgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8
aGVhZD4KKyAgPHRpdGxlPkRPTSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogQmFzaWNzPC90aXRs
ZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICBmdW5j
dGlvbiBkb1Rlc3QoKSB7CisgICAgICB2YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVOb2Rl
SXRlcmF0b3IoZG9jdW1lbnQsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsKKyAg
ICAgIHZhciBleHBlY3RlZCA9IG5ldyBBcnJheSg5LCAvLyBkb2N1bWVudAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDEsIC8vIGh0bWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAzLCAxLCAvLyBoZWFkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgMSwg
MywgLy8gdGl0bGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAxLCAzLCA0LCAv
LyBzY3JpcHQgYW5kIENEQVRBIGJsb2NrCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MywgMywgMSwgLy8gYm9keQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMsIDEsIDMs
IC8vIHByZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMsIC8vIDwvYm9keT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCA4LCAvLyA8IS0tIC0tPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDMsIDcsIC8vIDw/ID8+LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDMsIDQsIDMpOyAvLyBDREFUQQorICAgICAgdmFyIGZvdW5kID0gbmV3IEFy
cmF5KCk7CisKKyAgICAgIC8vIHdhbGsgZG9jdW1lbnQKKyAgICAgIHZhciBub2RlOworICAgICAg
d2hpbGUgKG5vZGUgPSBpdGVyYXRvci5uZXh0Tm9kZSgpKQorICAgICAgICBmb3VuZC5wdXNoKG5v
ZGUubm9kZVR5cGUpOworCisgICAgICAvLyBjaGVjayByZXN1bHRzCisgICAgICB2YXIgZXJyb3Jz
ID0gMDsKKyAgICAgIHZhciBzID0gJyc7CisgICAgICB2YXIgbGVuZ3RoID0gKGZvdW5kLmxlbmd0
aCA+IGV4cGVjdGVkLmxlbmd0aCkgPyBmb3VuZC5sZW5ndGggOiBleHBlY3RlZC5sZW5ndGg7Cisg
ICAgICBzICs9ICdFWFBFQ1RFRCAgRk9VTkRcbic7CisgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGxlbmd0aDsgaSArPSAxKSB7CisgICAgICAgIHMgKz0gJyAgJyArIChleHBlY3RlZFtpXSA/IGV4
cGVjdGVkW2ldIDogJy0nKSArCisgICAgICAnICAgICAgICAgJyArIChmb3VuZFtpXSA/IGZvdW5k
W2ldIDogJy0nKTsKKyAgICAgICAgaWYgKGZvdW5kW2ldICE9IGV4cGVjdGVkW2ldKSB7CisgICAg
ICAgICAgcyArPSAnICAgICAgTUlTTUFUQ0gnOworICAgICAgICAgIGVycm9ycyArPSAxOworICAg
ICAgICB9CisgICAgICAgIHMgKz0gJ1xuJzsKKyAgICAgIH0KKyAgICAgIHZhciBwID0gZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWVOUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcs
ICdwcmUnKVswXTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAgIHAuZmlyc3RDaGlsZC5kYXRh
ID0gJ0ZBSUw6ICcgKyBlcnJvcnMgKyAnIGVycm9ycyBmb3VuZDpcblxuJyArIHM7CisgICAgICBl
bHNlCisgICAgICAgIHAuZmlyc3RDaGlsZC5kYXRhID0gJ1BBU1MnOworICAgIH0KKyAgXV0+PC9z
Y3JpcHQ+CisgPC9oZWFkPgorIDxib2R5IG9ubG9hZD0iZG9UZXN0KCkiPgorICA8cHJlIGlkPSJy
ZXN1bHQiPkZBSUw6IFNjcmlwdCBmYWlsZWQgdG8gcnVuLjwvcHJlPgorIDwvYm9keT4KKyA8IS0t
IHNvbWUgbW9yZSBub2RlcyB0byB0ZXN0IHRoaXM6IC0tPgorIDw/dGVzdCBub2RlPz4KKyAKKzwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hl
ZC8wMDIueG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDAyLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MTVkNzA0ZTEwYzA4
YmJmZmZlN2M3MTc5ODgwNzBkMjI3MWUwMmZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNo
ZWQvMDAyLnhtbApAQCAtMCwwICsxLDU0IEBACis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5v
cmcvMTk5OS94aHRtbCI+CisgPGhlYWQ+CisgIDx0aXRsZT5ET00gVHJhdmVyc2FsOiBOb2RlSXRl
cmF0b3I6IEJhc2ljcyBCYWNrd2FyZHM8L3RpdGxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+IDwhW0NEQVRBWworICAgIGZ1bmN0aW9uIGRvVGVzdCgpIHsKKyAgICAgIHZhciBp
dGVyYXRvciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1bWVudCwgTm9kZUZpbHRl
ci5TSE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAgICAgdmFyIGV4cGVjdGVkID0gbmV3IEFycmF5
KDksIC8vIGRvY3VtZW50CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgLy8gaHRt
bAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMsIDEsIC8vIGhlYWQKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAzLCAxLCAzLCAvLyB0aXRsZQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDMsIDEsIDMsIDQsIC8vIHNjcmlwdCBhbmQgQ0RBVEEgYmxvY2sKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAzLCAxLCAvLyBib2R5CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMywgMSwgMywgLy8gcHJlCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMywgLy8gPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDMsIDgsIC8vIDwhLS0gLS0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgNywg
Ly8gPD8gPz4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgNCwgMyk7IC8vIENE
QVRBCisgICAgICB2YXIgZm91bmQgPSBuZXcgQXJyYXkoKTsKKworICAgICAgLy8gd2FsayBkb2N1
bWVudAorICAgICAgdmFyIG5vZGU7CisgICAgICB3aGlsZSAobm9kZSA9IGl0ZXJhdG9yLm5leHRO
b2RlKCkpOworICAgICAgd2hpbGUgKG5vZGUgPSBpdGVyYXRvci5wcmV2aW91c05vZGUoKSkKKyAg
ICAgICAgZm91bmQudW5zaGlmdChub2RlLm5vZGVUeXBlKTsKKworICAgICAgLy8gY2hlY2sgcmVz
dWx0cworICAgICAgdmFyIGVycm9ycyA9IDA7CisgICAgICB2YXIgcyA9ICcnOworICAgICAgdmFy
IGxlbmd0aCA9IChmb3VuZC5sZW5ndGggPiBleHBlY3RlZC5sZW5ndGgpID8gZm91bmQubGVuZ3Ro
IDogZXhwZWN0ZWQubGVuZ3RoOworICAgICAgcyArPSAnRVhQRUNURUQgIEZPVU5EXG4nOworICAg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMSkgeworICAgICAgICBzICs9ICcg
ICcgKyAoZXhwZWN0ZWRbaV0gPyBleHBlY3RlZFtpXSA6ICctJykgKworICAgICAgJyAgICAgICAg
ICcgKyAoZm91bmRbaV0gPyBmb3VuZFtpXSA6ICctJyk7CisgICAgICAgIGlmIChmb3VuZFtpXSAh
PSBleHBlY3RlZFtpXSkgeworICAgICAgICAgIHMgKz0gJyAgICAgIE1JU01BVENIJzsKKyAgICAg
ICAgICBlcnJvcnMgKz0gMTsKKyAgICAgICAgfQorICAgICAgICBzICs9ICdcbic7CisgICAgICB9
CisgICAgICB2YXIgcCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lTlMoJ2h0dHA6Ly93
d3cudzMub3JnLzE5OTkveGh0bWwnLCAncHJlJylbMF07CisgICAgICBpZiAoZXJyb3JzKQorICAg
ICAgICBwLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnMgZm91
bmQ6XG5cbicgKyBzOworICAgICAgZWxzZQorICAgICAgICBwLmZpcnN0Q2hpbGQuZGF0YSA9ICdQ
QVNTJzsKKyAgICB9CisgIF1dPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRv
VGVzdCgpIj4KKyAgPHByZSBpZD0icmVzdWx0Ij5GQUlMOiBTY3JpcHQgZmFpbGVkIHRvIHJ1bi48
L3ByZT4KKyA8L2JvZHk+CisgPCEtLSBzb21lIG1vcmUgbm9kZXMgdG8gdGVzdCB0aGlzOiAtLT4K
KyA8P3Rlc3Qgbm9kZT8+CisgCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDAzLnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMy54bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjY4ZTZiYjRkNzQ2YmY4ZTlhOGUxNmU2M2Q3ZjhmNDFmNzlkYzlkOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMy54bWwKQEAgLTAsMCArMSw1OCBAQAorPGh0bWwg
eG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0bGU+
RE9NIFRyYXZlcnNhbDogTm9kZUl0ZXJhdG9yOiBSZW1vdmFsIG9mIG5vZGVzIHRoYXQgc2hvdWxk
IGhhdmUgbm8gZWZmZWN0PC90aXRsZT4KKyAgPCEtLQorICAgVGhpcyB0ZXN0cyB0aGVzZSBjYXNl
cyB0aGF0IHNob3VsZCBoYXZlIG5vIGVmZmVjdDoKKyAgICAxLiBSZW1vdmUgYSBub2RlIHVucmVs
YXRlZCB0byB0aGUgcmVmZXJlbmNlIG5vZGUKKyAgICAyLiBSZW1vdmUgYW4gYW5jZXN0b3Igb2Yg
dGhlIHJvb3Qgbm9kZQorICAgIDMuIFJlbW92ZSB0aGUgcm9vdCBub2RlIGl0c2VsZgorICAgIDQu
IFJlbW92ZSBkZXNjZW5kYW50IG9mIHJlZmVyZW5jZSBub2RlCisgIC0tPgorICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+IDwhW0NEQVRBWworICAgIHZhciBlcnJvcnMgPSAwOworICAg
IHZhciBsb2cgPSAnJzsKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICB2YXIgaXRlcmF0
b3IgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Jvb3QnKSwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAgICAgdmFyIHJv
b3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncm9vdCcpOworICAgICAgdmFyIEEgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnQScpOworICAgICAgdmFyIEIgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgnQicpOworICAgICAgdmFyIEMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQycp
OworICAgICAgdmFyIEQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnRCcpOworICAgICAgdmFy
IEUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnRScpOworICAgICAgY2hlY2soaXRlcmF0b3Iu
bmV4dE5vZGUoKSwgcm9vdCk7CisgICAgICByZW1vdmUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J1gnKSk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIHJlbW92
ZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnWScpKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5l
eHROb2RlKCksIEIpOworICAgICAgcmVtb3ZlKHJvb3QpOworICAgICAgY2hlY2soaXRlcmF0b3Iu
bmV4dE5vZGUoKSwgQyk7CisgICAgICByZW1vdmUoRSk7CisgICAgICBjaGVjayhpdGVyYXRvci5u
ZXh0Tm9kZSgpLCBEKTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyAr
ICcgZXJyb3JzOlxuJyArIGxvZzsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9CisgICAg
ZnVuY3Rpb24gY2hlY2soYSwgYikgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyAr
PSAxOworICAgICAgICBsb2cgKz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAo
JyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9IGVsc2UgaWYgKGEgIT0gYikgeworICAgICAgICBl
cnJvcnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCAnICsgYSArICcgKCcgKyBhLmlkICsg
JykgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9Cisg
ICAgfQorICAgIGZ1bmN0aW9uIHJlbW92ZShhKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAg
ZXJyb3JzICs9IDE7CisgICAgICAgIGxvZyArPSAnVHJpZWQgcmVtb3ZpbmcgbnVsbCBub2RlLlxu
JzsKKyAgICAgIH0gZWxzZQorICAgICAgYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOworICAg
IH0KKyAgXV0+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5IG9ubG9hZD0iZG9UZXN0KCkiPgor
ICA8cHJlIGlkPSJyZXN1bHQiPkZBSUw6IFNjcmlwdCBkaWQgbm90IGNvbXBsZXRlLjwvcHJlPgor
ICA8cD48c3BhbiBpZD0iWCI+PC9zcGFuPjxzcGFuIGlkPSJZIj48c3BhbiBpZD0icm9vdCI+PHNw
YW4gaWQ9IkEiPjxzcGFuIGlkPSJCIj48c3BhbiBpZD0iQyI+PHNwYW4gaWQ9IkQiPjxzcGFuIGlk
PSJFIj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9w
PgorIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2
ZXJzYWwvdW5maW5pc2hlZC8wMDQueG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA0LnhtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42MTg5NzhmMDIxZTMyYTIxNWQ2NGU1ZDQ3NDgyNmJiMzllMjk0ZjY1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJh
dmVyc2FsL3VuZmluaXNoZWQvMDA0LnhtbApAQCAtMCwwICsxLDQ5IEBACis8aHRtbCB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgPGhlYWQ+CisgIDx0aXRsZT5ET00gVHJh
dmVyc2FsOiBOb2RlSXRlcmF0b3I6IFJlbW92YWwgb2YgdGhlIFJlZmVyZW5jZSBOb2RlPC90aXRs
ZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICB2YXIg
ZXJyb3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVuY3Rpb24gZG9UZXN0KCkgewor
ICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNl
KTsKKyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKTsKKyAg
ICAgIHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0EnKTsKKyAgICAgIHZhciBBQSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdBQScpOworICAgICAgdmFyIEIgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnQicpOworICAgICAgdmFyIEMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnQycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgcm9vdCk7CisgICAgICBj
aGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHRO
b2RlKCksIEFBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEIpOworICAgICAg
cmVtb3ZlKEIpOworICAgICAgY2hlY2soaXRlcmF0b3IucHJldmlvdXNOb2RlKCksIEFBKTsKKyAg
ICAgIHJlbW92ZShBQSk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBDKTsKKyAg
ICAgIGlmIChlcnJvcnMpCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQn
KS5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyArICcgZXJyb3JzOlxuJyArIGxv
ZzsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdCcp
LmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9CisgICAgZnVuY3Rpb24gY2hlY2soYSwg
YikgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOworICAgICAgICBsb2cg
Kz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7
CisgICAgICB9IGVsc2UgaWYgKGEgIT0gYikgeworICAgICAgICBlcnJvcnMgKz0gMTsKKyAgICAg
ICAgbG9nICs9ICdGb3VuZCAnICsgYSArICcgKCcgKyBhLmlkICsgJykgYnV0IGV4cGVjdGVkICcg
KyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9CisgICAgfQorICAgIGZ1bmN0aW9u
IHJlbW92ZShhKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAg
ICAgIGxvZyArPSAnVHJpZWQgcmVtb3ZpbmcgbnVsbCBub2RlLlxuJzsKKyAgICAgIH0gZWxzZQor
ICAgICAgYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOworICAgIH0KKyAgXV0+PC9zY3JpcHQ+
CisgPC9oZWFkPgorIDxib2R5IG9ubG9hZD0iZG9UZXN0KCkiPgorICA8cHJlIGlkPSJyZXN1bHQi
PkZBSUw6IFNjcmlwdCBkaWQgbm90IGNvbXBsZXRlLjwvcHJlPgorICA8cD48c3BhbiBpZD0icm9v
dCI+PHNwYW4gaWQ9IkEiPjxzcGFuIGlkPSJBQSI+PC9zcGFuPjwvc3Bhbj48c3BhbiBpZD0iQiI+
PC9zcGFuPjxzcGFuIGlkPSJDIj48c3BhbiBpZD0iQ0MiPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwv
cD4KKyA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJh
dmVyc2FsL3VuZmluaXNoZWQvMDA1LnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNS54bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNjQzZTJmMWNkNGZkODhhMWZkN2Q1NDI1MTY1ZmIwMTk1MGVkNmNkNQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Ry
YXZlcnNhbC91bmZpbmlzaGVkLzAwNS54bWwKQEAgLTAsMCArMSw1NyBAQAorPGh0bWwgeG1sbnM9
Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0bGU+RE9NIFRy
YXZlcnNhbDogTm9kZUl0ZXJhdG9yOiBSZW1vdmFsIG9mIHRoZSBSZWZlcmVuY2UgTm9kZSAoZGVl
cCBjaGVjayk8L3RpdGxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IDwhW0NE
QVRBWworICAgIHZhciBlcnJvcnMgPSAwOworICAgIHZhciBsb2cgPSAnJzsKKyAgICBmdW5jdGlv
biBkb1Rlc3QoKSB7CisgICAgICB2YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRl
cmF0b3IoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKSwgTm9kZUZpbHRlci5TSE9XX0FM
TCwgbnVsbCwgZmFsc2UpOworICAgICAgdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgncm9vdCcpOworICAgICAgdmFyIEEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQScpOwor
ICAgICAgdmFyIEFBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0FBJyk7CisgICAgICB2YXIg
QiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdCJyk7CisgICAgICB2YXIgQyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdDJyk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBy
b290KTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEEpOworICAgICAgY2hlY2so
aXRlcmF0b3IubmV4dE5vZGUoKSwgQUEpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUo
KSwgQik7CisgICAgICByZW1vdmUoQik7CisgICAgICB2YXIgWCA9IGFkZENoaWxkVG8oQUEpOwor
ICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgWCk7CisgICAgICBjaGVjayhpdGVyYXRv
ci5wcmV2aW91c05vZGUoKSwgWCk7CisgICAgICByZW1vdmUoWCk7CisgICAgICB2YXIgWSA9IGFk
ZENoaWxkVG8oQUEpOworICAgICAgY2hlY2soaXRlcmF0b3IucHJldmlvdXNOb2RlKCksIFkpOwor
ICAgICAgaWYgKGVycm9ycykKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3Vs
dCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnM6XG4nICsg
bG9nOworICAgICAgZWxzZQorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0
JykuZmlyc3RDaGlsZC5kYXRhID0gJ1BBU1MnOworICAgIH0KKyAgICBmdW5jdGlvbiBjaGVjayhh
LCBiKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAgICAgIGxv
ZyArPSAnRm91bmQgbnVsbCBidXQgZXhwZWN0ZWQgJyArIGIgKyAnICgnICsgYi5pZCArICcpLlxu
JzsKKyAgICAgIH0gZWxzZSBpZiAoYSAhPSBiKSB7CisgICAgICAgIGVycm9ycyArPSAxOworICAg
ICAgICBsb2cgKz0gJ0ZvdW5kICcgKyBhICsgJyAoJyArIGEuaWQgKyAnKSBidXQgZXhwZWN0ZWQg
JyArIGIgKyAnICgnICsgYi5pZCArICcpLlxuJzsKKyAgICAgIH0KKyAgICB9CisgICAgZnVuY3Rp
b24gcmVtb3ZlKGEpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJvcnMgKz0gMTsKKyAg
ICAgICAgbG9nICs9ICdUcmllZCByZW1vdmluZyBudWxsIG5vZGUuXG4nOworICAgICAgfSBlbHNl
CisgICAgICBhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk7CisgICAgfQorICAgIGZ1bmN0aW9u
IGFkZENoaWxkVG8oYSkgeworICAgICAgdmFyIHggPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMo
J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnLCAnc3BhbicpOworICAgICAgYS5hcHBlbmRD
aGlsZCh4KTsKKyAgICAgIHJldHVybiB4OworICAgIH0KKyAgXV0+PC9zY3JpcHQ+CisgPC9oZWFk
PgorIDxib2R5IG9ubG9hZD0iZG9UZXN0KCkiPgorICA8cHJlIGlkPSJyZXN1bHQiPkZBSUw6IFNj
cmlwdCBkaWQgbm90IGNvbXBsZXRlLjwvcHJlPgorICA8cD48c3BhbiBpZD0icm9vdCI+PHNwYW4g
aWQ9IkEiPjxzcGFuIGlkPSJBQSI+PC9zcGFuPjwvc3Bhbj48c3BhbiBpZD0iQiI+PC9zcGFuPjxz
cGFuIGlkPSJDIj48c3BhbiBpZD0iQ0MiPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvcD4KKyA8L2Jv
ZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3Vu
ZmluaXNoZWQvMDA2LnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzIzMDJh
ZjgzNjZjZGQzZWQwMDYzZjQ2ZmRiN2YzNTBlODE3OTAxYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91
bmZpbmlzaGVkLzAwNi54bWwKQEAgLTAsMCArMSw0NyBAQAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93
d3cudzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0bGU+RE9NIFRyYXZlcnNhbDog
Tm9kZUl0ZXJhdG9yOiBSZW1vdmFsIG9mIGFuIGFuY2VzdG9yIG9mIHRoZSBSZWZlcmVuY2UgTm9k
ZSAoZm9yd2FyZHMpPC90aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8
IVtDREFUQVsKKyAgICB2YXIgZXJyb3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVu
Y3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9k
ZUl0ZXJhdG9yKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hP
V19BTEwsIG51bGwsIGZhbHNlKTsKKyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Jvb3QnKTsKKyAgICAgIHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0En
KTsKKyAgICAgIHZhciBCID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0InKTsKKyAgICAgIHZh
ciBCQiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdCQicpOworICAgICAgdmFyIEMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnQycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUo
KSwgcm9vdCk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIGNo
ZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEIpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5v
ZGUoKSwgQkIpOworICAgICAgcmVtb3ZlKEIpOworICAgICAgY2hlY2soaXRlcmF0b3IucHJldmlv
dXNOb2RlKCksIEEpOworICAgICAgaWYgKGVycm9ycykKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsg
JyBlcnJvcnM6XG4nICsgbG9nOworICAgICAgZWxzZQorICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgncmVzdWx0JykuZmlyc3RDaGlsZC5kYXRhID0gJ1BBU1MnOworICAgIH0KKyAgICBm
dW5jdGlvbiBjaGVjayhhLCBiKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9
IDE7CisgICAgICAgIGxvZyArPSAnRm91bmQgbnVsbCBidXQgZXhwZWN0ZWQgJyArIGIgKyAnICgn
ICsgYi5pZCArICcpLlxuJzsKKyAgICAgIH0gZWxzZSBpZiAoYSAhPSBiKSB7CisgICAgICAgIGVy
cm9ycyArPSAxOworICAgICAgICBsb2cgKz0gJ0ZvdW5kICcgKyBhICsgJyAoJyArIGEuaWQgKyAn
KSBidXQgZXhwZWN0ZWQgJyArIGIgKyAnICgnICsgYi5pZCArICcpLlxuJzsKKyAgICAgIH0KKyAg
ICB9CisgICAgZnVuY3Rpb24gcmVtb3ZlKGEpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBl
cnJvcnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdUcmllZCByZW1vdmluZyBudWxsIG5vZGUuXG4n
OworICAgICAgfSBlbHNlCisgICAgICBhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk7CisgICAg
fQorICBdXT48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHkgb25sb2FkPSJkb1Rlc3QoKSI+Cisg
IDxwcmUgaWQ9InJlc3VsdCI+RkFJTDogU2NyaXB0IGRpZCBub3QgY29tcGxldGUuPC9wcmU+Cisg
IDxwPjxzcGFuIGlkPSJyb290Ij48c3BhbiBpZD0iQSI+PC9zcGFuPjxzcGFuIGlkPSJCIj48c3Bh
biBpZD0iQkIiPjwvc3Bhbj48L3NwYW4+PHNwYW4gaWQ9IkMiPjwvc3Bhbj48L3NwYW4+PC9wPgor
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNy54bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5m
aW5pc2hlZC8wMDcueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4YjIxMmU0ZTVmOWNjYjFkMGNhYjVmMzJhN2Yw
YTgzMDZiMmFkMDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDcueG1sCkBAIC0w
LDAgKzEsNTQgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4K
KyA8aGVhZD4KKyAgPHRpdGxlPkRPTSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBv
ZiBhbiBhbmNlc3RvciBvZiB0aGUgUmVmZXJlbmNlIE5vZGUgKGZvcndhcmRzKSAoZGVlcCBjaGVj
ayk8L3RpdGxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IDwhW0NEQVRBWwor
ICAgIHZhciBlcnJvcnMgPSAwOworICAgIHZhciBsb2cgPSAnJzsKKyAgICBmdW5jdGlvbiBkb1Rl
c3QoKSB7CisgICAgICB2YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3Io
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKSwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVs
bCwgZmFsc2UpOworICAgICAgdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncm9v
dCcpOworICAgICAgdmFyIEEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQScpOworICAgICAg
dmFyIEIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQicpOworICAgICAgdmFyIEJCID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0JCJyk7CisgICAgICB2YXIgQyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdDJyk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCByb290KTsK
KyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEEpOworICAgICAgY2hlY2soaXRlcmF0
b3IubmV4dE5vZGUoKSwgQik7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBCQik7
CisgICAgICByZW1vdmUoQik7CisgICAgICB2YXIgWCA9IGFkZENoaWxkVG8oQSk7CisgICAgICBj
aGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBYKTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnRkFJ
TDogJyArIGVycm9ycyArICcgZXJyb3JzOlxuJyArIGxvZzsKKyAgICAgIGVsc2UKKyAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNT
JzsKKyAgICB9CisgICAgZnVuY3Rpb24gY2hlY2soYSwgYikgeworICAgICAgaWYgKCFhKSB7Cisg
ICAgICAgIGVycm9ycyArPSAxOworICAgICAgICBsb2cgKz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVj
dGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9IGVsc2UgaWYgKGEgIT0g
YikgeworICAgICAgICBlcnJvcnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCAnICsgYSAr
ICcgKCcgKyBhLmlkICsgJykgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5c
bic7CisgICAgICB9CisgICAgfQorICAgIGZ1bmN0aW9uIHJlbW92ZShhKSB7CisgICAgICBpZiAo
IWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAgICAgIGxvZyArPSAnVHJpZWQgcmVtb3Zp
bmcgbnVsbCBub2RlLlxuJzsKKyAgICAgIH0gZWxzZQorICAgICAgYS5wYXJlbnROb2RlLnJlbW92
ZUNoaWxkKGEpOworICAgIH0KKyAgICBmdW5jdGlvbiBhZGRDaGlsZFRvKGEpIHsKKyAgICAgIHZh
ciB4ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sJywgJ3NwYW4nKTsKKyAgICAgIHguaWQgPSAnWCc7CisgICAgICBhLmFwcGVuZENoaWxkKHgp
OworICAgICAgcmV0dXJuIHg7CisgICAgfQorICBdXT48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJv
ZHkgb25sb2FkPSJkb1Rlc3QoKSI+CisgIDxwcmUgaWQ9InJlc3VsdCI+RkFJTDogU2NyaXB0IGRp
ZCBub3QgY29tcGxldGUuPC9wcmU+CisgIDxwPjxzcGFuIGlkPSJyb290Ij48c3BhbiBpZD0iQSI+
PC9zcGFuPjxzcGFuIGlkPSJCIj48c3BhbiBpZD0iQkIiPjwvc3Bhbj48L3NwYW4+PHNwYW4gaWQ9
IkMiPjwvc3Bhbj48L3NwYW4+PC9wPgorIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91
bmZpbmlzaGVkLzAwOC54bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDgueG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxZDcw
MDhhZTQyMjBlODcyMjA2ZWI2N2NmZDg5YWI3MGQ5MTdiNjQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwv
dW5maW5pc2hlZC8wMDgueG1sCkBAIC0wLDAgKzEsNDggQEAKKzxodG1sIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8aGVhZD4KKyAgPHRpdGxlPkRPTSBUcmF2ZXJzYWw6
IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBvZiBhbiBhbmNlc3RvciBvZiB0aGUgUmVmZXJlbmNlIE5v
ZGUgKGJhY2t3YXJkcyk8L3RpdGxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
IDwhW0NEQVRBWworICAgIHZhciBlcnJvcnMgPSAwOworICAgIHZhciBsb2cgPSAnJzsKKyAgICBm
dW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICB2YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVO
b2RlSXRlcmF0b3IoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKSwgTm9kZUZpbHRlci5T
SE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAgICAgdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgncm9vdCcpOworICAgICAgdmFyIEEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
QScpOworICAgICAgdmFyIEIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQicpOworICAgICAg
dmFyIEJCID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0JCJyk7CisgICAgICB2YXIgQyA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdDJyk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9k
ZSgpLCByb290KTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEEpOworICAgICAg
Y2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQik7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0
Tm9kZSgpLCBCQik7CisgICAgICBjaGVjayhpdGVyYXRvci5wcmV2aW91c05vZGUoKSwgQkIpOwor
ICAgICAgcmVtb3ZlKEIpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQyk7Cisg
ICAgICBpZiAoZXJyb3JzKQorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0
JykuZmlyc3RDaGlsZC5kYXRhID0gJ0ZBSUw6ICcgKyBlcnJvcnMgKyAnIGVycm9yczpcbicgKyBs
b2c7CisgICAgICBlbHNlCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQn
KS5maXJzdENoaWxkLmRhdGEgPSAnUEFTUyc7CisgICAgfQorICAgIGZ1bmN0aW9uIGNoZWNrKGEs
IGIpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJvcnMgKz0gMTsKKyAgICAgICAgbG9n
ICs9ICdGb3VuZCBudWxsIGJ1dCBleHBlY3RlZCAnICsgYiArICcgKCcgKyBiLmlkICsgJykuXG4n
OworICAgICAgfSBlbHNlIGlmIChhICE9IGIpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAg
ICAgIGxvZyArPSAnRm91bmQgJyArIGEgKyAnICgnICsgYS5pZCArICcpIGJ1dCBleHBlY3RlZCAn
ICsgYiArICcgKCcgKyBiLmlkICsgJykuXG4nOworICAgICAgfQorICAgIH0KKyAgICBmdW5jdGlv
biByZW1vdmUoYSkgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOworICAg
ICAgICBsb2cgKz0gJ1RyaWVkIHJlbW92aW5nIG51bGwgbm9kZS5cbic7CisgICAgICB9IGVsc2UK
KyAgICAgIGEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTsKKyAgICB9CisgIF1dPjwvc2NyaXB0
PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgPHByZSBpZD0icmVzdWx0
Ij5GQUlMOiBTY3JpcHQgZGlkIG5vdCBjb21wbGV0ZS48L3ByZT4KKyAgPHA+PHNwYW4gaWQ9InJv
b3QiPjxzcGFuIGlkPSJBIj48L3NwYW4+PHNwYW4gaWQ9IkIiPjxzcGFuIGlkPSJCQiI+PC9zcGFu
Pjwvc3Bhbj48c3BhbiBpZD0iQyI+PC9zcGFuPjwvc3Bhbj48L3A+CisgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA5LnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwOS54bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYzMwMDZlY2JkNmZmNzU5MjUxYjQwMjgyOWU3ZmJhYWMxZTM5NTVhMQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwOS54bWwKQEAgLTAsMCArMSw1NSBAQAorPGh0
bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0
bGU+RE9NIFRyYXZlcnNhbDogTm9kZUl0ZXJhdG9yOiBSZW1vdmFsIG9mIGFuIGFuY2VzdG9yIG9m
IHRoZSBSZWZlcmVuY2UgTm9kZSAoYmFja3dhcmRzKSAoZGVlcCBjaGVjayk8L3RpdGxlPgorICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IDwhW0NEQVRBWworICAgIHZhciBlcnJvcnMg
PSAwOworICAgIHZhciBsb2cgPSAnJzsKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICB2
YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Jvb3QnKSwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAg
ICAgdmFyIHJvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncm9vdCcpOworICAgICAgdmFy
IEEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQScpOworICAgICAgdmFyIEIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnQicpOworICAgICAgdmFyIEJCID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ0JCJyk7CisgICAgICB2YXIgQyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdDJyk7
CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCByb290KTsKKyAgICAgIGNoZWNrKGl0
ZXJhdG9yLm5leHROb2RlKCksIEEpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwg
Qik7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBCQik7CisgICAgICBjaGVjayhp
dGVyYXRvci5wcmV2aW91c05vZGUoKSwgQkIpOworICAgICAgcmVtb3ZlKEIpOworICAgICAgdmFy
IFggPSBhZGRDaGlsZFRvKEEpOworICAgICAgY2hlY2soaXRlcmF0b3IucHJldmlvdXNOb2RlKCks
IFgpOworICAgICAgaWYgKGVycm9ycykKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnM6
XG4nICsgbG9nOworICAgICAgZWxzZQorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
cmVzdWx0JykuZmlyc3RDaGlsZC5kYXRhID0gJ1BBU1MnOworICAgIH0KKyAgICBmdW5jdGlvbiBj
aGVjayhhLCBiKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAg
ICAgIGxvZyArPSAnRm91bmQgbnVsbCBidXQgZXhwZWN0ZWQgJyArIGIgKyAnICgnICsgYi5pZCAr
ICcpLlxuJzsKKyAgICAgIH0gZWxzZSBpZiAoYSAhPSBiKSB7CisgICAgICAgIGVycm9ycyArPSAx
OworICAgICAgICBsb2cgKz0gJ0ZvdW5kICcgKyBhICsgJyAoJyArIGEuaWQgKyAnKSBidXQgZXhw
ZWN0ZWQgJyArIGIgKyAnICgnICsgYi5pZCArICcpLlxuJzsKKyAgICAgIH0KKyAgICB9CisgICAg
ZnVuY3Rpb24gcmVtb3ZlKGEpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJvcnMgKz0g
MTsKKyAgICAgICAgbG9nICs9ICdUcmllZCByZW1vdmluZyBudWxsIG5vZGUuXG4nOworICAgICAg
fSBlbHNlCisgICAgICBhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk7CisgICAgfQorICAgIGZ1
bmN0aW9uIGFkZENoaWxkVG8oYSkgeworICAgICAgdmFyIHggPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50TlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnLCAnc3BhbicpOworICAgICAgeC5p
ZCA9ICdYJzsKKyAgICAgIGEuYXBwZW5kQ2hpbGQoeCk7CisgICAgICByZXR1cm4geDsKKyAgICB9
CisgIF1dPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAg
PHByZSBpZD0icmVzdWx0Ij5GQUlMOiBTY3JpcHQgZGlkIG5vdCBjb21wbGV0ZS48L3ByZT4KKyAg
PHA+PHNwYW4gaWQ9InJvb3QiPjxzcGFuIGlkPSJBIj48L3NwYW4+PHNwYW4gaWQ9IkIiPjxzcGFu
IGlkPSJCQiI+PC9zcGFuPjwvc3Bhbj48c3BhbiBpZD0iQyI+PC9zcGFuPjwvc3Bhbj48L3A+Cisg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDEwLnhtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZp
bmlzaGVkLzAxMC54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGIyYTZjYzdmMWY4MzU1MDQ5YjdjMjU0NTk4MmU0
YWY3NzdiZTRhOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAxMC54bWwKQEAgLTAs
MCArMSw2NCBAQAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgor
IDxoZWFkPgorICA8dGl0bGU+RE9NIFRyYXZlcnNhbDogTm9kZUl0ZXJhdG9yOiBGaWx0ZXJzPC90
aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICBm
dW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICB2YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVO
b2RlSXRlcmF0b3IoZG9jdW1lbnQsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIHRlc3RGaWx0ZXIsIGZh
bHNlKTsKKyAgICAgIC8vIHNraXBzIHRleHQgbm9kZXMgYW5kIGJvZHkgZWxlbWVudAorICAgICAg
dmFyIGV4cGVjdGVkID0gbmV3IEFycmF5KDksIC8vIGRvY3VtZW50CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMSwgLy8gaHRtbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDEsIC8vIGhlYWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAvLyB0aXRsZQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDQsIC8vIHNjcmlwdCBhbmQgQ0RBVEEg
YmxvY2sKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBib2R5IChza2lwcGVkKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIC8vIHByZQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA4LCAvLyA8IS0tIC0tPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBJIHNr
aXBwZWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0KTsgLy8gQ0RBVEEKKyAgICAg
IHZhciBmb3VuZCA9IG5ldyBBcnJheSgpOworCisgICAgICAvLyB3YWxrIGRvY3VtZW50CisgICAg
ICB2YXIgbm9kZTsKKyAgICAgIHdoaWxlIChub2RlID0gaXRlcmF0b3IubmV4dE5vZGUoKSkKKyAg
ICAgICAgZm91bmQucHVzaChub2RlLm5vZGVUeXBlKTsKKworICAgICAgLy8gY2hlY2sgcmVzdWx0
cworICAgICAgdmFyIGVycm9ycyA9IDA7CisgICAgICB2YXIgcyA9ICcnOworICAgICAgdmFyIGxl
bmd0aCA9IChmb3VuZC5sZW5ndGggPiBleHBlY3RlZC5sZW5ndGgpID8gZm91bmQubGVuZ3RoIDog
ZXhwZWN0ZWQubGVuZ3RoOworICAgICAgcyArPSAnRVhQRUNURUQgIEZPVU5EXG4nOworICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMSkgeworICAgICAgICBzICs9ICcgICcg
KyAoZXhwZWN0ZWRbaV0gPyBleHBlY3RlZFtpXSA6ICctJykgKworICAgICAgJyAgICAgICAgICcg
KyAoZm91bmRbaV0gPyBmb3VuZFtpXSA6ICctJyk7CisgICAgICAgIGlmIChmb3VuZFtpXSAhPSBl
eHBlY3RlZFtpXSkgeworICAgICAgICAgIHMgKz0gJyAgICAgIE1JU01BVENIJzsKKyAgICAgICAg
ICBlcnJvcnMgKz0gMTsKKyAgICAgICAgfQorICAgICAgICBzICs9ICdcbic7CisgICAgICB9Cisg
ICAgICB2YXIgcCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lTlMoJ2h0dHA6Ly93d3cu
dzMub3JnLzE5OTkveGh0bWwnLCAncHJlJylbMF07CisgICAgICBpZiAoZXJyb3JzKQorICAgICAg
ICBwLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnMgZm91bmQ6
XG5cbicgKyBzOworICAgICAgZWxzZQorICAgICAgICBwLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNT
JzsKKyAgICB9CisKKyAgICBmdW5jdGlvbiB0ZXN0RmlsdGVyKG4pIHsKKyAgICAgIGlmIChuLm5v
ZGVUeXBlID09IDMpIHsKKyAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7Cisg
ICAgICB9IGVsc2UgaWYgKG4ubm9kZU5hbWUgPT0gJ2JvZHknKSB7CisgICAgICAgIHJldHVybiBO
b2RlRmlsdGVyLkZJTFRFUl9SRUpFQ1Q7IC8vIHNhbWUgYXMgX1NLSVAKKyAgICAgIH0KKyAgICAg
IHJldHVybiAxOyAvLyBGSUxURVJfQUNDRVBUCisgICAgfQorCisgIF1dPjwvc2NyaXB0PgorIDwv
aGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgPHByZSBpZD0icmVzdWx0Ij5GQUlM
OiBTY3JpcHQgZmFpbGVkIHRvIHJ1bi48L3ByZT4KKyA8L2JvZHk+CisgPCEtLSBzb21lIG1vcmUg
bm9kZXMgdG8gdGVzdCB0aGlzOiAtLT4KKyA8P2JvZHkgdGVzdD8+CisgCis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvVE9ETyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91
bmZpbmlzaGVkL1RPRE8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2VjZGY5OGIwOGFiZjllYmM4NWIwMTgzYTEzNzc5
YTNiMDY3NzZkYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkL1RPRE8KQEAgLTAsMCAr
MSBAQAorQ2hlY2sgd2hhdCBoYXBwZW5zIHdoZW4gYSBOb2RlRmlsdGVyIHR1cm5zIGEgbnVtYmVy
IG5vdCBpbiB0aGUgcmFuZ2UgMS4uMwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Ry
YXZlcnNhbC91bmZpbmlzaGVkL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvdzNjLWltcG9y
dC5sb2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNGE3ODY3MDcwZWU5NmRmYjhlMTMwNTlmMmQyMzQ2OWNhOTA2MTFh
MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkL3czYy1pbXBvcnQubG9nCkBAIC0wLDAg
KzEsMjcgQEAKK1RoZSB0ZXN0cyBpbiB0aGlzIGRpcmVjdG9yeSB3ZXJlIGltcG9ydGVkIGZyb20g
dGhlIFczQyByZXBvc2l0b3J5LgorRG8gTk9UIG1vZGlmeSB0aGVzZSB0ZXN0cyBkaXJlY3RseSBp
biBXZWJLaXQuCitJbnN0ZWFkLCBjcmVhdGUgYSBwdWxsIHJlcXVlc3Qgb24gdGhlIFdQVCBnaXRo
dWI6CisJaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQKKworVGhlbiBy
dW4gdGhlIFRvb2xzL1NjcmlwdHMvaW1wb3J0LXczYy10ZXN0cyBpbiBXZWJLaXQgdG8gcmVpbXBv
cnQKKworRG8gTk9UIG1vZGlmeSBvciByZW1vdmUgdGhpcyBmaWxlLgorCistLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KK1Byb3BlcnRpZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKK05vbmUKK1Byb3BlcnR5
IHZhbHVlcyByZXF1aXJpbmcgdmVuZG9yIHByZWZpeGVzOgorTm9uZQorLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CitMaXN0IG9mIGZpbGVzOgorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMS54bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDIu
eG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJh
dmVyc2FsL3VuZmluaXNoZWQvMDAzLnhtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNC54bWwKKy9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5p
c2hlZC8wMDUueG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA2LnhtbAorL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNy54bWwK
Ky9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJz
YWwvdW5maW5pc2hlZC8wMDgueG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA5LnhtbAorL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVk
LzAxMC54bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS90cmF2ZXJzYWwvdW5maW5pc2hlZC9UT0RPCg==
</data>
<flag name="review"
          id="429726"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
    <flag name="commit-queue"
          id="429760"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413204</attachid>
            <date>2020-11-04 13:52:42 -0800</date>
            <delta_ts>2020-11-04 15:48:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218570-20201104135241.patch</filename>
            <type>text/plain</type>
            <size>92154</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MzYzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCAwOGMwNDZhODQ3NzVmODZjYzA2ZmZlMjczZGU1MmU2MTlkOTRkM2JmLi4zNmIyMTQ1NGY0
YjVkOGY1ODllMjk1NDgwNjk2NzYyZTE5MGI2ZTA3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0xMS0wNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIFJlc3luYyB3ZWItcGxhdGZvcm0tdGVzdHMvZG9tIHRlc3Rz
IGZyb20gdXBzdHJlYW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODU3MAorCisgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIEtpbHplci4KKworICAg
ICAgICBSZXN5bmMgd2ViLXBsYXRmb3JtLXRlc3RzL2RvbSB0ZXN0cyBmcm9tIHVwc3RyZWFtIDdh
Mjg3YzllMjZmYmMxMmM5MS4KKworICAgICAgICAqIHJlc291cmNlcy9yZXNvdXJjZS1maWxlcy5q
c29uOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9kb20vKjogVXBkYXRlZAorCiAyMDIw
LTExLTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRp
b3BhcmFtLWludGVyZmFjZS9rLXJhdGUtcGFubmVyLWNvbm5lY3Rpb25zLmh0bWwgZmFpbHMgb24g
c29tZSBwbGF0Zm9ybXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNv
dXJjZXMvcmVzb3VyY2UtZmlsZXMuanNvbiBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9yZXNv
dXJjZXMvcmVzb3VyY2UtZmlsZXMuanNvbgppbmRleCA0MDA0YmQ4OGFmZWRhNGM0ZjUxNWRjNzk0
YWJkNmI0Njg1M2JlNWI1Li5lMGUyZmEzNmMyODc3YmExODM1NTZjZTY1ZThlMDkwNjE2OWY3MjY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvcmVzb3VyY2VzL3Jlc291cmNl
LWZpbGVzLmpzb24KKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3Jlc291cmNlcy9yZXNv
dXJjZS1maWxlcy5qc29uCkBAIC0xMjY1LDcgKzEyNjUsMTAgQEAKICAgICAgICAgIndlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50TGlzdGVuZXItaW5jdW1iZW50LWdsb2JhbC1zdWJm
cmFtZS0yLnN1Yi5odG1sIiwKICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L0V2ZW50TGlzdGVuZXItaW5jdW1iZW50LWdsb2JhbC1zdWJzdWJmcmFtZS5zdWIuaHRtbCIsCiAg
ICAgICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9yZXBsYWNlLWV2ZW50LWxpc3Rl
bmVyLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1sIiwKKyAgICAgICAgIndlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlRG9jdW1lbnQtd2l0
aC1udWxsLWJyb3dzaW5nLWNvbnRleHQtY3Jhc2guaHRtbCIsCisgICAgICAgICJ3ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13
aXRoLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1sIiwKICAgICAgICAgIndlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1nZXRFbGVtZW50c0J5VGFnTmFtZS1jaGFuZ2Ut
ZG9jdW1lbnQtSFRNTE5lc3MtaWZyYW1lLnhtbCIsCisgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL25vZGVzL05vZGUtY2xvbmVOb2RlLW9uLWluYWN0aXZlLWRvY3VtZW50LWNyYXNoLmh0
bWwiLAogICAgICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Ob2RlLWlzRXF1YWxO
b2RlLWlmcmFtZTEueG1sIiwKICAgICAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMv
Tm9kZS1pc0VxdWFsTm9kZS1pZnJhbWUyLnhtbCIsCiAgICAgICAgICJ3ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL25vZGVzL05vZGUtcGFyZW50Tm9kZS1pZnJhbWUuaHRtbCIsCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvQWRk
RXZlbnRMaXN0ZW5lck9wdGlvbnMtb25jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvQWRkRXZlbnRMaXN0ZW5lck9w
dGlvbnMtb25jZS1leHBlY3RlZC50eHQKaW5kZXggYWE4MTI3NGI0NGVkYWJiZjIwM2IzYWEwMzY5
Yjk1YmU2MmJlMjFjNS4uNzI0YzVkN2E0YWJiZmQ4ZTFkOWUxZmQ1MGY1M2RjODIxYzU1NjEwNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vZXZlbnRzL0FkZEV2ZW50TGlzdGVuZXJPcHRpb25zLW9uY2UtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9B
ZGRFdmVudExpc3RlbmVyT3B0aW9ucy1vbmNlLWV4cGVjdGVkLnR4dApAQCAtMiw0ICsyLDUgQEAK
IFBBU1MgT25jZSBsaXN0ZW5lciBzaG91bGQgYmUgaW52b2tlZCBvbmx5IG9uY2UKIFBBU1MgT25j
ZSBsaXN0ZW5lciBzaG91bGQgYmUgaW52b2tlZCBvbmx5IG9uY2UgZXZlbiBpZiB0aGUgZXZlbnQg
aXMgbmVzdGVkCiBQQVNTIE9uY2UgbGlzdGVuZXIgc2hvdWxkIGJlIGFkZGVkIC8gcmVtb3ZlZCBs
aWtlIG5vcm1hbCBsaXN0ZW5lcnMKK1BBU1MgTXVsdGlwbGUgb25jZSBsaXN0ZW5lcnMgc2hvdWxk
IGJlIGludm9rZWQgZXZlbiBpZiB0aGUgc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uIGlzIHNldAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9ldmVudHMvQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMtb25jZS5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0FkZEV2ZW50TGlz
dGVuZXJPcHRpb25zLW9uY2UuaHRtbAppbmRleCBhZTc1MDcwMmM3OWQwZTJmNDkzNTM3YWRlMWM3
ODU1ODk4N2Y1MzZlLi4zNjFjODM4YjczNjI1ODY0MmMwYmY1ZjI2ZjI0MzU0NGVkZjIyMjRiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS9ldmVudHMvQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMtb25jZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9BZGRFdmVudExp
c3RlbmVyT3B0aW9ucy1vbmNlLmh0bWwKQEAgLTc4LDQgKzc4LDIxIEBAIHRlc3QoZnVuY3Rpb24o
KSB7CiAgIGFzc2VydF9lcXVhbHMoaW52b2tlZF9jb3VudCwgMCwgIlRoZSBoYW5kbGVyIHNob3Vs
ZCBoYXZlIGJlZW4gcmVtb3ZlZCIpOwogfSwgIk9uY2UgbGlzdGVuZXIgc2hvdWxkIGJlIGFkZGVk
IC8gcmVtb3ZlZCBsaWtlIG5vcm1hbCBsaXN0ZW5lcnMiKTsKIAordGVzdChmdW5jdGlvbigpIHsK
KyAgdmFyIGludm9rZWRfY291bnQgPSAwOworCisgIGZvciAobGV0IG4gPSA0OyBuID4gMDsgbi0t
KSB7CisgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndGVzdCcsIChlKSA9PiB7CisgICAg
ICBpbnZva2VkX2NvdW50Kys7CisgICAgICBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpOwor
ICAgIH0sIHtvbmNlOiB0cnVlfSk7CisgIH0KKworICBmb3IgKGxldCBuID0gNDsgbiA+IDA7IG4t
LSkgeworICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCd0ZXN0JykpOworICB9
CisKKyAgYXNzZXJ0X2VxdWFscyhpbnZva2VkX2NvdW50LCA0LCAiVGhlIGxpc3RlbmVycyBzaG91
bGQgYmUgaW52b2tlZCIpOworfSwgIk11bHRpcGxlIG9uY2UgbGlzdGVuZXJzIHNob3VsZCBiZSBp
bnZva2VkIGV2ZW4gaWYgdGhlIHN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiBpcyBzZXQiKTsKKwog
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xpY2stZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2
ZW50LWRpc3BhdGNoLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCA4ZTg2OGU2YWUyN2EyOTAxYzM4
ZTNhZDNlNzJlYWZkOWI0Y2QwOWFlLi5jZmE1YjkwNDM0ODU4Mjg4ODZhMjlkNzgxYzU5ZDFlYTdl
M2VlOGM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xpY2stZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9F
dmVudC1kaXNwYXRjaC1jbGljay1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw2IEBACiAKK0hhcm5l
c3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAorCiBQQVNTIGJhc2ljIHdpdGggY2xp
Y2soKQogUEFTUyBiYXNpYyB3aXRoIGRpc3BhdGNoRXZlbnQoKQogUEFTUyBiYXNpYyB3aXRoIHdy
b25nIGV2ZW50IGNsYXNzCkBAIC0xNCw1ICsxNiwxNiBAQCBQQVNTIGRpc2Nvbm5lY3RlZCBjaGVj
a2JveCBzaG91bGQgYmUgY2hlY2tlZAogUEFTUyBkaXNjb25uZWN0ZWQgcmFkaW8gc2hvdWxkIGJl
IGNoZWNrZWQKIFBBU1MgZGlzY29ubmVjdGVkIGNoZWNrYm94IHNob3VsZCBiZSBjaGVja2VkIGZy
b20gZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgnY2xpY2snKSkKIFBBU1MgZGlzY29ubmVj
dGVkIHJhZGlvIHNob3VsZCBiZSBjaGVja2VkIGZyb20gZGlzcGF0Y2hFdmVudChuZXcgTW91c2VF
dmVudCgnY2xpY2snKSkKK1BBU1MgZGlzYWJsZWQgY2hlY2tib3ggc2hvdWxkIGJlIGNoZWNrZWQg
ZnJvbSBkaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIpKQorUEFTUyBkaXNhYmxl
ZCByYWRpbyBzaG91bGQgYmUgY2hlY2tlZCBmcm9tIGRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZl
bnQoImNsaWNrIikpCitUSU1FT1VUIGRpc2FibGVkIGNoZWNrYm94IHNob3VsZCBmaXJlIG9uY2xp
Y2sgVGVzdCB0aW1lZCBvdXQKK1RJTUVPVVQgZGlzYWJsZWQgcmFkaW8gc2hvdWxkIGZpcmUgb25j
bGljayBUZXN0IHRpbWVkIG91dAorVElNRU9VVCBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQgZ2V0
IGxlZ2FjeS1jYW5jZWxlZC1hY3RpdmF0aW9uIGJlaGF2aW9yIFRlc3QgdGltZWQgb3V0CitUSU1F
T1VUIGRpc2FibGVkIHJhZGlvIHNob3VsZCBnZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24g
YmVoYXZpb3IgVGVzdCB0aW1lZCBvdXQKK1BBU1MgZGlzYWJsZWQgY2hlY2tib3ggc2hvdWxkIGdl
dCBsZWdhY3ktY2FuY2VsZWQtYWN0aXZhdGlvbiBiZWhhdmlvciAyCitGQUlMIGRpc2FibGVkIHJh
ZGlvIHNob3VsZCBnZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3IgMiBhc3Nl
cnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCiBQQVNTIGRpc2Nvbm5lY3RlZCBmb3Jt
IHNob3VsZCBub3Qgc3VibWl0CitQQVNTIGRpc2FibGVkIHN1Ym1pdCBidXR0b24gc2hvdWxkIG5v
dCBhY3RpdmF0ZQorUEFTUyBzdWJtaXQgYnV0dG9uIHNob3VsZCBub3QgYWN0aXZhdGUgaWYgdGhl
IGV2ZW50IGxpc3RlbmVyIGRpc2FibGVzIGl0CitQQVNTIHN1Ym1pdCBidXR0b24gdGhhdCBtb3Jw
aGVkIGZyb20gY2hlY2tib3ggc2hvdWxkIG5vdCBhY3RpdmF0ZQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQt
ZGlzcGF0Y2gtY2xpY2suaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay5odG1sCmluZGV4IDc2OTBm
NzUzZDljZDBiNDdmMmMyYzI1MzUyNTc2Y2FlZDk3MGNkMTkuLmJiYzQwOGRmODgyNTY2NjhlN2Y0
Y2FjYzA4MzcwNjVjM2M3ZDFjMTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay5odG1s
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2
ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay5odG1sCkBAIC0yMDksNiArMjA5LDg2IEBAIGFzeW5j
X3Rlc3QodCA9PiB7CiAgIGlucHV0LmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoJ2NsaWNr
JykpOwogfSwgYGRpc2Nvbm5lY3RlZCByYWRpbyBzaG91bGQgYmUgY2hlY2tlZCBmcm9tIGRpc3Bh
dGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoJ2NsaWNrJykpYCk7CiAKK3Rlc3QoKCkgPT4geworICBj
b25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7CisgIGlucHV0LnR5
cGUgPSAiY2hlY2tib3giOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGlucHV0LmRpc3Bh
dGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpOworICBhc3NlcnRfdHJ1ZShpbnB1dC5j
aGVja2VkKTsKK30sIGBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQgYmUgY2hlY2tlZCBmcm9tIGRp
c3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpYCk7CisKK3Rlc3QoKCkgPT4gewor
ICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7CisgIGlucHV0
LnR5cGUgPSAicmFkaW8iOworICBpbnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGlucHV0LmRpc3Bh
dGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpOworICBhc3NlcnRfdHJ1ZShpbnB1dC5j
aGVja2VkKTsKK30sIGBkaXNhYmxlZCByYWRpbyBzaG91bGQgYmUgY2hlY2tlZCBmcm9tIGRpc3Bh
dGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpYCk7CisKK2FzeW5jX3Rlc3QodCA9PiB7
CisgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5w
dXQudHlwZSA9ICJjaGVja2JveCI7CisgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgaW5wdXQu
b25jbGljayA9IHQuc3RlcF9mdW5jX2RvbmUoKTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcg
TW91c2VFdmVudCgiY2xpY2siKSk7Cit9LCBgZGlzYWJsZWQgY2hlY2tib3ggc2hvdWxkIGZpcmUg
b25jbGlja2ApOworCithc3luY190ZXN0KHQgPT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7CisgIGlucHV0LnR5cGUgPSAicmFkaW8iOworICBpbnB1
dC5kaXNhYmxlZCA9IHRydWU7CisgIGlucHV0Lm9uY2xpY2sgPSB0LnN0ZXBfZnVuY19kb25lKCk7
CisgIGlucHV0LmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoImNsaWNrIikpOworfSwgYGRp
c2FibGVkIHJhZGlvIHNob3VsZCBmaXJlIG9uY2xpY2tgKTsKKworYXN5bmNfdGVzdCh0ID0+IHsK
KyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOworICBpbnB1
dC50eXBlID0gImNoZWNrYm94IjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBpbnB1dC5v
bmNsaWNrID0gdC5zdGVwX2Z1bmMoZXYgPT4geworICAgIGFzc2VydF90cnVlKGlucHV0LmNoZWNr
ZWQpOworICAgIGV2LnByZXZlbnREZWZhdWx0KCk7CisgICAgcXVldWVNaWNyb3Rhc2sodC5zdGVw
X2Z1bmNfZG9uZSgoKSA9PiB7CisgICAgICBhc3NlcnRfZmFsc2UoaW5wdXQuY2hlY2tlZCk7Cisg
ICAgfSkpOworICB9KTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgiY2xp
Y2siLCB7IGNhbmNlbGFibGU6IHRydWUgfSkpOworfSwgYGRpc2FibGVkIGNoZWNrYm94IHNob3Vs
ZCBnZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3JgKTsKKworYXN5bmNfdGVz
dCh0ID0+IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIp
OworICBpbnB1dC50eXBlID0gInJhZGlvIjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBp
bnB1dC5vbmNsaWNrID0gdC5zdGVwX2Z1bmMoZXYgPT4geworICAgIGFzc2VydF90cnVlKGlucHV0
LmNoZWNrZWQpOworICAgIGV2LnByZXZlbnREZWZhdWx0KCk7CisgICAgcXVldWVNaWNyb3Rhc2so
dC5zdGVwX2Z1bmNfZG9uZSgoKSA9PiB7CisgICAgICBhc3NlcnRfZmFsc2UoaW5wdXQuY2hlY2tl
ZCk7CisgICAgfSkpOworICB9KTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVu
dCgiY2xpY2siLCB7IGNhbmNlbGFibGU6IHRydWUgfSkpOworfSwgYGRpc2FibGVkIHJhZGlvIHNo
b3VsZCBnZXQgbGVnYWN5LWNhbmNlbGVkLWFjdGl2YXRpb24gYmVoYXZpb3JgKTsKKwordGVzdCh0
ID0+IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOwor
ICBpbnB1dC50eXBlID0gImNoZWNrYm94IjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBj
b25zdCBldiA9IG5ldyBNb3VzZUV2ZW50KCJjbGljayIsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KTsK
KyAgZXYucHJldmVudERlZmF1bHQoKTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChldik7CisgIGFz
c2VydF9mYWxzZShpbnB1dC5jaGVja2VkKTsKK30sIGBkaXNhYmxlZCBjaGVja2JveCBzaG91bGQg
Z2V0IGxlZ2FjeS1jYW5jZWxlZC1hY3RpdmF0aW9uIGJlaGF2aW9yIDJgKTsKKwordGVzdCh0ID0+
IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOworICBp
bnB1dC50eXBlID0gInJhZGlvIjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBjb25zdCBl
diA9IG5ldyBNb3VzZUV2ZW50KCJjbGljayIsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KTsKKyAgZXYu
cHJldmVudERlZmF1bHQoKTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVudChldik7CisgIGFzc2VydF9m
YWxzZShpbnB1dC5jaGVja2VkKTsKK30sIGBkaXNhYmxlZCByYWRpbyBzaG91bGQgZ2V0IGxlZ2Fj
eS1jYW5jZWxlZC1hY3RpdmF0aW9uIGJlaGF2aW9yIDJgKTsKKwogYXN5bmNfdGVzdChmdW5jdGlv
bih0KSB7CiAgIHZhciBmb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9ybSIpCiAgIHZh
ciBkaWRTdWJtaXQgPSBmYWxzZQpAQCAtMjIyLDQgKzMwMiw1MCBAQCBhc3luY190ZXN0KGZ1bmN0
aW9uKHQpIHsKICAgYXNzZXJ0X2ZhbHNlKGRpZFN1Ym1pdCkKICAgdC5kb25lKCkKIH0sICJkaXNj
b25uZWN0ZWQgZm9ybSBzaG91bGQgbm90IHN1Ym1pdCIpCisKK2FzeW5jX3Rlc3QodCA9PiB7Cisg
IGNvbnN0IGZvcm0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb3JtIik7CisgIGZvcm0ub25z
dWJtaXQgPSB0LnN0ZXBfZnVuYyhldiA9PiB7CisgICAgZXYucHJldmVudERlZmF1bHQoKTsKKyAg
ICBhc3NlcnRfdW5yZWFjaGVkKCJUaGUgZm9ybSBpcyB1bmV4cGVjdGVkbHkgc3VibWl0dGVkLiIp
OworICB9KTsKKyAgZHVtcC5hcHBlbmQoZm9ybSk7CisgIGNvbnN0IGlucHV0ID0gZm9ybS5hcHBl
bmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKTsKKyAgaW5wdXQudHlwZSA9
ICJzdWJtaXQiCisgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgaW5wdXQuZGlzcGF0Y2hFdmVu
dChuZXcgTW91c2VFdmVudCgiY2xpY2siLCB7IGNhbmNlbGFibGU6IHRydWUgfSkpOworICB0LmRv
bmUoKTsKK30sICJkaXNhYmxlZCBzdWJtaXQgYnV0dG9uIHNob3VsZCBub3QgYWN0aXZhdGUiKTsK
KworYXN5bmNfdGVzdCh0ID0+IHsKKyAgY29uc3QgZm9ybSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImZvcm0iKTsKKyAgZm9ybS5vbnN1Ym1pdCA9IHQuc3RlcF9mdW5jKGV2ID0+IHsKKyAgICBl
di5wcmV2ZW50RGVmYXVsdCgpOworICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBmb3JtIGlzIHVu
ZXhwZWN0ZWRseSBzdWJtaXR0ZWQuIik7CisgIH0pOworICBkdW1wLmFwcGVuZChmb3JtKTsKKyAg
Y29uc3QgaW5wdXQgPSBmb3JtLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlu
cHV0IikpOworICBpbnB1dC5vbmNsaWNrID0gdC5zdGVwX2Z1bmMoKCkgPT4geworICAgIGlucHV0
LmRpc2FibGVkID0gdHJ1ZTsKKyAgfSk7CisgIGlucHV0LnR5cGUgPSAic3VibWl0IgorICBpbnB1
dC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIsIHsgY2FuY2VsYWJsZTogdHJ1
ZSB9KSk7CisgIHQuZG9uZSgpOworfSwgInN1Ym1pdCBidXR0b24gc2hvdWxkIG5vdCBhY3RpdmF0
ZSBpZiB0aGUgZXZlbnQgbGlzdGVuZXIgZGlzYWJsZXMgaXQiKTsKKworYXN5bmNfdGVzdCh0ID0+
IHsKKyAgY29uc3QgZm9ybSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImZvcm0iKTsKKyAgZm9y
bS5vbnN1Ym1pdCA9IHQuc3RlcF9mdW5jKGV2ID0+IHsKKyAgICBldi5wcmV2ZW50RGVmYXVsdCgp
OworICAgIGFzc2VydF91bnJlYWNoZWQoIlRoZSBmb3JtIGlzIHVuZXhwZWN0ZWRseSBzdWJtaXR0
ZWQuIik7CisgIH0pOworICBkdW1wLmFwcGVuZChmb3JtKTsKKyAgY29uc3QgaW5wdXQgPSBmb3Jt
LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IikpOworICBpbnB1dC5v
bmNsaWNrID0gdC5zdGVwX2Z1bmMoKCkgPT4geworICAgIGlucHV0LnR5cGUgPSAic3VibWl0Igor
ICAgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgfSk7CisgIGlucHV0LmNsaWNrKCk7CisgIHQu
ZG9uZSgpOworfSwgInN1Ym1pdCBidXR0b24gdGhhdCBtb3JwaGVkIGZyb20gY2hlY2tib3ggc2hv
dWxkIG5vdCBhY3RpdmF0ZSIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gt
Y2xpY2sudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay50ZW50YXRp
dmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmViNmM1NTA3NWQ0NTQ1MWE5YmFhNjY1MTQ1MmM3
Y2QxYWIzMWU1MjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xpY2sudGVudGF0
aXZlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKKworUEFTUyBkaXNhYmxlZCBjaGVja2Jv
eCBzaG91bGQgbm90IGJlIGNoZWNrZWQgZnJvbSBsYWJlbCBjbGljaworUEFTUyBkaXNhYmxlZCBy
YWRpbyBzaG91bGQgbm90IGJlIGNoZWNrZWQgZnJvbSBsYWJlbCBjbGljaworUEFTUyBkaXNhYmxl
ZCBjaGVja2JveCBzaG91bGQgbm90IGJlIGNoZWNrZWQgZnJvbSBsYWJlbCBjbGljayBieSBkaXNw
YXRjaEV2ZW50CitQQVNTIGRpc2FibGVkIHJhZGlvIHNob3VsZCBub3QgYmUgY2hlY2tlZCBmcm9t
IGxhYmVsIGNsaWNrIGJ5IGRpc3BhdGNoRXZlbnQKK0ZBSUwgY2hlY2tib3ggbW9ycGhlZCBpbnRv
IGFub3RoZXIgdHlwZSBzaG91bGQgbm90IG11dGF0ZSBjaGVja2VkIHN0YXRlIGFzc2VydF9mYWxz
ZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKK0ZBSUwgcmFkaW8gbW9ycGhlZCBpbnRvIGFub3Ro
ZXIgdHlwZSBzaG91bGQgbm90IHN0ZWFsIHRoZSBleGlzdGluZyBjaGVja2VkIHN0YXRlIGFzc2Vy
dF9mYWxzZTogZXhwZWN0ZWQgZmFsc2UgZ290IHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3Bh
dGNoLWNsaWNrLnRlbnRhdGl2ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWNsaWNrLnRlbnRhdGl2ZS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmNmZGFlNTVlZjJhYjQ4ZGYwODQyYzA1MGI3ODQ0YjNlNTI5OTZkZTQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtY2xpY2sudGVudGF0aXZlLmh0bWwKQEAg
LTAsMCArMSw3OCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8dGl0bGU+Q2xpY2tzIG9uIGlucHV0IGVs
ZW1lbnQ8L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorPGRpdiBpZD1kdW1wIHN0eWxlPWRpc3BsYXk6bm9uZT48L2Rpdj4KKzxzY3JpcHQ+
Cit2YXIgZHVtcCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdW1wIikKKwordGVzdCh0ID0+
IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOworICBp
bnB1dC50eXBlID0gImNoZWNrYm94IjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOworICBjb25z
dCBsYWJlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxhYmVsIik7CisgIGxhYmVsLmFwcGVu
ZChpbnB1dCk7CisgIGR1bXAuYXBwZW5kKGxhYmVsKTsKKyAgbGFiZWwuY2xpY2soKTsKKyAgYXNz
ZXJ0X2ZhbHNlKGlucHV0LmNoZWNrZWQpOworfSwgImRpc2FibGVkIGNoZWNrYm94IHNob3VsZCBu
b3QgYmUgY2hlY2tlZCBmcm9tIGxhYmVsIGNsaWNrIik7CisKK3Rlc3QodCA9PiB7CisgIGNvbnN0
IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKKyAgaW5wdXQudHlwZSA9
ICJyYWRpbyI7CisgIGlucHV0LmRpc2FibGVkID0gdHJ1ZTsKKyAgY29uc3QgbGFiZWwgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJsYWJlbCIpOworICBsYWJlbC5hcHBlbmQoaW5wdXQpOworICBk
dW1wLmFwcGVuZChsYWJlbCk7CisgIGxhYmVsLmNsaWNrKCk7CisgIGFzc2VydF9mYWxzZShpbnB1
dC5jaGVja2VkKTsKK30sICJkaXNhYmxlZCByYWRpbyBzaG91bGQgbm90IGJlIGNoZWNrZWQgZnJv
bSBsYWJlbCBjbGljayIpOworCit0ZXN0KHQgPT4geworICBjb25zdCBpbnB1dCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7CisgIGlucHV0LnR5cGUgPSAiY2hlY2tib3giOworICBp
bnB1dC5kaXNhYmxlZCA9IHRydWU7CisgIGNvbnN0IGxhYmVsID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgibGFiZWwiKTsKKyAgbGFiZWwuYXBwZW5kKGlucHV0KTsKKyAgZHVtcC5hcHBlbmQobGFi
ZWwpOworICBsYWJlbC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIpKTsKKyAg
YXNzZXJ0X2ZhbHNlKGlucHV0LmNoZWNrZWQpOworfSwgImRpc2FibGVkIGNoZWNrYm94IHNob3Vs
ZCBub3QgYmUgY2hlY2tlZCBmcm9tIGxhYmVsIGNsaWNrIGJ5IGRpc3BhdGNoRXZlbnQiKTsKKwor
dGVzdCh0ID0+IHsKKyAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1
dCIpOworICBpbnB1dC50eXBlID0gInJhZGlvIjsKKyAgaW5wdXQuZGlzYWJsZWQgPSB0cnVlOwor
ICBjb25zdCBsYWJlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxhYmVsIik7CisgIGxhYmVs
LmFwcGVuZChpbnB1dCk7CisgIGR1bXAuYXBwZW5kKGxhYmVsKTsKKyAgbGFiZWwuZGlzcGF0Y2hF
dmVudChuZXcgTW91c2VFdmVudCgiY2xpY2siKSk7CisgIGFzc2VydF9mYWxzZShpbnB1dC5jaGVj
a2VkKTsKK30sICJkaXNhYmxlZCByYWRpbyBzaG91bGQgbm90IGJlIGNoZWNrZWQgZnJvbSBsYWJl
bCBjbGljayBieSBkaXNwYXRjaEV2ZW50Iik7CisKK3Rlc3QodCA9PiB7CisgIGNvbnN0IGNoZWNr
Ym94ID0gZHVtcC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKTsK
KyAgY2hlY2tib3gudHlwZSA9ICJjaGVja2JveCI7CisgIGNoZWNrYm94Lm9uY2xpY2sgPSBldiA9
PiB7CisgICAgY2hlY2tib3gudHlwZSA9ICJkYXRlIjsKKyAgICBldi5wcmV2ZW50RGVmYXVsdCgp
OworICB9OworICBjaGVja2JveC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIs
IHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7CisgIGFzc2VydF9mYWxzZShjaGVja2JveC5jaGVja2Vk
KTsKK30sICJjaGVja2JveCBtb3JwaGVkIGludG8gYW5vdGhlciB0eXBlIHNob3VsZCBub3QgbXV0
YXRlIGNoZWNrZWQgc3RhdGUiKTsKKwordGVzdCh0ID0+IHsKKyAgY29uc3QgcmFkaW8xID0gZHVt
cC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKTsKKyAgY29uc3Qg
cmFkaW8yID0gZHVtcC5hcHBlbmRDaGlsZChyYWRpbzEuY2xvbmVOb2RlKCkpOworICByYWRpbzEu
dHlwZSA9IHJhZGlvMi50eXBlID0gInJhZGlvIjsKKyAgcmFkaW8xLm5hbWUgPSByYWRpbzIubmFt
ZSA9ICJmb28iOworICByYWRpbzIuY2hlY2tlZCA9IHRydWU7CisgIHJhZGlvMS5vbmNsaWNrID0g
ZXYgPT4geworICAgIHJhZGlvMS50eXBlID0gImRhdGUiOworICAgIGV2LnByZXZlbnREZWZhdWx0
KCk7CisgIH07CisgIHJhZGlvMS5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KCJjbGljayIs
IHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7CisgIGFzc2VydF9mYWxzZShyYWRpbzEuY2hlY2tlZCk7
CisgIGFzc2VydF90cnVlKHJhZGlvMi5jaGVja2VkKTsKK30sICJyYWRpbyBtb3JwaGVkIGludG8g
YW5vdGhlciB0eXBlIHNob3VsZCBub3Qgc3RlYWwgdGhlIGV4aXN0aW5nIGNoZWNrZWQgc3RhdGUi
KTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLXJlZGlzcGF0Y2guaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9F
dmVudC1kaXNwYXRjaC1yZWRpc3BhdGNoLmh0bWwKaW5kZXggODkzZjU3ZjA3NzAzYzA2OWUyMGNm
NTJkOTZlZDFlNTY4ZjQwMGQ5Zi4uNzg2OWFhMDBkZTg0NmY4MDdiNTJhYjFjOTMzNzdmNjdiNjkz
YWE0MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLXJlZGlzcGF0Y2guaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQt
ZGlzcGF0Y2gtcmVkaXNwYXRjaC5odG1sCkBAIC00Nyw3ICs0Nyw3IEBAIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgbG9hZEV2ZW50ID0+IHsKICAgICBhc3NlcnRfdHJ1ZShjb250ZW50
TG9hZGVkRXZlbnQuaXNUcnVzdGVkLCAiUmVjZWl2ZWQgRE9NQ29udGVudExvYWRlZCBldmVudCBz
aG91bGQgYmUgdHJ1c3RlZCBiZWZvcmUgcmVkaXNwYXRjaGluZyIpOwogICAgIGJ1dHRvbkVsZW1l
bnQuZGlzcGF0Y2hFdmVudChjb250ZW50TG9hZGVkRXZlbnQpOwogICAgIGFzc2VydF9mYWxzZShj
b250ZW50TG9hZGVkRXZlbnQuaXNUcnVzdGVkLCAiUmVjZWl2ZWQgRE9NQ29udGVudExvYWRlZCBl
dmVudCBzaG91bGRuJ3QgYmUgdHJ1c3RlZCBhZnRlciByZWRpc3BhdGNoaW5nIik7Ci0gICAgYXNz
ZXJ0X3RydWUodW50cnVzdGVkQ29udGVudExvYWRlZEV2ZW50ICE9PSB1bmRlZmluZWQsICJVbnRy
dXN0ZWQgRE9NQ29udGVudExvYWRlZCBldmVudCBzaG91bGQndmUgYmVlbiBmaXJlZCIpOworICAg
IGFzc2VydF9ub3RfZXF1YWxzKHVudHJ1c3RlZENvbnRlbnRMb2FkZWRFdmVudCwgdW5kZWZpbmVk
LCAiVW50cnVzdGVkIERPTUNvbnRlbnRMb2FkZWQgZXZlbnQgc2hvdWxkJ3ZlIGJlZW4gZmlyZWQi
KTsKICAgICB0ZXN0X2NvbnRlbnRMb2FkZWRfcmVkaXNwYXRjaGluZy5kb25lKCk7CiAgIH0pOwog
fSwge2NhcHR1cmU6IHRydWUsIG9uY2U6IHRydWV9KTsKQEAgLTExNCw3ICsxMTQsNyBAQCBhc3lu
YyBmdW5jdGlvbiB0ZXN0TW91c2VVcEFuZENsaWNrRXZlbnQoKSB7CiAgICAgICAuc2VuZCgpCiAg
ICAgICAudGhlbigoKSA9PiB7CiAgICAgICAgIHRlc3RfbW91c2V1cF9yZWRpc3BhdGNoaW5nLnN0
ZXAoKCkgPT4gewotICAgICAgICAgIGFzc2VydF90cnVlKGNsaWNrRXZlbnQgIT09IHVuZGVmaW5l
ZCwgIm1vdXNldXAgYW5kIGNsaWNrIGV2ZW50cyBzaG91bGQndmUgYmVlbiBmaXJlZCIpOworICAg
ICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGNsaWNrRXZlbnQsIHVuZGVmaW5lZCwgIm1vdXNldXAg
YW5kIGNsaWNrIGV2ZW50cyBzaG91bGQndmUgYmVlbiBmaXJlZCIpOwogICAgICAgICB9KTsKICAg
ICAgICAgdGVzdF9tb3VzZXVwX3JlZGlzcGF0Y2hpbmcuZG9uZSgpOwogICAgICAgICB0ZXN0X3Jl
ZGlzcGF0Y2hpbmdfb2ZfZGlzcGF0Y2hpbmdfZXZlbnQuZG9uZSgpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9s
bGluZy9vdmVyc2Nyb2xsLWRlbHRhcy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9vdmVyc2Nyb2xsLWRlbHRhcy5o
dG1sCmluZGV4IDA5MWNmZDA2MzFiNDU0YmFiYWViOGMzMmRkMjg5NDY4YjZkNTA5ZDMuLjZmMGI3
N2YyMmVkYTJhYjQ5Nzg1OWNlOGIwYmNhZmMyNjFiNjZjNWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcv
b3ZlcnNjcm9sbC1kZWx0YXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL292ZXJzY3JvbGwtZGVsdGFzLmh0
bWwKQEAgLTExLDYgKzExLDExIEBACiAgIGhlaWdodDogNTAwcHg7CiAgIGJhY2tncm91bmQ6IHJl
ZDsKIH0KK2h0bWwsIGJvZHkgeworICAvKiBQcmV2ZW50IGFueSBidWlsdC1pbiBicm93c2VyIG92
ZXJzY3JvbGwgZmVhdHVyZXMgZnJvbSBjb25zdW1pbmcgdGhlIHNjcm9sbAorICAgKiBkZWx0YXMg
Ki8KKyAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogbm9uZTsKK30KIAogPC9zdHlsZT4KIApAQCAtNDYs
NiArNTEsMTEgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICBhd2FpdCB3YWl0Rm9yKCgpID0+
IHsgcmV0dXJuIHNjcm9sbGVuZF9yZWNlaXZlZDsgfSwKICAgICAgICAgJ0RvY3VtZW50IGRpZCBu
b3QgcmVjZWl2ZSBzY3JvbGxlbmQgZXZlbnQuJyk7CiAKKyAgICAvLyBFdmVuIHRob3VnaCB3ZSBy
ZXF1ZXN0IDMwMCBwaXhlbHMgb2Ygc2Nyb2xsLCB0aGUgQVBJIGFib3ZlIGRvZXNuJ3QKKyAgICAv
LyBndWFyYW50ZWUgaG93IG11Y2ggc2Nyb2xsIGRlbHRhIHdpbGwgYmUgZ2VuZXJhdGVkIC0gZGlm
ZmVyZW50IGJyb3dzZXJzCisgICAgLy8gY2FuIGNvbnN1bWUgZGlmZmVyZW50IGFtb3VudHMgZm9y
ICJ0b3VjaCBzbG9wIiAoZm9yIGV4YW1wbGUpLiBFbnN1cmUgdGhlCisgICAgLy8gb3ZlcnNjcm9s
bCByZWFjaGVzIGF0IGxlYXN0IDEwMCBwaXhlbHMgd2hpY2ggaXMgYSBmYWlybHkgY29uc2VydmF0
aXZlCisgICAgLy8gdmFsdWUuCiAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhhbihvdmVyc2Nyb2xsZWRf
eV9kZWx0YXMubGVuZ3RoLCAwLCAiVGhlcmUgc2hvdWxkIGJlIGF0IGxlYXN0IG9uZSBvdmVyc2Ny
b2xsIGV2ZW50cyB3aGVuIG92ZXJzY3JvbGxpbmcuIik7CiAgICAgYXNzZXJ0X2VxdWFscyhvdmVy
c2Nyb2xsZWRfeF9kZWx0YXMuZmlsdGVyKGZ1bmN0aW9uKHgpeyByZXR1cm4geCE9MDsgfSkubGVu
Z3RoLCAwLCAiVGhlIGRlbHRhWCBhdHRyaWJ1dGUgbXVzdCBiZSAwIHdoZW4gdGhlcmUgaXMgbm8g
c2Nyb2xsaW5nIGluIHggZGlyZWN0aW9uLiIpOwogICAgIGFzc2VydF9sZXNzX3RoYW5fZXF1YWwo
TWF0aC5tYXgoLi4ub3ZlcnNjcm9sbGVkX3lfZGVsdGFzKSwgMCwgIlRoZSBkZWx0YVkgYXR0cmli
dXRlIG11c3QgYmUgPD0gMCB3aGVuIHRoZXJlIGlzIG92ZXJzY3JvbGxpbmcgaW4gdXAgZGlyZWN0
aW9uLiIpOwpAQCAtNjEsMTAgKzcxLDE0IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgYXdh
aXQgd2FpdEZvcigoKSA9PiB7IHJldHVybiBzY3JvbGxlbmRfcmVjZWl2ZWQ7IH0sCiAgICAgICAg
ICdEb2N1bWVudCBkaWQgbm90IHJlY2VpdmUgc2Nyb2xsZW5kIGV2ZW50LicpOwogCisgICAgLy8g
VE9ETyhib2thbik6IEl0IGxvb2tzIGxpa2UgQ2hyb21lIGluYXBwcm9wcmlhdGVseSBmaWx0ZXJz
IHNvbWUgc2Nyb2xsCisgICAgLy8gZXZlbnRzIGRlc3BpdGUgfG92ZXJzY3JvbGwtYmVoYXZpb3J8
IGJlaW5nIHNldCB0byBub25lLiBUaGUgb3ZlcnNjcm9sbAorICAgIC8vIGFtb3VudCBoZXJlIGhh
cyBiZWVuIGxvb3NlbmVkIGJ1dCB0aGlzIHNob3VsZCBiZSBmaXhlZCBpbiBDaHJvbWUuCisgICAg
Ly8gaHR0cHM6Ly9jcmJ1Zy5jb20vMTExMjE4My4KICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuKG92
ZXJzY3JvbGxlZF95X2RlbHRhcy5sZW5ndGgsIDAsICJUaGVyZSBzaG91bGQgYmUgYXQgbGVhc3Qg
b25lIG92ZXJzY3JvbGwgZXZlbnRzIHdoZW4gb3ZlcnNjcm9sbGluZy4iKTsKICAgICBhc3NlcnRf
ZXF1YWxzKG92ZXJzY3JvbGxlZF95X2RlbHRhcy5maWx0ZXIoZnVuY3Rpb24oeCl7IHJldHVybiB4
IT0wOyB9KS5sZW5ndGgsIDAsICJUaGUgZGVsdGFZIGF0dHJpYnV0ZSBtdXN0IGJlIDAgd2hlbiB0
aGVyZSBpcyBubyBzY3JvbGxpbmcgaW4geSBkaXJlY3Rpb24uIik7CiAgICAgYXNzZXJ0X2xlc3Nf
dGhhbl9lcXVhbChNYXRoLm1heCguLi5vdmVyc2Nyb2xsZWRfeF9kZWx0YXMpLCAwLCAiVGhlIGRl
bHRhWCBhdHRyaWJ1dGUgbXVzdCBiZSA8PSAwIHdoZW4gdGhlcmUgaXMgb3ZlcnNjcm9sbGluZyBp
biBsZWZ0IGRpcmVjdGlvbi4iKTsKLSAgICBhc3NlcnRfbGVzc190aGFuX2VxdWFsKE1hdGgubWlu
KC4uLm92ZXJzY3JvbGxlZF94X2RlbHRhcyksLTEwMCwgIlRoZSBkZWx0YVggYXR0cmlidXRlIG11
c3QgYmUgdGhlIG51bWJlciBvZiBwaXhlbHMgb3ZlcnNjcm9sbGVkLiIpOworICAgIGFzc2VydF9s
ZXNzX3RoYW5fZXF1YWwoTWF0aC5taW4oLi4ub3ZlcnNjcm9sbGVkX3hfZGVsdGFzKSwtNTAsICJU
aGUgZGVsdGFYIGF0dHJpYnV0ZSBtdXN0IGJlIHRoZSBudW1iZXIgb2YgcGl4ZWxzIG92ZXJzY3Jv
bGxlZC4iKTsKIAogICB9LCAnVGVzdHMgdGhhdCB0aGUgZG9jdW1lbnQgZ2V0cyBvdmVyc2Nyb2xs
IGV2ZW50IHdpdGggcmlnaHQgZGVsdGFYL1kgYXR0cmlidXRlcy4nKTsKIH0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9z
Y3JvbGxpbmcvc2Nyb2xsX3N1cHBvcnQuanMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbF9zdXBwb3J0LmpzCmlu
ZGV4IDZmZDFiMzIyOTRiYjg5MzNiNWU5OTE4ZWE4MjYwYjg3M2I5ODdmOGEuLjBhNzNmMzRmZWZj
OGFiNTM5NjJlMWExNWNlNWZiNmU4YzBiNDVhOTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xs
X3N1cHBvcnQuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxfc3VwcG9ydC5qcwpAQCAtODMsMyArODMs
MTUgQEAgZnVuY3Rpb24gdG91Y2hTY3JvbGxJblRhcmdldChwaXhlbHNfdG9fc2Nyb2xsLCB0YXJn
ZXQsIGRpcmVjdGlvbiwgcGF1c2VfdGltZV9pbl8KIGZ1bmN0aW9uIHRvdWNoRmxpbmdJblRhcmdl
dChwaXhlbHNfdG9fc2Nyb2xsLCB0YXJnZXQsIGRpcmVjdGlvbikgewogICB0b3VjaFNjcm9sbElu
VGFyZ2V0KHBpeGVsc190b19zY3JvbGwsIHRhcmdldCwgZGlyZWN0aW9uLCAwIC8qIHBhdXNlX3Rp
bWUgKi8pOwogfQorCitmdW5jdGlvbiBtb3VzZUFjdGlvbnNJblRhcmdldCh0YXJnZXQsIG9yaWdp
biwgZGVsdGEsIHBhdXNlX3RpbWVfaW5fbXMgPSAxMDApIHsKKyAgcmV0dXJuIG5ldyB0ZXN0X2Ry
aXZlci5BY3Rpb25zKCkKKyAgICAuYWRkUG9pbnRlcigicG9pbnRlcjEiLCAibW91c2UiKQorICAg
IC5wb2ludGVyTW92ZShvcmlnaW4ueCwgb3JpZ2luLnksIHsgb3JpZ2luOiB0YXJnZXQgfSkKKyAg
ICAucG9pbnRlckRvd24oKQorICAgIC5wb2ludGVyTW92ZShvcmlnaW4ueCArIGRlbHRhLngsIG9y
aWdpbi55ICsgZGVsdGEueSwgeyBvcmlnaW46IHRhcmdldCB9KQorICAgIC5wb2ludGVyTW92ZShv
cmlnaW4ueCArIGRlbHRhLnggKiAyLCBvcmlnaW4ueSArIGRlbHRhLnkgKiAyLCB7IG9yaWdpbjog
dGFyZ2V0IH0pCisgICAgLnBhdXNlKHBhdXNlX3RpbWVfaW5fbXMpCisgICAgLnBvaW50ZXJVcCgp
CisgICAgLnNlbmQoKTsKK30KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xsZW5kLWV2ZW50LWZv
ci11c2VyLXNjcm9sbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbGVuZC1ldmVudC1mb3It
dXNlci1zY3JvbGwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI0NzlkYmNhMTdlYzExOWE4MmIx
YmRmZjljZjU2ZjMyYmNmODMxYjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3Njcm9sbGVu
ZC1ldmVudC1mb3ItdXNlci1zY3JvbGwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorCitI
YXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKworRkFJTCBUZXN0cyB0aGF0
IHRoZSB0YXJnZXRfZGl2IGdldHMgc2Nyb2xsZW5kIGV2ZW50IHdoZW4gZHJhZ2dpbmcgc2Nyb2xs
IG9uIHRhcmdldC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
ICJ0YXJnZXRfZGl2IGRpZCBub3QgcmVjZWl2ZSBzY3JvbGxlbmQgZXZlbnQgYWZ0ZXIgZHJhZ2dp
bmcgc2Nyb2xsIG9uIHRhcmdldC4iCitGQUlMIFRlc3RzIHRoYXQgdGhlIHRhcmdldF9kaXYgZ2V0
cyBzY3JvbGxlbmQgZXZlbnQgd2hlbiBjbGljayBzY3JvbGxiYXIgb24gdGFyZ2V0LiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogInRhcmdldF9kaXYgZGlkIG5v
dCByZWNlaXZlIHNjcm9sbGVuZCBldmVudCBhZnRlciBjbGlja2luZyBzY3JvbGxiYXIgb24gdGFy
Z2V0LiIKK1RJTUVPVVQgVGVzdHMgdGhhdCB0aGUgdGFyZ2V0X2RpdiBnZXRzIHNjcm9sbGVuZCBl
dmVudCB3aGVuIGRyYWcgdGhlIHRodW1iIG9mIHRhcmdldC4gVGVzdCB0aW1lZCBvdXQKK05PVFJV
TiBUZXN0cyB0aGF0IHRoZSB0YXJnZXRfZGl2IGdldHMgc2Nyb2xsZW5kIGV2ZW50IHdoZW4gc2Vu
ZCBET1dOIGtleSB0byB0YXJnZXQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xsZW5kLWV2
ZW50LWZvci11c2VyLXNjcm9sbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxlbmQtZXZlbnQtZm9yLXVz
ZXItc2Nyb2xsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzBmMTY1NzFjZDgzMjAxZTAzOWZkOWU2ODJlMGNj
YTZiODU2OWQ3NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcvc2Nyb2xsZW5kLWV2ZW50LWZv
ci11c2VyLXNjcm9sbC5odG1sCkBAIC0wLDAgKzEsMTM4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0ZHJpdmVyLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Rkcml2ZXItYWN0aW9ucy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0ZHJpdmVyLXZlbmRvci5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0ic2Nyb2xsX3N1cHBvcnQuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAg
ICN0YXJnZXREaXYgeworICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIGhlaWdodDogMjAw
cHg7CisgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CisgICAgfQorCisgICAgI2lubmVyRGl2IHsK
KyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDQwMHB4OworICAgIH0KKzwv
c3R5bGU+Cis8L2hlYWQ+Cis8Ym9keSBzdHlsZT0ibWFyZ2luOjAiIG9ubG9hZD1ydW5UZXN0KCk+
CisgICAgPGRpdiBpZD0idGFyZ2V0RGl2Ij4KKyAgICAgICAgPGRpdiBpZD0iaW5uZXJEaXYiPgor
ICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvYm9keT4KKworPHNjcmlwdD4KK3ZhciB0YXJn
ZXRfZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RhcmdldERpdicpOwordmFyIHNjcm9s
bGVuZF9hcnJpdmVkID0gZmFsc2U7CisKK2Z1bmN0aW9uIG9uU2Nyb2xsRW5kKGV2ZW50KSB7Cisg
ICAgYXNzZXJ0X2ZhbHNlKGV2ZW50LmNhbmNlbGFibGUpOworICAgIGFzc2VydF9mYWxzZShldmVu
dC5idWJibGVzKTsKKyAgICBzY3JvbGxlbmRfYXJyaXZlZCA9IHRydWU7Cit9CisKK2Z1bmN0aW9u
IHJlc2V0VGFyZ2V0U2Nyb2xsU3RhdGUoKSB7CisgICAgdGFyZ2V0X2Rpdi5zY3JvbGxUb3AgPSAw
OworICAgIHRhcmdldF9kaXYuc2Nyb2xsTGVmdCA9IDA7Cit9CisKK2Z1bmN0aW9uIGNoZWNrRmlu
YWxQb3NpdGlvbih0YXJnZXQsIHBvc2l0aW9uLCBwYXVzZV90aW1lX2luX21zKSB7CisgICAgcmV0
dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgc3RlcF90aW1l
b3V0KCgpID0+IHsKKyAgICAgICAgICAgIHJlc29sdmUoKTsKKyAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMocG9zaXRpb24ueCwgdGFyZ2V0LnNjcm9sbExlZnQpOworICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhwb3NpdGlvbi55LCB0YXJnZXQuc2Nyb2xsVG9wKTsKKyAgICAgICAgfSwgcGF1c2Vf
dGltZV9pbl9tcyk7CisgICAgfSk7Cit9CisKK3RhcmdldF9kaXYuYWRkRXZlbnRMaXN0ZW5lcigi
c2Nyb2xsZW5kIiwgb25TY3JvbGxFbmQpOworCitmdW5jdGlvbiBydW5UZXN0KCkgeworICAgIHBy
b21pc2VfdGVzdChhc3luYyAodCkgPT4geworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCBubyBz
Y3JvbGxlbmQgZXZlbnQgaXMgc2VudCB0byB3aW5kb3cuCisgICAgICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJzY3JvbGxlbmQiLAorICAgICAgICAgICAgdC51bnJlYWNoZWRfZnVuYygid2lu
ZG93IGdvdCB1bmV4cGVjdGVkIHNjcm9sbGVuZCBldmVudC4iKSk7CisgICAgICAgIGF3YWl0IHdh
aXRGb3JDb21wb3NpdG9yQ29tbWl0KCk7CisgICAgICAgIHNjcm9sbGVuZF9hcnJpdmVkID0gZmFs
c2U7CisKKyAgICAgICAgLy8gUGVyZm9ybSBkcmFnIGFjdGlvbiBvbiB0YXJnZXQgZGl2IGFuZCB3
YWl0IGZvciB0YXJnZXRfZGl2IHRvIGdldCBzY3JvbGxlbmQgZXZlbnQuCisgICAgICAgIHZhciBv
cmlnaW4gPSB7IHg6IHRhcmdldF9kaXYub2Zmc2V0V2lkdGggLyAyLCB5OiB0YXJnZXRfZGl2Lm9m
ZnNldEhlaWdodCAtIDUwIH07CisgICAgICAgIHZhciBkZWx0YSA9IHsgeDogMCwgeTogNDAgfTsK
KyAgICAgICAgYXdhaXQgbW91c2VBY3Rpb25zSW5UYXJnZXQodGFyZ2V0X2Rpdiwgb3JpZ2luLCBk
ZWx0YSwgMzAwKTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcigoKSA9PiB7IHJldHVybiBzY3JvbGxl
bmRfYXJyaXZlZDsgfSwKKyAgICAgICAgICAgICd0YXJnZXRfZGl2IGRpZCBub3QgcmVjZWl2ZSBz
Y3JvbGxlbmQgZXZlbnQgYWZ0ZXIgZHJhZ2dpbmcgc2Nyb2xsIG9uIHRhcmdldC4nKTsKKyAgICAg
ICAgYXNzZXJ0X3RydWUodGFyZ2V0X2Rpdi5zY3JvbGxUb3AgPiAwKTsKKyAgICAgICAgYXdhaXQg
Y2hlY2tGaW5hbFBvc2l0aW9uKHRhcmdldF9kaXYsIHt4OiB0YXJnZXRfZGl2LnNjcm9sbExlZnQs
IHk6IHRhcmdldF9kaXYuc2Nyb2xsVG9wfSwgMzAwKTsKKyAgICB9LCAnVGVzdHMgdGhhdCB0aGUg
dGFyZ2V0X2RpdiBnZXRzIHNjcm9sbGVuZCBldmVudCB3aGVuIGRyYWdnaW5nIHNjcm9sbCBvbiB0
YXJnZXQuJyk7CisKKyAgICBwcm9taXNlX3Rlc3QoYXN5bmMgKHQpID0+IHsKKyAgICAgICAgcmVz
ZXRUYXJnZXRTY3JvbGxTdGF0ZSgpOworICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCBubyBzY3Jv
bGxlbmQgZXZlbnQgaXMgc2VudCB0byB3aW5kb3cuCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExp
c3RlbmVyKCJzY3JvbGxlbmQiLAorICAgICAgICAgICAgdC51bnJlYWNoZWRfZnVuYygid2luZG93
IGdvdCB1bmV4cGVjdGVkIHNjcm9sbGVuZCBldmVudC4iKSk7CisgICAgICAgIGF3YWl0IHdhaXRG
b3JDb21wb3NpdG9yQ29tbWl0KCk7CisgICAgICAgIHNjcm9sbGVuZF9hcnJpdmVkID0gZmFsc2U7
CisKKyAgICAgICAgLy8gSGl0IHRoZSBzY3JvbGxiYXIgb2YgdGFyZ2V0IGRpdiBhbmQgd2FpdCBm
b3IgdGFyZ2V0X2RpdiB0byBnZXQgc2Nyb2xsZW5kIGV2ZW50LgorICAgICAgICB2YXIgc2Nyb2xs
YmFyX3dpZHRoID0gdGFyZ2V0X2Rpdi5vZmZzZXRXaWR0aCAtIHRhcmdldF9kaXYuY2xpZW50V2lk
dGg7CisgICAgICAgIGFzc2VydF90cnVlKHNjcm9sbGJhcl93aWR0aCA+IDAsICJUaGlzIHRlc3Qg
cmVxdWlyZXMgc2Nyb2xsYmFyLiIpOworICAgICAgICB2YXIgb3JpZ2luID0ge3g6IHRhcmdldF9k
aXYub2Zmc2V0V2lkdGggLSBzY3JvbGxiYXJfd2lkdGggLyAyLCB5OiB0YXJnZXRfZGl2Lm9mZnNl
dEhlaWdodCAtIDUwfTsKKyAgICAgICAgdmFyIGRlbHRhID0ge3g6IDAsIHk6IDB9OworICAgICAg
ICBhd2FpdCBtb3VzZUFjdGlvbnNJblRhcmdldCh0YXJnZXRfZGl2LCBvcmlnaW4sIGRlbHRhLCAx
MDApOworICAgICAgICBhd2FpdCB3YWl0Rm9yKCgpID0+IHsgcmV0dXJuIHNjcm9sbGVuZF9hcnJp
dmVkOyB9LAorICAgICAgICAgICAgJ3RhcmdldF9kaXYgZGlkIG5vdCByZWNlaXZlIHNjcm9sbGVu
ZCBldmVudCBhZnRlciBjbGlja2luZyBzY3JvbGxiYXIgb24gdGFyZ2V0LicpOworICAgICAgICBh
c3NlcnRfdHJ1ZSh0YXJnZXRfZGl2LnNjcm9sbFRvcCA+IDApOworICAgICAgICBhd2FpdCBjaGVj
a0ZpbmFsUG9zaXRpb24odGFyZ2V0X2RpdiwgeyB4OiB0YXJnZXRfZGl2LnNjcm9sbExlZnQsIHk6
IHRhcmdldF9kaXYuc2Nyb2xsVG9wIH0sIDMwMCk7CisgICAgfSwgJ1Rlc3RzIHRoYXQgdGhlIHRh
cmdldF9kaXYgZ2V0cyBzY3JvbGxlbmQgZXZlbnQgd2hlbiBjbGljayBzY3JvbGxiYXIgb24gdGFy
Z2V0LicpOworCisgICAgcHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgICAgICAgIHJlc2V0
VGFyZ2V0U2Nyb2xsU3RhdGUoKTsKKyAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgbm8gc2Nyb2xs
ZW5kIGV2ZW50IGlzIHNlbnQgdG8gd2luZG93LgorICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0
ZW5lcigic2Nyb2xsZW5kIiwKKyAgICAgICAgICAgIHQudW5yZWFjaGVkX2Z1bmMoIndpbmRvdyBn
b3QgdW5leHBlY3RlZCBzY3JvbGxlbmQgZXZlbnQuIikpOworICAgICAgICBhd2FpdCB3YWl0Rm9y
Q29tcG9zaXRvckNvbW1pdCgpOworICAgICAgICBzY3JvbGxlbmRfYXJyaXZlZCA9IGZhbHNlOwor
CisKKyAgICAgICAgLy8gRHJhZyB0aGUgdGh1bWIgb2YgdGFyZ2V0IGRpdi4KKyAgICAgICAgdmFy
IHNjcm9sbGJhcl93aWR0aCA9IHRhcmdldF9kaXYub2Zmc2V0V2lkdGggLSB0YXJnZXRfZGl2LmNs
aWVudFdpZHRoOworICAgICAgICBhc3NlcnRfdHJ1ZShzY3JvbGxiYXJfd2lkdGggPiAwLCAiVGhp
cyB0ZXN0IHJlcXVpcmVzIHNjcm9sbGJhci4iKTsKKyAgICAgICAgdmFyIG9yaWdpbiA9IHsgeDog
dGFyZ2V0X2Rpdi5vZmZzZXRXaWR0aCAtIHNjcm9sbGJhcl93aWR0aCAvIDIsIHk6IDUwIH07Cisg
ICAgICAgIHZhciBkZWx0YSA9IHsgeDogMCwgeTogMjAgfTsKKyAgICAgICAgYXdhaXQgbW91c2VB
Y3Rpb25zSW5UYXJnZXQodGFyZ2V0X2Rpdiwgb3JpZ2luLCBkZWx0YSwgMTAwKTsKKyAgICAgICAg
YXdhaXQgd2FpdEZvcigoKSA9PiB7IHJldHVybiBzY3JvbGxlbmRfYXJyaXZlZDsgfSwKKyAgICAg
ICAgICAgICd0YXJnZXRfZGl2IGRpZCBub3QgcmVjZWl2ZSBzY3JvbGxlbmQgZXZlbnQgYWZ0ZXIg
ZHJhZ2dpbmcgdGhlIHRodW1iIG9mIHRhcmdldC4nKTsKKyAgICAgICAgYXNzZXJ0X3RydWUodGFy
Z2V0X2Rpdi5zY3JvbGxUb3AgPiAwKTsKKyAgICAgICAgYXdhaXQgY2hlY2tGaW5hbFBvc2l0aW9u
KHRhcmdldF9kaXYsIHsgeDogdGFyZ2V0X2Rpdi5zY3JvbGxMZWZ0LCB5OiB0YXJnZXRfZGl2LnNj
cm9sbFRvcCB9LCAzMDApOworICAgIH0sICdUZXN0cyB0aGF0IHRoZSB0YXJnZXRfZGl2IGdldHMg
c2Nyb2xsZW5kIGV2ZW50IHdoZW4gZHJhZyB0aGUgdGh1bWIgb2YgdGFyZ2V0LicpOworCisgICAg
cHJvbWlzZV90ZXN0KGFzeW5jICh0KSA9PiB7CisgICAgICAgIHJlc2V0VGFyZ2V0U2Nyb2xsU3Rh
dGUoKTsKKyAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgbm8gc2Nyb2xsZW5kIGV2ZW50IGlzIHNl
bnQgdG8gd2luZG93LgorICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsZW5k
IiwKKyAgICAgICAgICAgIHQudW5yZWFjaGVkX2Z1bmMoIndpbmRvdyBnb3QgdW5leHBlY3RlZCBz
Y3JvbGxlbmQgZXZlbnQuIikpOworICAgICAgICBhd2FpdCB3YWl0Rm9yQ29tcG9zaXRvckNvbW1p
dCgpOworICAgICAgICBzY3JvbGxlbmRfYXJyaXZlZCA9IGZhbHNlOworCisgICAgICAgIC8vIEhp
dCBhbmQgYWN0aXZlIHRoZSB0YXJnZXQgZGl2LgorICAgICAgICB2YXIgb3JpZ2luID0geyB4OiB0
YXJnZXRfZGl2Lm9mZnNldFdpZHRoIC8gMiwgeTogdGFyZ2V0X2Rpdi5vZmZzZXRIZWlnaHQgLyAy
fTsKKyAgICAgICAgdmFyIGRlbHRhID0geyB4OiAwLCB5OiAwIH07CisgICAgICAgIGF3YWl0IG1v
dXNlQWN0aW9uc0luVGFyZ2V0KHRhcmdldF9kaXYsIG9yaWdpbiwgZGVsdGEsIDEwMCk7CisgICAg
ICAgIC8vIFNlbmQgRE9XTiBrZXkgdG8gdGhlIHRhcmdldCBkaXYuCisgICAgICAgIHdpbmRvdy50
ZXN0X2RyaXZlci5zZW5kX2tleXModGFyZ2V0X2RpdiwgJ1x1ZTAxNScpOworCisgICAgICAgIGF3
YWl0IHdhaXRGb3IoKCkgPT4geyByZXR1cm4gc2Nyb2xsZW5kX2Fycml2ZWQ7IH0sCisgICAgICAg
ICAgICAndGFyZ2V0X2RpdiBkaWQgbm90IHJlY2VpdmUgc2Nyb2xsZW5kIGV2ZW50IGFmdGVyIHNl
bmRpbmcgRE9XTiBrZXkgdG8gdGFyZ2V0LicpOworICAgICAgICBhc3NlcnRfdHJ1ZSh0YXJnZXRf
ZGl2LnNjcm9sbFRvcCA+IDApOworICAgICAgICBhd2FpdCBjaGVja0ZpbmFsUG9zaXRpb24odGFy
Z2V0X2RpdiwgeyB4OiB0YXJnZXRfZGl2LnNjcm9sbExlZnQsIHk6IHRhcmdldF9kaXYuc2Nyb2xs
VG9wIH0sIDMwMCk7CisgICAgfSwgJ1Rlc3RzIHRoYXQgdGhlIHRhcmdldF9kaXYgZ2V0cyBzY3Jv
bGxlbmQgZXZlbnQgd2hlbiBzZW5kIERPV04ga2V5IHRvIHRhcmdldC4nKTsKK30KKzwvc2NyaXB0
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcv
dzNjLWltcG9ydC5sb2cKaW5kZXggYTI3YzRiZTczMTE4Y2NlZmZmNjQ5YTA0N2FkNjQ0NjhlMzI5
Yzg4Ny4uZDAwMzQ5ZWI1NmU1NThiMjQxMzMzOTgyYTRhNGU3YjJlMDJjMTFjOCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L3Njcm9sbGluZy93M2MtaW1wb3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvc2Nyb2xsaW5nL3czYy1pbXBvcnQubG9nCkBA
IC0yOCwzICsyOCw0IEBAIExpc3Qgb2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxlbmQtZXZlbnQt
ZmlyZWQtdG8tZWxlbWVudC13aXRoLW92ZXJzY3JvbGwtYmVoYXZpb3IuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcv
c2Nyb2xsZW5kLWV2ZW50LWZpcmVkLXRvLXNjcm9sbGVkLWVsZW1lbnQuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9zY3JvbGxpbmcv
c2Nyb2xsZW5kLWV2ZW50LWZpcmVkLXRvLXdpbmRvdy5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Njcm9sbGluZy9zY3JvbGxlbmQt
ZXZlbnQtZm9yLXVzZXItc2Nyb2xsLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy93M2MtaW1wb3J0LmxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy93M2Mt
aW1wb3J0LmxvZwppbmRleCA1MTlhMmJiNDdiYTUxNGNkNzU5MTlhMDRkODJiZmY5NWExZThhY2Vj
Li4yN2RiYWNhYzc2MGZmZWVjMzA0YWVmMmE4NDgxNWQ1MWY1ODQ5NmY3IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvdzNj
LWltcG9ydC5sb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vZXZlbnRzL3czYy1pbXBvcnQubG9nCkBAIC0yNiw2ICsyNiw3IEBAIExpc3Qgb2Yg
ZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
ZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWJ1YmJsZXMtZmFsc2UuaHRtbAogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1i
dWJibGVzLXRydWUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1jbGljay5odG1sCisvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNo
LWNsaWNrLnRlbnRhdGl2ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLWRldGFjaGVkLWNsaWNrLmh0bWwK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMv
RXZlbnQtZGlzcGF0Y2gtZGV0YWNoZWQtaW5wdXQtYW5kLWNoYW5nZS5odG1sCiAvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3Bh
dGNoLWhhbmRsZXJzLWNoYW5nZWQuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3Jl
YXRlRG9jdW1lbnQtd2l0aC1udWxsLWJyb3dzaW5nLWNvbnRleHQtY3Jhc2guaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxl
bWVudGF0aW9uLWNyZWF0ZURvY3VtZW50LXdpdGgtbnVsbC1icm93c2luZy1jb250ZXh0LWNyYXNo
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYzkzOTNkMGEwOTViMDBlZmM3MWI0MDMwZWEyY2ZjZWNhYTk0ZDgw
NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0ZURvY3VtZW50LXdpdGgt
bnVsbC1icm93c2luZy1jb250ZXh0LWNyYXNoLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPkRPTUltcGxlbWVudGF0aW9u
LmNyZWF0ZURvY3VtZW50KCk8L3RpdGxlPgorPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJOYXRl
IENoYXBpbiIgaHJlZj0ibWFpbHRvOmphcGhldEBjaHJvbWl1bS5vcmciPgorPGxpbmsgcmVsPWhl
bHAgaHJlZj0iaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNkb20tZG9taW1wbGVtZW50YXRp
b24tY3JlYXRlZG9jdW1lbnQiPgorPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2J1Z3Mu
Y2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD0xMDg2ODAxIj4KKzxtZXRh
IG5hbWU9ImFzc2VydCIgY29udGVudD0iQ2FsbGluZyBvbiBjcmVhdGVEb2N1bWVudCgpIG9uIGEg
RE9NSW1wbGVtZW50YXRpb24gZnJvbSBhIGRvY3VtZW50IHdpdGggYSBudWxsIGJyb3dzaW5nIGNv
bnRleHQgc2hvdWxkIG5vdCBjcmFzaCIvPgorPGlmcmFtZSBpZD0iaSI+PC9pZnJhbWU+Cis8c2Ny
aXB0PgordmFyIGRvYyA9IGkuY29udGVudERvY3VtZW50OworaS5yZW1vdmUoKTsKK2RvYy5pbXBs
ZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgiIiwgIiIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9E
T01JbXBsZW1lbnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1udWxsLWJyb3dzaW5nLWNv
bnRleHQtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC13aXRo
LW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQwY2Q2ZjFmNzRi
MjJhYTA3ODU5MjI3NjkwMzAwOTRmMWJjZDhlYzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1l
bnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1udWxsLWJyb3dzaW5nLWNvbnRleHQtY3Jh
c2guaHRtbApAQCAtMCwwICsxLDEzIEBACis8IWRvY3R5cGUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9
dXRmLTg+Cis8dGl0bGU+RE9NSW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCk8L3Rp
dGxlPgorPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJOYXRlIENoYXBpbiIgaHJlZj0ibWFpbHRv
OmphcGhldEBjaHJvbWl1bS5vcmciPgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0cHM6Ly9kb20u
c3BlYy53aGF0d2cub3JnLyNkb20tZG9taW1wbGVtZW50YXRpb24tY3JlYXRlaHRtbGRvY3VtZW50
Ij4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2No
cm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MTA4NjgwMCI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNv
bnRlbnQ9IkNhbGxpbmcgb24gY3JlYXRlSFRNTERvY3VtZW50KCkgb24gYSBET01JbXBsZW1lbnRh
dGlvbiBmcm9tIGEgZG9jdW1lbnQgd2l0aCBhIG51bGwgYnJvd3NpbmcgY29udGV4dCBzaG91bGQg
bm90IGNyYXNoIi8+Cis8aWZyYW1lIGlkPSJpIj48L2lmcmFtZT4KKzxzY3JpcHQ+Cit2YXIgZG9j
ID0gaS5jb250ZW50RG9jdW1lbnQ7CitpLnJlbW92ZSgpOworZG9jLmltcGxlbWVudGF0aW9uLmNy
ZWF0ZUhUTUxEb2N1bWVudCgpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9ET01JbXBsZW1lbnRhdGlv
bi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1pbXBsZW1lbnRhdGlvbi1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1pbXBsZW1l
bnRhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDljYzVjZWFhNjM5MDczMzg3ZTQ5MGI2
NDI0OWViNDdiNzBkOWZlZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0
ZUhUTUxEb2N1bWVudC13aXRoLXNhdmVkLWltcGxlbWVudGF0aW9uLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDMgQEAKKworUEFTUyBjcmVhdGVIVE1MRG9jdW1lbnQoKTogZnJvbSBhIHNhdmVkIGFu
ZCBkZXRhY2hlZCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZXR1cm4gbnVsbAorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9ET01JbXBsZW1lbnRhdGlvbi1jcmVhdGVIVE1MRG9jdW1lbnQtd2l0aC1zYXZlZC1pbXBsZW1l
bnRhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50LXdpdGgtc2F2
ZWQtaW1wbGVtZW50YXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYWUyMjY2MGJmYjVkZWYwOWExMWFk
OWM4YjlkOTVkOGQ2OGZlOWNkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3Jl
YXRlSFRNTERvY3VtZW50LXdpdGgtc2F2ZWQtaW1wbGVtZW50YXRpb24uaHRtbApAQCAtMCwwICsx
LDE2IEBACis8IURPQ1RZUEUgaHRtbD4KKzx0aXRsZT5ET01JbXBsZW1lbnRhdGlvbi5jcmVhdGVI
VE1MRG9jdW1lbnQ8L3RpdGxlPgorPGxpbmsgcmVsPWhlbHAgaHJlZj0iaHR0cHM6Ly9kb20uc3Bl
Yy53aGF0d2cub3JnLyNkb20tZG9taW1wbGVtZW50YXRpb24tY3JlYXRlaHRtbGRvY3VtZW50Ij4K
KzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKzxkaXYg
aWQ9ImxvZyI+PC9kaXY+Cis8c2NyaXB0PgorLy8gVGVzdCB0aGUgZG9jdW1lbnQgbG9jYXRpb24g
Z2V0dGVyIGlzIG51bGwgb3V0c2lkZSBvZiBicm93c2VyIGNvbnRleHQKK3Rlc3QoZnVuY3Rpb24o
KSB7CisgIHZhciBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAg
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnJhbWUpOworICB2YXIgaW1wbGVtZW50YXRpb24g
PSBpZnJhbWUuY29udGVudERvY3VtZW50LmltcGxlbWVudGF0aW9uOworICBpZnJhbWUucmVtb3Zl
KCk7CisgIGFzc2VydF9ub3RfZXF1YWxzKGltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVu
dCgpLCBudWxsKTsKK30sICJjcmVhdGVIVE1MRG9jdW1lbnQoKTogZnJvbSBhIHNhdmVkIGFuZCBk
ZXRhY2hlZCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZXR1cm4gbnVsbCIpCis8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL0RvY3VtZW50LWNvbnRlbnRUeXBlL3N1cHBvcnQvY29udGVudHR5cGVfc2V0dGVy
LnB5IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9k
ZXMvRG9jdW1lbnQtY29udGVudFR5cGUvc3VwcG9ydC9jb250ZW50dHlwZV9zZXR0ZXIucHkKaW5k
ZXggMDJlZmY2NTNjY2Y5YzM5MjNjYzJlMDcwZDI0OTA1MGQ3N2RhM2U4Ny4uYzRiMWY4ZGYyN2Mx
ZWYwM2VjYmU3YjZlOGQ0ZTIzOGQ4OTk3MjQ4YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRG9jdW1lbnQtY29udGVudFR5
cGUvc3VwcG9ydC9jb250ZW50dHlwZV9zZXR0ZXIucHkKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRG9jdW1lbnQtY29udGVudFR5cGUv
c3VwcG9ydC9jb250ZW50dHlwZV9zZXR0ZXIucHkKQEAgLTEsMjAgKzEsMjAgQEAKIGRlZiBtYWlu
KHJlcXVlc3QsIHJlc3BvbnNlKToKLSAgICB0eXBlID0gcmVxdWVzdC5HRVQuZmlyc3QoInR5cGUi
LCBOb25lKQotICAgIHN1YnR5cGUgPSByZXF1ZXN0LkdFVC5maXJzdCgic3VidHlwZSIsIE5vbmUp
CisgICAgdHlwZSA9IHJlcXVlc3QuR0VULmZpcnN0KGIidHlwZSIsIE5vbmUpCisgICAgc3VidHlw
ZSA9IHJlcXVlc3QuR0VULmZpcnN0KGIic3VidHlwZSIsIE5vbmUpCiAgICAgaWYgdHlwZSBhbmQg
c3VidHlwZToKLSAgICAgICAgcmVzcG9uc2UuaGVhZGVyc1siQ29udGVudC1UeXBlIl0gPSB0eXBl
ICsgIi8iICsgc3VidHlwZQorICAgICAgICByZXNwb25zZS5oZWFkZXJzW2IiQ29udGVudC1UeXBl
Il0gPSB0eXBlICsgYiIvIiArIHN1YnR5cGUKIAotICAgIHJlbW92ZUNvbnRlbnRUeXBlID0gcmVx
dWVzdC5HRVQuZmlyc3QoInJlbW92ZUNvbnRlbnRUeXBlIiwgTm9uZSkKKyAgICByZW1vdmVDb250
ZW50VHlwZSA9IHJlcXVlc3QuR0VULmZpcnN0KGIicmVtb3ZlQ29udGVudFR5cGUiLCBOb25lKQog
ICAgIGlmIHJlbW92ZUNvbnRlbnRUeXBlOgogICAgICAgICB0cnk6Ci0gICAgICAgICAgICBkZWwg
cmVzcG9uc2UuaGVhZGVyc1siQ29udGVudC1UeXBlIl0KKyAgICAgICAgICAgIGRlbCByZXNwb25z
ZS5oZWFkZXJzW2IiQ29udGVudC1UeXBlIl0KICAgICAgICAgZXhjZXB0IEtleUVycm9yOgogICAg
ICAgICAgICAgcGFzcwogCi0gICAgY29udGVudCA9ICc8aGVhZD4nCi0gICAgbWltZUhlYWQgPSBy
ZXF1ZXN0LkdFVC5maXJzdCgibWltZSIsIE5vbmUpOworICAgIGNvbnRlbnQgPSBiJzxoZWFkPicK
KyAgICBtaW1lSGVhZCA9IHJlcXVlc3QuR0VULmZpcnN0KGIibWltZSIsIE5vbmUpOwogICAgIGlm
IG1pbWVIZWFkOgotICAgICAgICBjb250ZW50ICs9ICc8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50
LVR5cGUiIGNvbnRlbnQ9IiVzOyBjaGFyc2V0PXV0Zi04Ii8+JyAlIG1pbWVIZWFkCi0gICAgY29u
dGVudCArPSAiPC9oZWFkPiIKKyAgICAgICAgY29udGVudCArPSBiJzxtZXRhIGh0dHAtZXF1aXY9
IkNvbnRlbnQtVHlwZSIgY29udGVudD0iJXM7IGNoYXJzZXQ9dXRmLTgiLz4nICUgbWltZUhlYWQK
KyAgICBjb250ZW50ICs9IGIiPC9oZWFkPiIKIAogICAgIHJldHVybiBjb250ZW50CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9Eb2N1bWVudC1jcmVhdGVFbGVtZW50LW5hbWVzcGFjZS10ZXN0cy9nZW5lcmF0ZS5weSBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RvY3Vt
ZW50LWNyZWF0ZUVsZW1lbnQtbmFtZXNwYWNlLXRlc3RzL2dlbmVyYXRlLnB5CmluZGV4IDgxMTQx
M2RiZTJkZmRjZmVjMmMwN2JjMDliZGQ3NzYzYzcxYjc1NWEuLmEwYmNhNTQ2Yzc1ZmRiYTg3M2I1
YTk5ZDJlNTkzYWNkZGEyZTU0OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RvY3VtZW50LWNyZWF0ZUVsZW1lbnQtbmFt
ZXNwYWNlLXRlc3RzL2dlbmVyYXRlLnB5CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RvY3VtZW50LWNyZWF0ZUVsZW1lbnQtbmFtZXNw
YWNlLXRlc3RzL2dlbmVyYXRlLnB5CkBAIC01LDI1ICs1LDI1IEBAIGZyb20gX19mdXR1cmVfXyBp
bXBvcnQgcHJpbnRfZnVuY3Rpb24KIGltcG9ydCBvcwogaW1wb3J0IHN5cwogCi1USElTX05BTUUg
PSAiZ2VuZXJhdGUucHkiCitUSElTX05BTUUgPSB1ImdlbmVyYXRlLnB5IgogCiAjIE5vdGU6IHRo
ZXNlIGxpc3RzIG11c3QgYmUga2VwdCBpbiBzeW5jIHdpdGggdGhlIGxpc3RzIGluCiAjIERvY3Vt
ZW50LWNyZWF0ZUVsZW1lbnQtbmFtZXNwYWNlLmh0bWwsIGFuZCB0aGlzIHNjcmlwdCBtdXN0IGJl
IHJ1biB3aGVuZXZlcgogIyB0aGUgbGlzdHMgYXJlIHVwZGF0ZWQuICAoV2UgY291bGQga2VlcCB0
aGUgbGlzdHMgaW4gYSBzaGFyZWQgSlNPTiBmaWxlLCBidXQKICMgc2VlbXMgbGlrZSB0b28gbXVj
aCBlZmZvcnQuKQogRklMRVMgPSAoCi0gICAgKCJlbXB0eSIsICIiKSwKLSAgICAoIm1pbmltYWxf
aHRtbCIsICI8IWRvY3R5cGUgaHRtbD48dGl0bGU+PC90aXRsZT4iKSwKKyAgICAodSJlbXB0eSIs
IHUiIiksCisgICAgKHUibWluaW1hbF9odG1sIiwgdSI8IWRvY3R5cGUgaHRtbD48dGl0bGU+PC90
aXRsZT4iKSwKIAotICAgICgieGh0bWwiLCAnPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwiPjwvaHRtbD4nKSwKLSAgICAoInN2ZyIsICc8c3ZnIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2ZyI+PC9zdmc+JyksCi0gICAgKCJtYXRobWwiLCAnPG1hdGhtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI+PC9tYXRobWw+JyksCisg
ICAgKHUieGh0bWwiLCB1JzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
Ij48L2h0bWw+JyksCisgICAgKHUic3ZnIiwgdSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyI+PC9zdmc+JyksCisgICAgKHUibWF0aG1sIiwgdSc8bWF0aG1sIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIj48L21hdGhtbD4nKSwKIAotICAgICgi
YmFyZV94aHRtbCIsICI8aHRtbD48L2h0bWw+IiksCi0gICAgKCJiYXJlX3N2ZyIsICI8c3ZnPjwv
c3ZnPiIpLAotICAgICgiYmFyZV9tYXRobWwiLCAiPG1hdGg+PC9tYXRoPiIpLAorICAgICh1ImJh
cmVfeGh0bWwiLCB1IjxodG1sPjwvaHRtbD4iKSwKKyAgICAodSJiYXJlX3N2ZyIsIHUiPHN2Zz48
L3N2Zz4iKSwKKyAgICAodSJiYXJlX21hdGhtbCIsIHUiPG1hdGg+PC9tYXRoPiIpLAogCi0gICAg
KCJ4aHRtbF9uc19yZW1vdmVkIiwgIiIiXAorICAgICh1InhodG1sX25zX3JlbW92ZWQiLCB1IiIi
XAogPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgogICA8aGVhZD48
c2NyaXB0PgogICAgIHZhciBuZXdSb290ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKG51bGws
ICJodG1sIik7CkBAIC0zMiw3ICszMiw3IEBAIEZJTEVTID0gKAogICA8L3NjcmlwdD48L2hlYWQ+
CiA8L2h0bWw+CiAiIiIpLAotICAgICgieGh0bWxfbnNfY2hhbmdlZCIsICIiIlwKKyAgICAodSJ4
aHRtbF9uc19jaGFuZ2VkIiwgdSIiIlwKIDxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hodG1sIj4KICAgPGhlYWQ+PHNjcmlwdD4KICAgICB2YXIgbmV3Um9vdCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCAiYWJjIik7CkBA
IC00NCwzNiArNDQsMzYgQEAgRklMRVMgPSAoCiApCiAKIEVYVEVOU0lPTlMgPSAoCi0gICAgImh0
bWwiLAotICAgICJ4aHRtbCIsCi0gICAgInhtbCIsCi0gICAgInN2ZyIsCisgICAgdSJodG1sIiwK
KyAgICB1InhodG1sIiwKKyAgICB1InhtbCIsCisgICAgdSJzdmciLAogICAgICMgV2FzIG5vdCBh
YmxlIHRvIGdldCBzZXJ2ZXIgTUlNRSB0eXBlIHdvcmtpbmcgcHJvcGVybHkgOigKICAgICAjIm1t
bCIsCiApCiAKIGRlZiBfX21haW5fXygpOgogICAgIGlmIGxlbihzeXMuYXJndikgPiAxOgotICAg
ICAgICBwcmludCgiTm8gYXJndW1lbnRzIGV4cGVjdGVkLCBhYm9ydGluZyIpCisgICAgICAgIHBy
aW50KHUiTm8gYXJndW1lbnRzIGV4cGVjdGVkLCBhYm9ydGluZyIpCiAgICAgICAgIHJldHVybgog
CiAgICAgaWYgbm90IG9zLmFjY2VzcyhUSElTX05BTUUsIG9zLkZfT0spOgotICAgICAgICBwcmlu
dCgiTXVzdCBiZSBydW4gZnJvbSB0aGUgZGlyZWN0b3J5IG9mICIgKyBUSElTX05BTUUgKyAiLCBh
Ym9ydGluZyIpCisgICAgICAgIHByaW50KHUiTXVzdCBiZSBydW4gZnJvbSB0aGUgZGlyZWN0b3J5
IG9mICIgKyBUSElTX05BTUUgKyB1IiwgYWJvcnRpbmciKQogICAgICAgICByZXR1cm4KIAotICAg
IGZvciBuYW1lIGluIG9zLmxpc3RkaXIoIi4iKToKKyAgICBmb3IgbmFtZSBpbiBvcy5saXN0ZGly
KHUiLiIpOgogICAgICAgICBpZiBuYW1lID09IFRISVNfTkFNRToKICAgICAgICAgICAgIGNvbnRp
bnVlCiAgICAgICAgIG9zLnJlbW92ZShuYW1lKQogCi0gICAgbWFuaWZlc3QgPSBvcGVuKCJNQU5J
RkVTVCIsICJ3IikKKyAgICBtYW5pZmVzdCA9IG9wZW4odSJNQU5JRkVTVCIsIHUidyIpCiAKICAg
ICBmb3IgbmFtZSwgY29udGVudHMgaW4gRklMRVM6CiAgICAgICAgIGZvciBleHRlbnNpb24gaW4g
RVhURU5TSU9OUzoKLSAgICAgICAgICAgIGYgPSBvcGVuKG5hbWUgKyAiLiIgKyBleHRlbnNpb24s
ICJ3IikKKyAgICAgICAgICAgIGYgPSBvcGVuKG5hbWUgKyB1Ii4iICsgZXh0ZW5zaW9uLCB1Inci
KQogICAgICAgICAgICAgZi53cml0ZShjb250ZW50cykKICAgICAgICAgICAgIGYuY2xvc2UoKQot
ICAgICAgICAgICAgbWFuaWZlc3Qud3JpdGUoInN1cHBvcnQgIiArIG5hbWUgKyAiLiIgKyBleHRl
bnNpb24gKyAiXG4iKQorICAgICAgICAgICAgbWFuaWZlc3Qud3JpdGUodSJzdXBwb3J0ICIgKyBu
YW1lICsgdSIuIiArIGV4dGVuc2lvbiArIHUiXG4iKQogCiAgICAgbWFuaWZlc3QuY2xvc2UoKQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9ub2Rlcy9FbGVtZW50LXNldEF0dHJpYnV0ZS1jcmJ1Zy0xMTM4NDg3LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVz
L0VsZW1lbnQtc2V0QXR0cmlidXRlLWNyYnVnLTExMzg0ODctZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjJlZDRlYTFlNzliY2UzZDRlMzMwMGU4YTk3MDlkYTE0MTRjYzg3Y2UKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9u
b2Rlcy9FbGVtZW50LXNldEF0dHJpYnV0ZS1jcmJ1Zy0xMTM4NDg3LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDMgQEAKKworUEFTUyBBdHRyaWJ1dGVzIGZpcnN0IHNlZW4gaW4gbWl4ZWQgQVNDSUkg
Y2FzZSBzaG91bGQgbm90IGJlIGNvcnJ1cHRlZC4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1zZXRBdHRy
aWJ1dGUtY3JidWctMTEzODQ4Ny5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1zZXRBdHRyaWJ1dGUtY3JidWctMTEzODQ4
Ny5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjlhYTllZDgxMzllZWRkMTM0MTk1MGI0ZTk4NmQxNmFiN2Q1MTQz
N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LXNldEF0dHJpYnV0ZS1jcmJ1Zy0xMTM4NDg3Lmh0
bWwKQEAgLTAsMCArMSwyMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0IHNyYz0iL3Jlc291
cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorLy8gUmVncmVzc2lvbiB0
ZXN0IGZvciBjcmJ1Zy5jb20vMTEzODQ4Ny4KKy8vCisvLyBJdCB3YXMgcG9zc2libGUgZm9yIGEg
bm9uLUFTQ0lJLWxvd2VyY2FzZSBzdHJpbmcgdG8gYmUgdXNlZCB3aGVuIGluc2VydGluZworLy8g
aW50byB0aGUgYXR0cmlidXRlIGNvbGxlY3Rpb24gaWYgYSBoYXNodGFibGUgZW5jb3VudGVyZWQg
aXQgZHVyaW5nIHByb2JpbmcKKy8vIHdoaWxlIGxvb2tpbmcgZm9yIHRoZSBBU0NJSS1sb3dlcmNh
c2UgZXF1aXZhbGVudC4KKy8vCisvLyBUaGlzIGNhdXNlZCBzdWNoIGEgc3RyaW5nIHRvIGJlIGls
bGVnYWxseSB1c2VkIGFzIGFuIGF0dHJpYnV0ZSBuYW1lLCB0aHVzCisvLyBjYXVzaW5nIGluY29u
c2lzdGVudCBiZWhhdmlvciBpbiBmdXR1cmUgYXR0cmlidXRlIGxvb2t1cC4KK3Rlc3QoKCkgPT4g
eworICBjb25zdCBlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICBlbC5zZXRB
dHRyaWJ1dGUoJ2xhYmVsWFFMJywgJ2FiYycpOworICBlbC5zZXRBdHRyaWJ1dGUoJ192YWx1ZVhR
TCcsICdkZWYnKTsKKyAgYXNzZXJ0X2VxdWFscyhlbC5nZXRBdHRyaWJ1dGUoJ2xhYmVsWFFMJyks
ICdhYmMnKTsKKyAgYXNzZXJ0X2VxdWFscyhlbC5nZXRBdHRyaWJ1dGUoJ2xhYmVseHFsJyksICdh
YmMnKTsKKyAgYXNzZXJ0X2VxdWFscyhlbC5nZXRBdHRyaWJ1dGUoJ192YWx1ZVhRTCcpLCAnZGVm
Jyk7CisgIGFzc2VydF9lcXVhbHMoZWwuZ2V0QXR0cmlidXRlKCdfdmFsdWV4cWwnKSwgJ2RlZicp
OworfSwgIkF0dHJpYnV0ZXMgZmlyc3Qgc2VlbiBpbiBtaXhlZCBBU0NJSSBjYXNlIHNob3VsZCBu
b3QgYmUgY29ycnVwdGVkLiIpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVy
LWNhbGxiYWNrLWFyZ3VtZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVyLWNhbGxiYWNr
LWFyZ3VtZW50cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmYyZjM5NjE1MjI0Mjc3ZWVjZGVm
ZmE0MjkwNzc4Yzc5Zjg3YjllZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2Fs
bGJhY2stYXJndW1lbnRzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKKworUEFTUyBDYWxs
YmFjayBpcyBpbnZva2VkIHdpdGggfHRoaXN8IHZhbHVlIG9mIE11dGF0aW9uT2JzZXJ2ZXIgYW5k
IHR3byBhcmd1bWVudHMKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTXV0YXRpb25PYnNlcnZlci1jYWxsYmFjay1hcmd1
bWVudHMuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2FsbGJhY2stYXJndW1lbnRzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZDY0NzU4Y2I0ZmEwMGQyNWFkM2RhZmU1NzZhMDA5OGM5MDI5MjJiNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L25vZGVzL011dGF0aW9uT2JzZXJ2ZXItY2FsbGJhY2stYXJndW1lbnRzLmh0bWwKQEAgLTAsMCAr
MSwzMSBAQAorPCFET0NUWVBFIEhUTUw+Cis8bWV0YSBjaGFyc2V0PXV0Zi04PgorPHRpdGxlPk11
dGF0aW9uT2JzZXJ2ZXI6IGNhbGxiYWNrIGFyZ3VtZW50czwvdGl0bGU+Cis8bGluayByZWw9Imhl
bHAiIGhyZWY9Imh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jbm90aWZ5LW11dGF0aW9uLW9i
c2VydmVycyI+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Cis8ZGl2IGlkPSJtby10YXJnZXQiPjwvZGl2PgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzxz
Y3JpcHQ+CisidXNlIHN0cmljdCI7CisKK2FzeW5jX3Rlc3QodCA9PiB7CisgIGNvbnN0IG1vVGFy
Z2V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI21vLXRhcmdldCIpOworICBjb25zdCBtbyA9
IG5ldyBNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKHJlY29yZHMsIG9ic2VydmVyKSB7CisgICAg
dC5zdGVwKCgpID0+IHsKKyAgICAgIGFzc2VydF9lcXVhbHModGhpcywgbW8pOworICAgICAgYXNz
ZXJ0X2VxdWFscyhhcmd1bWVudHMubGVuZ3RoLCAyKTsKKyAgICAgIGFzc2VydF90cnVlKEFycmF5
LmlzQXJyYXkocmVjb3JkcykpOworICAgICAgYXNzZXJ0X2VxdWFscyhyZWNvcmRzLmxlbmd0aCwg
MSk7CisgICAgICBhc3NlcnRfdHJ1ZShyZWNvcmRzWzBdIGluc3RhbmNlb2YgTXV0YXRpb25SZWNv
cmQpOworICAgICAgYXNzZXJ0X2VxdWFscyhvYnNlcnZlciwgbW8pOworCisgICAgICBtby5kaXNj
b25uZWN0KCk7CisgICAgICB0LmRvbmUoKTsKKyAgICB9KTsKKyAgfSk7CisKKyAgbW8ub2JzZXJ2
ZShtb1RhcmdldCwge2F0dHJpYnV0ZXM6IHRydWV9KTsKKyAgbW9UYXJnZXQuY2xhc3NOYW1lID0g
InRyaWdnZXItbXV0YXRpb24iOworfSwgIkNhbGxiYWNrIGlzIGludm9rZWQgd2l0aCB8dGhpc3wg
dmFsdWUgb2YgTXV0YXRpb25PYnNlcnZlciBhbmQgdHdvIGFyZ3VtZW50cyIpOworPC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2RvbS9ub2Rlcy9Ob2RlLWNsb25lTm9kZS1vbi1pbmFjdGl2ZS1kb2N1bWVudC1jcmFzaC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMv
Tm9kZS1jbG9uZU5vZGUtb24taW5hY3RpdmUtZG9jdW1lbnQtY3Jhc2guaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jYmQ3YTFlNmE1MDBlNTY3MWMxZTBhNzFjNWRjYjk2M2NhYjcyN2JhCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9k
ZXMvTm9kZS1jbG9uZU5vZGUtb24taW5hY3RpdmUtZG9jdW1lbnQtY3Jhc2guaHRtbApAQCAtMCww
ICsxLDYgQEAKKzxpZnJhbWUgaWQ9ImkiPjwvaWZyYW1lPgorPHNjcmlwdD4KK3ZhciBkb2MgPSBp
LmNvbnRlbnREb2N1bWVudDsKK2kucmVtb3ZlKCk7Citkb2MuY2xvbmVOb2RlKCk7Cis8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL25vZGVzL1BhcmVudE5vZGUtcmVwbGFjZUNoaWxkcmVuLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9QYXJlbnROb2RlLXJl
cGxhY2VDaGlsZHJlbi5odG1sCmluZGV4IGNkNDg5N2MzNzg0ZmNjZGViYjM2NTVkZDY5MjIzNDM3
ZjYzZDAwZDUuLjhmMmZkYTlkOTljMTU0ZjdiOGViMDhhZWZlMDYwNGJmMzdjYjRhMzcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25v
ZGVzL1BhcmVudE5vZGUtcmVwbGFjZUNoaWxkcmVuLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvUGFyZW50Tm9kZS1yZXBsYWNl
Q2hpbGRyZW4uaHRtbApAQCAtMTAyLDE0ICsxMDIsMTQgQEAKIAogICAgICAgY29uc3Qgb2JzZXJ2
ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcihtdXRhdGlvbnMgPT4gewogICAgICAgICB0LnN0ZXAo
KCkgPT4gewotICAgICAgICAgIGFzc2VydF9lcXVhbHMocGhhc2UsIDEpOwotICAgICAgICAgIGFz
c2VydF9lcXVhbHMobXV0YXRpb25zLmxlbmd0aCwgMSk7CisgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyhwaGFzZSwgMSwgInBoYXNlIik7CisgICAgICAgICAgYXNzZXJ0X2VxdWFscyhtdXRhdGlvbnMu
bGVuZ3RoLCAxLCAibXV0YXRpb25zLmxlbmd0aCIpOwogICAgICAgICAgIGNvbnN0IG11dGF0aW9u
ID0gbXV0YXRpb25zWzBdOwotICAgICAgICAgIGFzc2VydF9lcXVhbHMobXV0YXRpb24udHlwZSwg
ImNoaWxkTGlzdCIpOwotICAgICAgICAgIGFzc2VydF9lcXVhbHMobXV0YXRpb24uYWRkZWROb2Rl
cy5sZW5ndGgsIDIpOwotICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoWy4uLm11dGF0aW9u
LmFkZGVkTm9kZXNdLCBpbnNlcnRpb25zKTsKLSAgICAgICAgICBhc3NlcnRfZXF1YWxzKG11dGF0
aW9uLnJlbW92ZWROb2Rlcy5sZW5ndGgsIDIpOwotICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVh
bHMoWy4uLm11dGF0aW9uLnJlbW92ZWROb2Rlc10sIGNoaWxkcmVuKTsKKyAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKG11dGF0aW9uLnR5cGUsICJjaGlsZExpc3QiLCAibXV0YXRpb24udHlwZSIpOwor
ICAgICAgICAgIGFzc2VydF9lcXVhbHMobXV0YXRpb24uYWRkZWROb2Rlcy5sZW5ndGgsIDIsICJh
ZGRlZCBub2RlcyBsZW5ndGgiKTsKKyAgICAgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5t
dXRhdGlvbi5hZGRlZE5vZGVzXSwgaW5zZXJ0aW9ucywgImFkZGVkIG5vZGVzIik7CisgICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhtdXRhdGlvbi5yZW1vdmVkTm9kZXMubGVuZ3RoLCAyLCAicmVtb3Zl
ZCBub2RlcyBsZW5ndGgiKTsKKyAgICAgICAgICBhc3NlcnRfYXJyYXlfZXF1YWxzKFsuLi5tdXRh
dGlvbi5yZW1vdmVkTm9kZXNdLCBjaGlsZHJlbiwgInJlbW92ZWQgbm9kZXMiKTsKICAgICAgICAg
fSk7CiAgICAgICAgIHQuZG9uZSgpOwogICAgICAgfSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9lbmNvZGluZy5weSBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL2Vu
Y29kaW5nLnB5CmluZGV4IDVmODg5ZThkYjJhNTVjZGZkMjNiMDA4M2E0NWExNDdhOWZiODdhYjIu
LjI4MWFhMGJjZTQ5MTYyNDY1ZjRhMDExZmE1MGI4YmJlODMxZTIxM2IgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL2VuY29k
aW5nLnB5CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL2VuY29kaW5nLnB5CkBAIC0xLDUgKzEsMTAgQEAKLWZyb20gY2dpIGltcG9ydCBl
c2NhcGUKK3RyeToKKyAgICBmcm9tIGNnaSBpbXBvcnQgZXNjYXBlCitleGNlcHQgSW1wb3J0RXJy
b3I6CisgICAgZnJvbSBodG1sIGltcG9ydCBlc2NhcGUKKworZnJvbSB3cHRzZXJ2ZS51dGlscyBp
bXBvcnQgaXNvbW9ycGhpY19kZWNvZGUKIAogZGVmIG1haW4ocmVxdWVzdCwgcmVzcG9uc2UpOgot
ICAgIGxhYmVsID0gcmVxdWVzdC5HRVQuZmlyc3QoJ2xhYmVsJykKLSAgICByZXR1cm4gIiIiPCFk
b2N0eXBlIGh0bWw+PG1ldGEgY2hhcnNldD0iJXMiPiIiIiAlIGVzY2FwZShsYWJlbCkKKyAgICBs
YWJlbCA9IHJlcXVlc3QuR0VULmZpcnN0KGInbGFiZWwnKQorICAgIHJldHVybiB1IiIiPCFkb2N0
eXBlIGh0bWw+PG1ldGEgY2hhcnNldD0iJXMiPiIiIiAlIGVzY2FwZShpc29tb3JwaGljX2RlY29k
ZShsYWJlbCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS9ub2Rlcy93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL3czYy1pbXBvcnQubG9nCmluZGV4IDI3
YzliYzcwNDVmMWJkYjgyNTAyMjRlMzViZmE4OTc0ZjhjNjUyNDYuLjg3MjNmZTUyY2IxMDFlZjVi
NTc4YTgzYTQzNzYxMjRkMWYwYTRjYjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL3czYy1pbXBvcnQubG9nCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL3czYy1p
bXBvcnQubG9nCkBAIC0yOSw4ICsyOSwxMSBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0NoaWxkTm9kZS1yZXBs
YWNlV2l0aC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vbm9kZXMvQ29tbWVudC1UZXh0LWNvbnN0cnVjdG9yLmpzCiAvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvQ29tbWVudC1jb25zdHJ1Y3Rv
ci5odG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvRE9NSW1wbGVtZW50YXRpb24tY3JlYXRlRG9jdW1lbnQtd2l0aC1udWxsLWJyb3dzaW5n
LWNvbnRleHQtY3Jhc2guaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0ZURvY3VtZW50Lmh0bWwK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9E
T01JbXBsZW1lbnRhdGlvbi1jcmVhdGVEb2N1bWVudFR5cGUuaHRtbAorL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9u
LWNyZWF0ZUhUTUxEb2N1bWVudC13aXRoLW51bGwtYnJvd3NpbmctY29udGV4dC1jcmFzaC5odG1s
CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMv
RE9NSW1wbGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50LXdpdGgtc2F2ZWQtaW1wbGVtZW50
YXRpb24uaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL25vZGVzL0RPTUltcGxlbWVudGF0aW9uLWNyZWF0ZUhUTUxEb2N1bWVudC5odG1sCiAvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1w
bGVtZW50YXRpb24tY3JlYXRlSFRNTERvY3VtZW50LmpzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRE9NSW1wbGVtZW50YXRpb24taGFzRmVh
dHVyZS5odG1sCkBAIC0xMjMsNiArMTI2LDcgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LXJlbW92
ZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvRWxlbWVudC1yZW1vdmVBdHRyaWJ1dGUuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0VsZW1lbnQtcmVtb3ZlQXR0cmlidXRl
TlMuaHRtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L25vZGVzL0VsZW1lbnQtc2V0QXR0cmlidXRlLWNyYnVnLTExMzg0ODcuaHRtbAogL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0VsZW1lbnQtc2V0
QXR0cmlidXRlLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS9ub2Rlcy9FbGVtZW50LXNpYmxpbmdFbGVtZW50LW51bGwtc3ZnLnN2ZwogL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0VsZW1lbnQt
c2libGluZ0VsZW1lbnQtbnVsbC14aHRtbC54aHRtbApAQCAtMTMwLDYgKzEzNCw3IEBAIExpc3Qg
b2YgZmlsZXM6CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vbm9kZXMvRWxlbWVudC10YWdOYW1lLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LXdlYmtpdE1hdGNoZXNTZWxlY3Rv
ci5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
bm9kZXMvTXV0YXRpb25PYnNlcnZlci1hdHRyaWJ1dGVzLmh0bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9NdXRhdGlvbk9ic2VydmVyLWNh
bGxiYWNrLWFyZ3VtZW50cy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvTXV0YXRpb25PYnNlcnZlci1jaGFyYWN0ZXJEYXRhLmh0bWwK
IC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9N
dXRhdGlvbk9ic2VydmVyLWNoaWxkTGlzdC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTXV0YXRpb25PYnNlcnZlci1kaXNjb25uZWN0
Lmh0bWwKQEAgLTE0NCw2ICsxNDksNyBAQCBMaXN0IG9mIGZpbGVzOgogL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL05vZGUtY2xvbmVOb2RlLVhN
TERvY3VtZW50Lmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS9ub2Rlcy9Ob2RlLWNsb25lTm9kZS1kb2N1bWVudC13aXRoLWRvY3R5cGUuaHRtbAog
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL05v
ZGUtY2xvbmVOb2RlLWV4dGVybmFsLXN0eWxlc2hlZXQtbm8tYmMuc3ViLmh0bWwKKy9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9Ob2RlLWNsb25l
Tm9kZS1vbi1pbmFjdGl2ZS1kb2N1bWVudC1jcmFzaC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvTm9kZS1jbG9uZU5vZGUtc3ZnLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rl
cy9Ob2RlLWNsb25lTm9kZS5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvTm9kZS1jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi5odG1sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS9yYW5nZXMvUmFuZ2UtaW5zZXJ0Tm9kZS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWluc2VydE5vZGUuaHRtbAppbmRl
eCAwNDcyN2RiYzRkMjg1NWRjZTM0YzNhOTM1NmYxNjFmZGViMWUwYTg2Li5iMGE5ZDQzZjk4MmRk
NjIxNzM4ZDAxOWNkODgxYjAyZjAyY2Q0YTM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtaW5zZXJ0Tm9kZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L3Jhbmdlcy9SYW5nZS1pbnNlcnROb2RlLmh0bWwKQEAgLTc1LDE5ICs3NSwxOSBAQCBmdW5jdGlv
biB0ZXN0SW5zZXJ0Tm9kZShpLCBqKSB7CiAgICAgICAgICAgICAiVW5leHBlY3RlZCBleGNlcHRp
b24gdGhyb3duIHdoZW4gc2V0dGluZyB1cCBSYW5nZSBmb3Igc2ltdWxhdGVkIGluc2VydE5vZGUo
KSIpOwogICAgICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBhY3R1YWxSYW5nZSwgIm9iamVjdCIs
CiAgICAgICAgICAgICAidHlwZW9mIFJhbmdlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUiKTsK
LSAgICAgICAgYXNzZXJ0X2ZhbHNlKGFjdHVhbFJhbmdlID09PSBudWxsLAorICAgICAgICBhc3Nl
cnRfbm90X2VxdWFscyhhY3R1YWxSYW5nZSwgbnVsbCwKICAgICAgICAgICAgICJSYW5nZSBwcm9k
dWNlZCBpbiBhY3R1YWwgaWZyYW1lIHdhcyBudWxsIik7CiAgICAgICAgIGFzc2VydF9lcXVhbHMo
dHlwZW9mIGV4cGVjdGVkUmFuZ2UsICJvYmplY3QiLAogICAgICAgICAgICAgInR5cGVvZiBSYW5n
ZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUiKTsKLSAgICAgICAgYXNzZXJ0X2ZhbHNlKGV4
cGVjdGVkUmFuZ2UgPT09IG51bGwsCisgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGV4cGVjdGVk
UmFuZ2UsIG51bGwsCiAgICAgICAgICAgICAiUmFuZ2UgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZy
YW1lIHdhcyBudWxsIik7CiAgICAgICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGFjdHVhbE5vZGUs
ICJvYmplY3QiLAogICAgICAgICAgICAgInR5cGVvZiBOb2RlIHByb2R1Y2VkIGluIGFjdHVhbCBp
ZnJhbWUiKTsKLSAgICAgICAgYXNzZXJ0X2ZhbHNlKGFjdHVhbE5vZGUgPT09IG51bGwsCisgICAg
ICAgIGFzc2VydF9ub3RfZXF1YWxzKGFjdHVhbE5vZGUsIG51bGwsCiAgICAgICAgICAgICAiTm9k
ZSBwcm9kdWNlZCBpbiBhY3R1YWwgaWZyYW1lIHdhcyBudWxsIik7CiAgICAgICAgIGFzc2VydF9l
cXVhbHModHlwZW9mIGV4cGVjdGVkTm9kZSwgIm9iamVjdCIsCiAgICAgICAgICAgICAidHlwZW9m
IE5vZGUgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZyYW1lIik7Ci0gICAgICAgIGFzc2VydF9mYWxz
ZShleHBlY3RlZE5vZGUgPT09IG51bGwsCisgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGV4cGVj
dGVkTm9kZSwgbnVsbCwKICAgICAgICAgICAgICJOb2RlIHByb2R1Y2VkIGluIGV4cGVjdGVkIGlm
cmFtZSB3YXMgbnVsbCIpOwogCiAgICAgICAgIC8vIFdlIHdhbnQgdG8gdGVzdCB0aGF0IHRoZSB0
cmVlcyBjb250YWluaW5nIHRoZSByYW5nZXMgYXJlIGVxdWFsLCBhbmQKQEAgLTE3OSwxOSArMTc5
LDE5IEBAIGZ1bmN0aW9uIHRlc3RJbnNlcnROb2RlKGksIGopIHsKICAgICAgICAgICAgICJVbmV4
cGVjdGVkIGV4Y2VwdGlvbiB0aHJvd24gd2hlbiBzZXR0aW5nIHVwIFJhbmdlIGZvciBzaW11bGF0
ZWQgaW5zZXJ0Tm9kZSgpIik7CiAgICAgICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGFjdHVhbFJh
bmdlLCAib2JqZWN0IiwKICAgICAgICAgICAgICJ0eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gYWN0
dWFsIGlmcmFtZSIpOwotICAgICAgICBhc3NlcnRfZmFsc2UoYWN0dWFsUmFuZ2UgPT09IG51bGws
CisgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGFjdHVhbFJhbmdlLCBudWxsLAogICAgICAgICAg
ICAgIlJhbmdlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICAgICAg
YXNzZXJ0X2VxdWFscyh0eXBlb2YgZXhwZWN0ZWRSYW5nZSwgIm9iamVjdCIsCiAgICAgICAgICAg
ICAidHlwZW9mIFJhbmdlIHByb2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIpOwotICAgICAgICBh
c3NlcnRfZmFsc2UoZXhwZWN0ZWRSYW5nZSA9PT0gbnVsbCwKKyAgICAgICAgYXNzZXJ0X25vdF9l
cXVhbHMoZXhwZWN0ZWRSYW5nZSwgbnVsbCwKICAgICAgICAgICAgICJSYW5nZSBwcm9kdWNlZCBp
biBleHBlY3RlZCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICAgICAgYXNzZXJ0X2VxdWFscyh0eXBl
b2YgYWN0dWFsTm9kZSwgIm9iamVjdCIsCiAgICAgICAgICAgICAidHlwZW9mIE5vZGUgcHJvZHVj
ZWQgaW4gYWN0dWFsIGlmcmFtZSIpOwotICAgICAgICBhc3NlcnRfZmFsc2UoYWN0dWFsTm9kZSA9
PT0gbnVsbCwKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoYWN0dWFsTm9kZSwgbnVsbCwKICAg
ICAgICAgICAgICJOb2RlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAg
ICAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgZXhwZWN0ZWROb2RlLCAib2JqZWN0IiwKICAgICAg
ICAgICAgICJ0eXBlb2YgTm9kZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUiKTsKLSAgICAg
ICAgYXNzZXJ0X2ZhbHNlKGV4cGVjdGVkTm9kZSA9PT0gbnVsbCwKKyAgICAgICAgYXNzZXJ0X25v
dF9lcXVhbHMoZXhwZWN0ZWROb2RlLCBudWxsLAogICAgICAgICAgICAgIk5vZGUgcHJvZHVjZWQg
aW4gZXhwZWN0ZWQgaWZyYW1lIHdhcyBudWxsIik7CiAKICAgICAgICAgZm9yICh2YXIgayA9IDA7
IGsgPCBhY3R1YWxSb290cy5sZW5ndGg7IGsrKykgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLW11dGF0aW9u
cy5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jh
bmdlcy9SYW5nZS1tdXRhdGlvbnMuanMKaW5kZXggMzgzN2RlOTI4Mjg5YTdjMTFkNzBmNWFmYzVm
M2RjYTQ0YzIzYWI0Yy4uMjNjMDEzYWM2YTFkN2ExNTYzNzM5YWZlNTBmMTUxYWY0OWI0ZmZhNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vcmFuZ2VzL1JhbmdlLW11dGF0aW9ucy5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2UtbXV0YXRpb25zLmpzCkBAIC02
Myw3ICs2Myw3IEBAIGZ1bmN0aW9uIGRvVGVzdHMoc291cmNlVGVzdHMsIGRlc2NGbiwgdGVzdEZu
KSB7CiAgICAgICBmdW5jdGlvbihwYXJhbXMpIHsgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAg
ICB2YXIgZXZhbGVkUGFyYW1zID0gcGFyYW1zLm1hcChldmFsKTsKICAgICAgICAgZm9yICh2YXIg
aSA9IDA7IGkgPCBldmFsZWRQYXJhbXMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICBhc3NlcnRf
dHJ1ZSh0eXBlb2YgZXZhbGVkUGFyYW1zW2ldICE9ICJ1bmRlZmluZWQiLAorICAgICAgICAgIGFz
c2VydF9ub3RfZXF1YWxzKHR5cGVvZiBldmFsZWRQYXJhbXNbaV0sICJ1bmRlZmluZWQiLAogICAg
ICAgICAgICAgIlRlc3QgYnVnOiAiICsgcGFyYW1zW2ldICsgIiBpcyB1bmRlZmluZWQiKTsKICAg
ICAgICAgfQogICAgICAgICByZXR1cm4gdGVzdEZuLmFwcGx5KG51bGwsIGV2YWxlZFBhcmFtcyk7
CkBAIC03OSw3ICs3OSw3IEBAIGZ1bmN0aW9uIGRvVGVzdHMoc291cmNlVGVzdHMsIGRlc2NGbiwg
dGVzdEZuKSB7CiAgICAgICBmdW5jdGlvbihwYXJhbXMpIHsgcmV0dXJuIGZ1bmN0aW9uKHNlbGVj
dGVkUmFuZ2UpIHsKICAgICAgICAgdmFyIGV2YWxlZFBhcmFtcyA9IHBhcmFtcy5zbGljZSgwLCBs
ZW4gLSA0KS5tYXAoZXZhbCk7CiAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZhbGVkUGFy
YW1zLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgICAgYXNzZXJ0X3RydWUodHlwZW9mIGV2YWxlZFBh
cmFtc1tpXSAhPSAidW5kZWZpbmVkIiwKKyAgICAgICAgICBhc3NlcnRfbm90X2VxdWFscyh0eXBl
b2YgZXZhbGVkUGFyYW1zW2ldLCAidW5kZWZpbmVkIiwKICAgICAgICAgICAgICJUZXN0IGJ1Zzog
IiArIHBhcmFtc1tpXSArICIgaXMgdW5kZWZpbmVkIik7CiAgICAgICAgIH0KICAgICAgICAgLy8g
T3ZlcnJpZGUgaW5wdXQgcmFuZ2Ugd2l0aCB0aGUgb25lIHRoYXQgd2FzIGFjdHVhbGx5IHNlbGVj
dGVkIHdoZW4gY29tcHV0aW5nIHRoZSBleHBlY3RlZCByZXN1bHQuCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2Ut
c3Vycm91bmRDb250ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLXN1cnJvdW5kQ29udGVudHMuaHRtbAppbmRleCBj
MWVkMzBkMDA1M2YyMTU3Nzc2YjhjNThiMTljZTgyY2FmYjVlNzRmLi5jOWQ0N2ZjYmFkMGRlZTkx
N2JlOTA0NjhhOWU4NDRkNmM1MWM0Yjc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5nZXMvUmFuZ2Utc3Vycm91bmRDb250ZW50
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZG9tL3Jhbmdlcy9SYW5nZS1zdXJyb3VuZENvbnRlbnRzLmh0bWwKQEAgLTEyNSwxOSArMTI1LDE5
IEBAIGZ1bmN0aW9uIHRlc3RTdXJyb3VuZENvbnRlbnRzKGksIGopIHsKICAgICAgICJVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB0aHJvd24gd2hlbiBzZXR0aW5nIHVwIFJhbmdlIGZvciBzaW11bGF0ZWQg
c3Vycm91bmRDb250ZW50cygpIik7CiAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgYWN0dWFsUmFu
Z2UsICJvYmplY3QiLAogICAgICAgInR5cGVvZiBSYW5nZSBwcm9kdWNlZCBpbiBhY3R1YWwgaWZy
YW1lIik7Ci0gICAgYXNzZXJ0X2ZhbHNlKGFjdHVhbFJhbmdlID09PSBudWxsLAorICAgIGFzc2Vy
dF9ub3RfZXF1YWxzKGFjdHVhbFJhbmdlLCBudWxsLAogICAgICAgIlJhbmdlIHByb2R1Y2VkIGlu
IGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBleHBl
Y3RlZFJhbmdlLCAib2JqZWN0IiwKICAgICAgICJ0eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gZXhw
ZWN0ZWQgaWZyYW1lIik7Ci0gICAgYXNzZXJ0X2ZhbHNlKGV4cGVjdGVkUmFuZ2UgPT09IG51bGws
CisgICAgYXNzZXJ0X25vdF9lcXVhbHMoZXhwZWN0ZWRSYW5nZSwgbnVsbCwKICAgICAgICJSYW5n
ZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICBhc3NlcnRfZXF1
YWxzKHR5cGVvZiBhY3R1YWxOb2RlLCAib2JqZWN0IiwKICAgICAgICJ0eXBlb2YgTm9kZSBwcm9k
dWNlZCBpbiBhY3R1YWwgaWZyYW1lIik7Ci0gICAgYXNzZXJ0X2ZhbHNlKGFjdHVhbE5vZGUgPT09
IG51bGwsCisgICAgYXNzZXJ0X25vdF9lcXVhbHMoYWN0dWFsTm9kZSwgbnVsbCwKICAgICAgICJO
b2RlIHByb2R1Y2VkIGluIGFjdHVhbCBpZnJhbWUgd2FzIG51bGwiKTsKICAgICBhc3NlcnRfZXF1
YWxzKHR5cGVvZiBleHBlY3RlZE5vZGUsICJvYmplY3QiLAogICAgICAgInR5cGVvZiBOb2RlIHBy
b2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIpOwotICAgIGFzc2VydF9mYWxzZShleHBlY3RlZE5v
ZGUgPT09IG51bGwsCisgICAgYXNzZXJ0X25vdF9lcXVhbHMoZXhwZWN0ZWROb2RlLCBudWxsLAog
ICAgICAgIk5vZGUgcHJvZHVjZWQgaW4gZXhwZWN0ZWQgaWZyYW1lIHdhcyBudWxsIik7CiAKICAg
ICAvLyBXZSB3YW50IHRvIHRlc3QgdGhhdCB0aGUgdHJlZXMgY29udGFpbmluZyB0aGUgcmFuZ2Vz
IGFyZSBlcXVhbCwgYW5kCkBAIC0yMjIsMTkgKzIyMiwxOSBAQCBmdW5jdGlvbiB0ZXN0U3Vycm91
bmRDb250ZW50cyhpLCBqKSB7CiAgICAgICAiVW5leHBlY3RlZCBleGNlcHRpb24gdGhyb3duIHdo
ZW4gc2V0dGluZyB1cCBSYW5nZSBmb3Igc2ltdWxhdGVkIHN1cnJvdW5kQ29udGVudHMoKSIpOwog
ICAgIGFzc2VydF9lcXVhbHModHlwZW9mIGFjdHVhbFJhbmdlLCAib2JqZWN0IiwKICAgICAgICJ0
eXBlb2YgUmFuZ2UgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSIpOwotICAgIGFzc2VydF9mYWxz
ZShhY3R1YWxSYW5nZSA9PT0gbnVsbCwKKyAgICBhc3NlcnRfbm90X2VxdWFscyhhY3R1YWxSYW5n
ZSwgbnVsbCwKICAgICAgICJSYW5nZSBwcm9kdWNlZCBpbiBhY3R1YWwgaWZyYW1lIHdhcyBudWxs
Iik7CiAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgZXhwZWN0ZWRSYW5nZSwgIm9iamVjdCIsCiAg
ICAgICAidHlwZW9mIFJhbmdlIHByb2R1Y2VkIGluIGV4cGVjdGVkIGlmcmFtZSIpOwotICAgIGFz
c2VydF9mYWxzZShleHBlY3RlZFJhbmdlID09PSBudWxsLAorICAgIGFzc2VydF9ub3RfZXF1YWxz
KGV4cGVjdGVkUmFuZ2UsIG51bGwsCiAgICAgICAiUmFuZ2UgcHJvZHVjZWQgaW4gZXhwZWN0ZWQg
aWZyYW1lIHdhcyBudWxsIik7CiAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgYWN0dWFsTm9kZSwg
Im9iamVjdCIsCiAgICAgICAidHlwZW9mIE5vZGUgcHJvZHVjZWQgaW4gYWN0dWFsIGlmcmFtZSIp
OwotICAgIGFzc2VydF9mYWxzZShhY3R1YWxOb2RlID09PSBudWxsLAorICAgIGFzc2VydF9ub3Rf
ZXF1YWxzKGFjdHVhbE5vZGUsIG51bGwsCiAgICAgICAiTm9kZSBwcm9kdWNlZCBpbiBhY3R1YWwg
aWZyYW1lIHdhcyBudWxsIik7CiAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgZXhwZWN0ZWROb2Rl
LCAib2JqZWN0IiwKICAgICAgICJ0eXBlb2YgTm9kZSBwcm9kdWNlZCBpbiBleHBlY3RlZCBpZnJh
bWUiKTsKLSAgICBhc3NlcnRfZmFsc2UoZXhwZWN0ZWROb2RlID09PSBudWxsLAorICAgIGFzc2Vy
dF9ub3RfZXF1YWxzKGV4cGVjdGVkTm9kZSwgbnVsbCwKICAgICAgICJOb2RlIHByb2R1Y2VkIGlu
IGV4cGVjdGVkIGlmcmFtZSB3YXMgbnVsbCIpOwogCiAgICAgZm9yICh2YXIgayA9IDA7IGsgPCBh
Y3R1YWxSb290cy5sZW5ndGg7IGsrKykgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL3czYy1pbXBvcnQubG9nIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL3czYy1p
bXBvcnQubG9nCmluZGV4IDU3OThkMjkyZDczNDliYTVhOWIwNGZiZDA3MjYwY2JlMGU2NTliMTgu
LjBkNWZkMDkwY2IxZTE1OTljOWQ1MWZiYjE4ZDkzNjU1NDMwODkyZDIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy93M2Mt
aW1wb3J0LmxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS9yYW5nZXMvdzNjLWltcG9ydC5sb2cKQEAgLTE0LDYgKzE0LDcgQEAgUHJvcGVydHkg
dmFsdWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CiBOb25lCiAtLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IExpc3Qgb2YgZmlsZXM6CisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWFkb3B0LXRlc3QuaHRtbAogL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3Jhbmdlcy9SYW5nZS1hdHRyaWJ1dGVzLmh0
bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9yYW5n
ZXMvUmFuZ2UtY2xvbmVDb250ZW50cy5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vcmFuZ2VzL1JhbmdlLWNsb25lUmFuZ2UuaHRtbApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJh
dmVyc2FsL1RyZWVXYWxrZXItYWNjZXB0Tm9kZS1maWx0ZXIuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLWFj
Y2VwdE5vZGUtZmlsdGVyLmh0bWwKaW5kZXggYWNkMzgwNGZhZGUwZTdlNGEzNzM1Y2M2ODI3NmVh
NTY2OTQxNjQwNy4uMjgyZGM5ZDE0MmIxNTUxNTQ2M2VjZTI1MjU1ZDViZDZmNWVmMThiZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
dHJhdmVyc2FsL1RyZWVXYWxrZXItYWNjZXB0Tm9kZS1maWx0ZXIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdh
bGtlci1hY2NlcHROb2RlLWZpbHRlci5odG1sCkBAIC0xLDcgKzEsNyBAQAogPCFET0NUWVBFIGh0
bWw+CiA8aHRtbD4KIDwhLS0KLVRlc3QgYWRhcHRlZCBmcm9tIGh0dHBzOi8vZHhyLm1vemlsbGEu
b3JnL2Nocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zh
c3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL2FjY2VwdE5vZGUtZmlsdGVyLmpzCitUZXN0
IGFkYXB0ZWQgZnJvbSBjaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3BhcnR5L1dlYktpdC9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0cy9hY2NlcHROb2RlLWZpbHRl
ci5qcwogLS0+CiA8aGVhZD4KIDx0aXRsZT5UcmVlV2Fsa2VyOiBhY2NlcHROb2RlLWZpbHRlcjwv
dGl0bGU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1iYXNpYy5odG1sIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXIt
YmFzaWMuaHRtbAppbmRleCA0ZTE0YWM0MjFlZjVlOTk4NzU0ZjViMzMwYzhmNTEzNjc1MjI3NjZl
Li5iZDhiMTEyODQwOGM5M2I2M2M2YTZiMTk1MjlmMzVhMmFjNjY0NWE5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwv
VHJlZVdhbGtlci1iYXNpYy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLWJhc2ljLmh0bWwKQEAgLTEs
NyArMSw3IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPCEtLQotVGVzdCBhZGFwdGVkIGZy
b20gaHR0cHM6Ly9keHIubW96aWxsYS5vcmcvY2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0
eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9UcmVlV2Fsa2VyLWJhc2lj
Lmh0bWwKK1Rlc3QgYWRhcHRlZCBmcm9tIGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkv
V2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvVHJlZVdhbGtlci1iYXNpYy5o
dG1sCiAtLT4KIDxoZWFkPgogPHRpdGxlPlRyZWVXYWxrZXI6IEJhc2ljIHRlc3Q8L3RpdGxlPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vdHJhdmVyc2FsL1RyZWVXYWxrZXItY3VycmVudE5vZGUuaHRtbCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLWN1
cnJlbnROb2RlLmh0bWwKaW5kZXggN2M1ZDg4MTBhODZiODMxMDQ5OTkyNWY4ZDY4ZWY0ZDY2ODVl
N2U3Ni4uZjc5NWFiZTBkMjkyNGFkYjRiMTU5YzA3OTY4YjJkNmM2MTE1MTI1ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVy
c2FsL1RyZWVXYWxrZXItY3VycmVudE5vZGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1jdXJyZW50
Tm9kZS5odG1sCkBAIC0xLDcgKzEsNyBAQAogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDwhLS0K
LVRlc3QgYWRhcHRlZCBmcm9tIGh0dHBzOi8vZHhyLm1vemlsbGEub3JnL2Nocm9taXVtL3NvdXJj
ZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIv
cmVzb3VyY2VzL1RyZWVXYWxrZXItY3VycmVudE5vZGUuanMKK1Rlc3QgYWRhcHRlZCBmcm9tIGNo
cm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9t
L1RyZWVXYWxrZXIvcmVzb3VyY2VzL1RyZWVXYWxrZXItY3VycmVudE5vZGUuanMKIC0tPgogPGhl
YWQ+CiA8dGl0bGU+VHJlZVdhbGtlcjogY3VycmVudE5vZGU8L3RpdGxlPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2Fs
L1RyZWVXYWxrZXItcHJldmlvdXNOb2RlTGFzdENoaWxkUmVqZWN0Lmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtl
ci1wcmV2aW91c05vZGVMYXN0Q2hpbGRSZWplY3QuaHRtbAppbmRleCAwMTQ3YjgxMTEyZWY3MjI3
OWNhMTZjYzU1MzJmZDg5YTVlMmRjYTM3Li5lMjRjYTA2ZTIwOTU0NjJjZjY5NzM3MzU0YjI1ZTNk
NzBkY2QwOGZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1wcmV2aW91c05vZGVMYXN0Q2hpbGRS
ZWplY3QuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci1wcmV2aW91c05vZGVMYXN0Q2hpbGRSZWplY3Qu
aHRtbApAQCAtMSw3ICsxLDcgQEAKIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8IS0tCi1UZXN0
IGFkYXB0ZWQgZnJvbSBodHRwczovL2R4ci5tb3ppbGxhLm9yZy9jaHJvbWl1bS9zb3VyY2Uvc3Jj
L3RoaXJkX3BhcnR5L1dlYktpdC9MYXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3Njcmlw
dC10ZXN0cy9wcmV2aW91c05vZGVMYXN0Q2hpbGRSZWplY3QuanMKK1Rlc3QgYWRhcHRlZCBmcm9t
IGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3ByZXZpb3VzTm9kZUxhc3RDaGlsZFJlamVjdC5q
cwogLS0+CiA8aGVhZD4KIDx0aXRsZT5UcmVlV2Fsa2VyOiBwcmV2aW91c05vZGVMYXN0Q2hpbGRS
ZWplY3Q8L3RpdGxlPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItcHJldmlvdXNTaWJsaW5nTGFz
dENoaWxkU2tpcC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItcHJldmlvdXNTaWJsaW5nTGFzdENoaWxkU2tp
cC5odG1sCmluZGV4IDU1NjY1NjRkMjQwM2E3MWRkNjk1MTA5NDEyNDY1N2QzOWJlNDAyNGEuLjVl
MjhhYTUxNDJmNWU2NjAwZGQ0YzVkMjhlMWQxNjc3YTQ1MWY2NjIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVl
V2Fsa2VyLXByZXZpb3VzU2libGluZ0xhc3RDaGlsZFNraXAuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtl
ci1wcmV2aW91c1NpYmxpbmdMYXN0Q2hpbGRTa2lwLmh0bWwKQEAgLTEsNyArMSw3IEBACiA8IURP
Q1RZUEUgaHRtbD4KIDxodG1sPgogPCEtLQotVGVzdCBhZGFwdGVkIGZyb20gaHR0cHM6Ly9keHIu
bW96aWxsYS5vcmcvY2hyb21pdW0vc291cmNlL3NyYy90aGlyZF9wYXJ0eS9XZWJLaXQvTGF5b3V0
VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9zY3JpcHQtdGVzdHMvcHJldmlvdXNTaWJsaW5nTGFz
dENoaWxkU2tpcC5qcworVGVzdCBhZGFwdGVkIGZyb20gY2hyb21pdW0vc291cmNlL3NyYy90aGly
ZF9wYXJ0eS9XZWJLaXQvTGF5b3V0VGVzdHMvZmFzdC9kb20vVHJlZVdhbGtlci9zY3JpcHQtdGVz
dHMvcHJldmlvdXNTaWJsaW5nTGFzdENoaWxkU2tpcC5qcwogLS0+CiA8aGVhZD4KIDx0aXRsZT5U
cmVlV2Fsa2VyOiBwcmV2aW91c1NpYmxpbmdMYXN0Q2hpbGRTa2lwPC90aXRsZT4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZl
cnNhbC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1yZWplY3QuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXRyYXZl
cnNhbC1yZWplY3QuaHRtbAppbmRleCA1M2I3MzQxODhjNDc3YjRiZTYzY2IyYjY2N2QxM2JmNWEz
NTI1MmZhLi5kNmM5NmFkYzExNGY2YjhjMTMxZWUwZThiZjQ5NDY4NmJiMzY0ZGE4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2
ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwtcmVqZWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXIt
dHJhdmVyc2FsLXJlamVjdC5odG1sCkBAIC0xLDcgKzEsNyBAQAogPCFET0NUWVBFIGh0bWw+CiA8
aHRtbD4KIDwhLS0KLVRlc3QgYWRhcHRlZCBmcm9tIGh0dHBzOi8vZHhyLm1vemlsbGEub3JnL2No
cm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9t
L1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3RyYXZlcnNhbC1yZWplY3QuanMKK1Rlc3QgYWRhcHRl
ZCBmcm9tIGNocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkvV2ViS2l0L0xheW91dFRlc3Rz
L2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3RyYXZlcnNhbC1yZWplY3QuanMKIC0t
PgogPGhlYWQ+CiA8dGl0bGU+VHJlZVdhbGtlcjogdHJhdmVyc2FsLXJlamVjdDwvdGl0bGU+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwtc2tpcC1tb3N0Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdh
bGtlci10cmF2ZXJzYWwtc2tpcC1tb3N0Lmh0bWwKaW5kZXggMTczOTIyYzE1ZTY4MjdhNzlhZGI0
ZWNhZjEwZWE1NDhjNDA3NWMyNC4uYjZlYWZkNDU5NjgyZTllN2RkMDI5Yzk2ZGM0NmUxMzRmZTAy
YTRlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItdHJhdmVyc2FsLXNraXAtbW9zdC5odG1sCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZl
cnNhbC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1za2lwLW1vc3QuaHRtbApAQCAtMSw3ICsxLDcgQEAK
IDwhRE9DVFlQRSBodG1sPgogPGh0bWw+CiA8IS0tCi1UZXN0IGFkYXB0ZWQgZnJvbSBodHRwczov
L2R4ci5tb3ppbGxhLm9yZy9jaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3BhcnR5L1dlYktpdC9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0cy90cmF2ZXJzYWwtc2tp
cC1tb3N0LmpzCitUZXN0IGFkYXB0ZWQgZnJvbSBjaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJkX3Bh
cnR5L1dlYktpdC9MYXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0cy90
cmF2ZXJzYWwtc2tpcC1tb3N0LmpzCiAtLT4KIDxoZWFkPgogPHRpdGxlPlRyZWVXYWxrZXI6IHRy
YXZlcnNhbC1za2lwLW1vc3Q8L3RpdGxlPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItdHJhdmVy
c2FsLXNraXAuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3RyYXZlcnNhbC9UcmVlV2Fsa2VyLXRyYXZlcnNhbC1za2lwLmh0bWwKaW5kZXggOGM2
ZjJiZjIyYmUwYjMxYmJhODRiMTRmNWI1NTE4Y2JlYWM4Nzg1NS4uNmJiZWJlNjY3ZWE1ZWU2MGE4
ZTk2OTlkNzk3MjZhNjFiNWM1OWFiNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL1RyZWVXYWxrZXItdHJhdmVyc2Fs
LXNraXAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS90cmF2ZXJzYWwvVHJlZVdhbGtlci10cmF2ZXJzYWwtc2tpcC5odG1sCkBAIC0xLDcg
KzEsNyBAQAogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDwhLS0KLVRlc3QgYWRhcHRlZCBmcm9t
IGh0dHBzOi8vZHhyLm1vemlsbGEub3JnL2Nocm9taXVtL3NvdXJjZS9zcmMvdGhpcmRfcGFydHkv
V2ViS2l0L0xheW91dFRlc3RzL2Zhc3QvZG9tL1RyZWVXYWxrZXIvc2NyaXB0LXRlc3RzL3RyYXZl
cnNhbC1za2lwLmpzCitUZXN0IGFkYXB0ZWQgZnJvbSBjaHJvbWl1bS9zb3VyY2Uvc3JjL3RoaXJk
X3BhcnR5L1dlYktpdC9MYXlvdXRUZXN0cy9mYXN0L2RvbS9UcmVlV2Fsa2VyL3NjcmlwdC10ZXN0
cy90cmF2ZXJzYWwtc2tpcC5qcwogLS0+CiA8aGVhZD4KIDx0aXRsZT5UcmVlV2Fsa2VyOiB0cmF2
ZXJzYWwtc2tpcDwvdGl0bGU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDEueG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3Vu
ZmluaXNoZWQvMDAxLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTY2NzkyYTMyZWJjMGViYTE3ZjY5OTg4ZmE3
ZTgyMzQ2YjI2MzIxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDAxLnhtbApAQCAt
MCwwICsxLDUzIEBACis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+
CisgPGhlYWQ+CisgIDx0aXRsZT5ET00gVHJhdmVyc2FsOiBOb2RlSXRlcmF0b3I6IEJhc2ljczwv
dGl0bGU+CisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gPCFbQ0RBVEFbCisgICAg
ZnVuY3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRl
Tm9kZUl0ZXJhdG9yKGRvY3VtZW50LCBOb2RlRmlsdGVyLlNIT1dfQUxMLCBudWxsLCBmYWxzZSk7
CisgICAgICB2YXIgZXhwZWN0ZWQgPSBuZXcgQXJyYXkoOSwgLy8gZG9jdW1lbnQKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAxLCAvLyBodG1sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMywgMSwgLy8gaGVhZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMs
IDEsIDMsIC8vIHRpdGxlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgMSwgMywg
NCwgLy8gc2NyaXB0IGFuZCBDREFUQSBibG9jaworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDMsIDMsIDEsIC8vIGJvZHkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAx
LCAzLCAvLyBwcmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAvLyA8L2JvZHk+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgOCwgLy8gPCEtLSAtLT4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAzLCA3LCAvLyA8PyA/PiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAzLCA0LCAzKTsgLy8gQ0RBVEEKKyAgICAgIHZhciBmb3VuZCA9IG5l
dyBBcnJheSgpOworCisgICAgICAvLyB3YWxrIGRvY3VtZW50CisgICAgICB2YXIgbm9kZTsKKyAg
ICAgIHdoaWxlIChub2RlID0gaXRlcmF0b3IubmV4dE5vZGUoKSkKKyAgICAgICAgZm91bmQucHVz
aChub2RlLm5vZGVUeXBlKTsKKworICAgICAgLy8gY2hlY2sgcmVzdWx0cworICAgICAgdmFyIGVy
cm9ycyA9IDA7CisgICAgICB2YXIgcyA9ICcnOworICAgICAgdmFyIGxlbmd0aCA9IChmb3VuZC5s
ZW5ndGggPiBleHBlY3RlZC5sZW5ndGgpID8gZm91bmQubGVuZ3RoIDogZXhwZWN0ZWQubGVuZ3Ro
OworICAgICAgcyArPSAnRVhQRUNURUQgIEZPVU5EXG4nOworICAgICAgZm9yICh2YXIgaSA9IDA7
IGkgPCBsZW5ndGg7IGkgKz0gMSkgeworICAgICAgICBzICs9ICcgICcgKyAoZXhwZWN0ZWRbaV0g
PyBleHBlY3RlZFtpXSA6ICctJykgKworICAgICAgJyAgICAgICAgICcgKyAoZm91bmRbaV0gPyBm
b3VuZFtpXSA6ICctJyk7CisgICAgICAgIGlmIChmb3VuZFtpXSAhPSBleHBlY3RlZFtpXSkgewor
ICAgICAgICAgIHMgKz0gJyAgICAgIE1JU01BVENIJzsKKyAgICAgICAgICBlcnJvcnMgKz0gMTsK
KyAgICAgICAgfQorICAgICAgICBzICs9ICdcbic7CisgICAgICB9CisgICAgICB2YXIgcCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lTlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwnLCAncHJlJylbMF07CisgICAgICBpZiAoZXJyb3JzKQorICAgICAgICBwLmZpcnN0Q2hpbGQu
ZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnMgZm91bmQ6XG5cbicgKyBzOworICAg
ICAgZWxzZQorICAgICAgICBwLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9CisgIF1d
Pjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgPHByZSBp
ZD0icmVzdWx0Ij5GQUlMOiBTY3JpcHQgZmFpbGVkIHRvIHJ1bi48L3ByZT4KKyA8L2JvZHk+Cisg
PCEtLSBzb21lIG1vcmUgbm9kZXMgdG8gdGVzdCB0aGlzOiAtLT4KKyA8P3Rlc3Qgbm9kZT8+Cisg
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmlu
aXNoZWQvMDAyLnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzE1ZDcwNGUx
MGMwOGJiZmZmZTdjNzE3OTg4MDcwZDIyNzFlMDJmZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZp
bmlzaGVkLzAwMi54bWwKQEAgLTAsMCArMSw1NCBAQAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0bGU+RE9NIFRyYXZlcnNhbDogTm9k
ZUl0ZXJhdG9yOiBCYXNpY3MgQmFja3dhcmRzPC90aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICB2
YXIgaXRlcmF0b3IgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IoZG9jdW1lbnQsIE5vZGVG
aWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsKKyAgICAgIHZhciBleHBlY3RlZCA9IG5ldyBB
cnJheSg5LCAvLyBkb2N1bWVudAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIC8v
IGh0bWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAxLCAvLyBoZWFkCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgMSwgMywgLy8gdGl0bGUKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAzLCAxLCAzLCA0LCAvLyBzY3JpcHQgYW5kIENEQVRBIGJsb2Nr
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgMywgMSwgLy8gYm9keQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDMsIDEsIDMsIC8vIHByZQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDMsIC8vIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAzLCA4LCAvLyA8IS0tIC0tPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMs
IDcsIC8vIDw/ID8+LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMsIDQsIDMpOyAv
LyBDREFUQQorICAgICAgdmFyIGZvdW5kID0gbmV3IEFycmF5KCk7CisKKyAgICAgIC8vIHdhbGsg
ZG9jdW1lbnQKKyAgICAgIHZhciBub2RlOworICAgICAgd2hpbGUgKG5vZGUgPSBpdGVyYXRvci5u
ZXh0Tm9kZSgpKTsKKyAgICAgIHdoaWxlIChub2RlID0gaXRlcmF0b3IucHJldmlvdXNOb2RlKCkp
CisgICAgICAgIGZvdW5kLnVuc2hpZnQobm9kZS5ub2RlVHlwZSk7CisKKyAgICAgIC8vIGNoZWNr
IHJlc3VsdHMKKyAgICAgIHZhciBlcnJvcnMgPSAwOworICAgICAgdmFyIHMgPSAnJzsKKyAgICAg
IHZhciBsZW5ndGggPSAoZm91bmQubGVuZ3RoID4gZXhwZWN0ZWQubGVuZ3RoKSA/IGZvdW5kLmxl
bmd0aCA6IGV4cGVjdGVkLmxlbmd0aDsKKyAgICAgIHMgKz0gJ0VYUEVDVEVEICBGT1VORFxuJzsK
KyAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpICs9IDEpIHsKKyAgICAgICAgcyAr
PSAnICAnICsgKGV4cGVjdGVkW2ldID8gZXhwZWN0ZWRbaV0gOiAnLScpICsKKyAgICAgICcgICAg
ICAgICAnICsgKGZvdW5kW2ldID8gZm91bmRbaV0gOiAnLScpOworICAgICAgICBpZiAoZm91bmRb
aV0gIT0gZXhwZWN0ZWRbaV0pIHsKKyAgICAgICAgICBzICs9ICcgICAgICBNSVNNQVRDSCc7Cisg
ICAgICAgICAgZXJyb3JzICs9IDE7CisgICAgICAgIH0KKyAgICAgICAgcyArPSAnXG4nOworICAg
ICAgfQorICAgICAgdmFyIHAgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZU5TKCdodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3ByZScpWzBdOworICAgICAgaWYgKGVycm9ycykK
KyAgICAgICAgcC5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyArICcgZXJyb3Jz
IGZvdW5kOlxuXG4nICsgczsKKyAgICAgIGVsc2UKKyAgICAgICAgcC5maXJzdENoaWxkLmRhdGEg
PSAnUEFTUyc7CisgICAgfQorICBdXT48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHkgb25sb2Fk
PSJkb1Rlc3QoKSI+CisgIDxwcmUgaWQ9InJlc3VsdCI+RkFJTDogU2NyaXB0IGZhaWxlZCB0byBy
dW4uPC9wcmU+CisgPC9ib2R5PgorIDwhLS0gc29tZSBtb3JlIG5vZGVzIHRvIHRlc3QgdGhpczog
LS0+CisgPD90ZXN0IG5vZGU/PgorIAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMy54bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDMueG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjI2OGU2YmI0ZDc0NmJmOGU5YThlMTZlNjNkN2Y4ZjQxZjc5ZGM5ZDgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDMueG1sCkBAIC0wLDAgKzEsNTggQEAKKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8aGVhZD4KKyAgPHRp
dGxlPkRPTSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBvZiBub2RlcyB0aGF0IHNo
b3VsZCBoYXZlIG5vIGVmZmVjdDwvdGl0bGU+CisgIDwhLS0KKyAgIFRoaXMgdGVzdHMgdGhlc2Ug
Y2FzZXMgdGhhdCBzaG91bGQgaGF2ZSBubyBlZmZlY3Q6CisgICAgMS4gUmVtb3ZlIGEgbm9kZSB1
bnJlbGF0ZWQgdG8gdGhlIHJlZmVyZW5jZSBub2RlCisgICAgMi4gUmVtb3ZlIGFuIGFuY2VzdG9y
IG9mIHRoZSByb290IG5vZGUKKyAgICAzLiBSZW1vdmUgdGhlIHJvb3Qgbm9kZSBpdHNlbGYKKyAg
ICA0LiBSZW1vdmUgZGVzY2VuZGFudCBvZiByZWZlcmVuY2Ugbm9kZQorICAtLT4KKyAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICB2YXIgZXJyb3JzID0gMDsK
KyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVuY3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0
ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsKKyAgICAgIHZh
ciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKTsKKyAgICAgIHZhciBBID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0EnKTsKKyAgICAgIHZhciBCID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ0InKTsKKyAgICAgIHZhciBDID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J0MnKTsKKyAgICAgIHZhciBEID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0QnKTsKKyAgICAg
IHZhciBFID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0UnKTsKKyAgICAgIGNoZWNrKGl0ZXJh
dG9yLm5leHROb2RlKCksIHJvb3QpOworICAgICAgcmVtb3ZlKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdYJykpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQSk7CisgICAgICBy
ZW1vdmUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ1knKSk7CisgICAgICBjaGVjayhpdGVyYXRv
ci5uZXh0Tm9kZSgpLCBCKTsKKyAgICAgIHJlbW92ZShyb290KTsKKyAgICAgIGNoZWNrKGl0ZXJh
dG9yLm5leHROb2RlKCksIEMpOworICAgICAgcmVtb3ZlKEUpOworICAgICAgY2hlY2soaXRlcmF0
b3IubmV4dE5vZGUoKSwgRCk7CisgICAgICBpZiAoZXJyb3JzKQorICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgncmVzdWx0JykuZmlyc3RDaGlsZC5kYXRhID0gJ0ZBSUw6ICcgKyBlcnJv
cnMgKyAnIGVycm9yczpcbicgKyBsb2c7CisgICAgICBlbHNlCisgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnUEFTUyc7CisgICAgfQor
ICAgIGZ1bmN0aW9uIGNoZWNrKGEsIGIpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJv
cnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCBudWxsIGJ1dCBleHBlY3RlZCAnICsgYiAr
ICcgKCcgKyBiLmlkICsgJykuXG4nOworICAgICAgfSBlbHNlIGlmIChhICE9IGIpIHsKKyAgICAg
ICAgZXJyb3JzICs9IDE7CisgICAgICAgIGxvZyArPSAnRm91bmQgJyArIGEgKyAnICgnICsgYS5p
ZCArICcpIGJ1dCBleHBlY3RlZCAnICsgYiArICcgKCcgKyBiLmlkICsgJykuXG4nOworICAgICAg
fQorICAgIH0KKyAgICBmdW5jdGlvbiByZW1vdmUoYSkgeworICAgICAgaWYgKCFhKSB7CisgICAg
ICAgIGVycm9ycyArPSAxOworICAgICAgICBsb2cgKz0gJ1RyaWVkIHJlbW92aW5nIG51bGwgbm9k
ZS5cbic7CisgICAgICB9IGVsc2UKKyAgICAgIGEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTsK
KyAgICB9CisgIF1dPjwvc2NyaXB0PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgp
Ij4KKyAgPHByZSBpZD0icmVzdWx0Ij5GQUlMOiBTY3JpcHQgZGlkIG5vdCBjb21wbGV0ZS48L3By
ZT4KKyAgPHA+PHNwYW4gaWQ9IlgiPjwvc3Bhbj48c3BhbiBpZD0iWSI+PHNwYW4gaWQ9InJvb3Qi
PjxzcGFuIGlkPSJBIj48c3BhbiBpZD0iQiI+PHNwYW4gaWQ9IkMiPjxzcGFuIGlkPSJEIj48c3Bh
biBpZD0iRSI+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFu
PjwvcD4KKyA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20v
dHJhdmVyc2FsL3VuZmluaXNoZWQvMDA0LnhtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNC54bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjE4OTc4ZjAyMWUzMmEyMTVkNjRlNWQ0NzQ4MjZiYjM5ZTI5NGY2NQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNC54bWwKQEAgLTAsMCArMSw0OSBAQAorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorIDxoZWFkPgorICA8dGl0bGU+RE9N
IFRyYXZlcnNhbDogTm9kZUl0ZXJhdG9yOiBSZW1vdmFsIG9mIHRoZSBSZWZlcmVuY2UgTm9kZTwv
dGl0bGU+CisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gPCFbQ0RBVEFbCisgICAg
dmFyIGVycm9ycyA9IDA7CisgICAgdmFyIGxvZyA9ICcnOworICAgIGZ1bmN0aW9uIGRvVGVzdCgp
IHsKKyAgICAgIHZhciBpdGVyYXRvciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgncm9vdCcpLCBOb2RlRmlsdGVyLlNIT1dfQUxMLCBudWxsLCBm
YWxzZSk7CisgICAgICB2YXIgcm9vdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyb290Jyk7
CisgICAgICB2YXIgQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdBJyk7CisgICAgICB2YXIg
QUEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQUEnKTsKKyAgICAgIHZhciBCID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ0InKTsKKyAgICAgIHZhciBDID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ0MnKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIHJvb3QpOworICAg
ICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQSk7CisgICAgICBjaGVjayhpdGVyYXRvci5u
ZXh0Tm9kZSgpLCBBQSk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBCKTsKKyAg
ICAgIHJlbW92ZShCKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLnByZXZpb3VzTm9kZSgpLCBBQSk7
CisgICAgICByZW1vdmUoQUEpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQyk7
CisgICAgICBpZiAoZXJyb3JzKQorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVz
dWx0JykuZmlyc3RDaGlsZC5kYXRhID0gJ0ZBSUw6ICcgKyBlcnJvcnMgKyAnIGVycm9yczpcbicg
KyBsb2c7CisgICAgICBlbHNlCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1
bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnUEFTUyc7CisgICAgfQorICAgIGZ1bmN0aW9uIGNoZWNr
KGEsIGIpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJvcnMgKz0gMTsKKyAgICAgICAg
bG9nICs9ICdGb3VuZCBudWxsIGJ1dCBleHBlY3RlZCAnICsgYiArICcgKCcgKyBiLmlkICsgJyku
XG4nOworICAgICAgfSBlbHNlIGlmIChhICE9IGIpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7Cisg
ICAgICAgIGxvZyArPSAnRm91bmQgJyArIGEgKyAnICgnICsgYS5pZCArICcpIGJ1dCBleHBlY3Rl
ZCAnICsgYiArICcgKCcgKyBiLmlkICsgJykuXG4nOworICAgICAgfQorICAgIH0KKyAgICBmdW5j
dGlvbiByZW1vdmUoYSkgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOwor
ICAgICAgICBsb2cgKz0gJ1RyaWVkIHJlbW92aW5nIG51bGwgbm9kZS5cbic7CisgICAgICB9IGVs
c2UKKyAgICAgIGEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTsKKyAgICB9CisgIF1dPjwvc2Ny
aXB0PgorIDwvaGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgPHByZSBpZD0icmVz
dWx0Ij5GQUlMOiBTY3JpcHQgZGlkIG5vdCBjb21wbGV0ZS48L3ByZT4KKyAgPHA+PHNwYW4gaWQ9
InJvb3QiPjxzcGFuIGlkPSJBIj48c3BhbiBpZD0iQUEiPjwvc3Bhbj48L3NwYW4+PHNwYW4gaWQ9
IkIiPjwvc3Bhbj48c3BhbiBpZD0iQyI+PHNwYW4gaWQ9IkNDIj48L3NwYW4+PC9zcGFuPjwvc3Bh
bj48L3A+CisgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNS54bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDUueG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY0M2UyZjFjZDRmZDg4YTFmZDdkNTQyNTE2NWZiMDE5NTBlZDZjZDUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDUueG1sCkBAIC0wLDAgKzEsNTcgQEAKKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8aGVhZD4KKyAgPHRpdGxlPkRP
TSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBvZiB0aGUgUmVmZXJlbmNlIE5vZGUg
KGRlZXAgY2hlY2spPC90aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8
IVtDREFUQVsKKyAgICB2YXIgZXJyb3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVu
Y3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9k
ZUl0ZXJhdG9yKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hP
V19BTEwsIG51bGwsIGZhbHNlKTsKKyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Jvb3QnKTsKKyAgICAgIHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0En
KTsKKyAgICAgIHZhciBBQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdBQScpOworICAgICAg
dmFyIEIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQicpOworICAgICAgdmFyIEMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnQycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUo
KSwgcm9vdCk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIGNo
ZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEFBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHRO
b2RlKCksIEIpOworICAgICAgcmVtb3ZlKEIpOworICAgICAgdmFyIFggPSBhZGRDaGlsZFRvKEFB
KTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIFgpOworICAgICAgY2hlY2soaXRl
cmF0b3IucHJldmlvdXNOb2RlKCksIFgpOworICAgICAgcmVtb3ZlKFgpOworICAgICAgdmFyIFkg
PSBhZGRDaGlsZFRvKEFBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLnByZXZpb3VzTm9kZSgpLCBZ
KTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdy
ZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyArICcgZXJyb3JzOlxu
JyArIGxvZzsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jl
c3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9CisgICAgZnVuY3Rpb24gY2hl
Y2soYSwgYikgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOworICAgICAg
ICBsb2cgKz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAn
KS5cbic7CisgICAgICB9IGVsc2UgaWYgKGEgIT0gYikgeworICAgICAgICBlcnJvcnMgKz0gMTsK
KyAgICAgICAgbG9nICs9ICdGb3VuZCAnICsgYSArICcgKCcgKyBhLmlkICsgJykgYnV0IGV4cGVj
dGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9CisgICAgfQorICAgIGZ1
bmN0aW9uIHJlbW92ZShhKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7
CisgICAgICAgIGxvZyArPSAnVHJpZWQgcmVtb3ZpbmcgbnVsbCBub2RlLlxuJzsKKyAgICAgIH0g
ZWxzZQorICAgICAgYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOworICAgIH0KKyAgICBmdW5j
dGlvbiBhZGRDaGlsZFRvKGEpIHsKKyAgICAgIHZhciB4ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3NwYW4nKTsKKyAgICAgIGEuYXBw
ZW5kQ2hpbGQoeCk7CisgICAgICByZXR1cm4geDsKKyAgICB9CisgIF1dPjwvc2NyaXB0PgorIDwv
aGVhZD4KKyA8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgPHByZSBpZD0icmVzdWx0Ij5GQUlM
OiBTY3JpcHQgZGlkIG5vdCBjb21wbGV0ZS48L3ByZT4KKyAgPHA+PHNwYW4gaWQ9InJvb3QiPjxz
cGFuIGlkPSJBIj48c3BhbiBpZD0iQUEiPjwvc3Bhbj48L3NwYW4+PHNwYW4gaWQ9IkIiPjwvc3Bh
bj48c3BhbiBpZD0iQyI+PHNwYW4gaWQ9IkNDIj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3A+Cisg
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNh
bC91bmZpbmlzaGVkLzAwNi54bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDYueG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMy
MzAyYWY4MzY2Y2RkM2VkMDA2M2Y0NmZkYjdmMzUwZTgxNzkwMWEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJz
YWwvdW5maW5pc2hlZC8wMDYueG1sCkBAIC0wLDAgKzEsNDcgQEAKKzxodG1sIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8aGVhZD4KKyAgPHRpdGxlPkRPTSBUcmF2ZXJz
YWw6IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBvZiBhbiBhbmNlc3RvciBvZiB0aGUgUmVmZXJlbmNl
IE5vZGUgKGZvcndhcmRzKTwvdGl0bGU+CisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4gPCFbQ0RBVEFbCisgICAgdmFyIGVycm9ycyA9IDA7CisgICAgdmFyIGxvZyA9ICcnOworICAg
IGZ1bmN0aW9uIGRvVGVzdCgpIHsKKyAgICAgIHZhciBpdGVyYXRvciA9IGRvY3VtZW50LmNyZWF0
ZU5vZGVJdGVyYXRvcihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncm9vdCcpLCBOb2RlRmlsdGVy
LlNIT1dfQUxMLCBudWxsLCBmYWxzZSk7CisgICAgICB2YXIgcm9vdCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdyb290Jyk7CisgICAgICB2YXIgQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdBJyk7CisgICAgICB2YXIgQiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdCJyk7CisgICAg
ICB2YXIgQkIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQkInKTsKKyAgICAgIHZhciBDID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0MnKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHRO
b2RlKCksIHJvb3QpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQSk7CisgICAg
ICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBCKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5l
eHROb2RlKCksIEJCKTsKKyAgICAgIHJlbW92ZShCKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLnBy
ZXZpb3VzTm9kZSgpLCBBKTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9y
cyArICcgZXJyb3JzOlxuJyArIGxvZzsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9Cisg
ICAgZnVuY3Rpb24gY2hlY2soYSwgYikgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9y
cyArPSAxOworICAgICAgICBsb2cgKz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVjdGVkICcgKyBiICsg
JyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9IGVsc2UgaWYgKGEgIT0gYikgeworICAgICAg
ICBlcnJvcnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCAnICsgYSArICcgKCcgKyBhLmlk
ICsgJykgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9
CisgICAgfQorICAgIGZ1bmN0aW9uIHJlbW92ZShhKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAg
ICAgZXJyb3JzICs9IDE7CisgICAgICAgIGxvZyArPSAnVHJpZWQgcmVtb3ZpbmcgbnVsbCBub2Rl
LlxuJzsKKyAgICAgIH0gZWxzZQorICAgICAgYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOwor
ICAgIH0KKyAgXV0+PC9zY3JpcHQ+CisgPC9oZWFkPgorIDxib2R5IG9ubG9hZD0iZG9UZXN0KCki
PgorICA8cHJlIGlkPSJyZXN1bHQiPkZBSUw6IFNjcmlwdCBkaWQgbm90IGNvbXBsZXRlLjwvcHJl
PgorICA8cD48c3BhbiBpZD0icm9vdCI+PHNwYW4gaWQ9IkEiPjwvc3Bhbj48c3BhbiBpZD0iQiI+
PHNwYW4gaWQ9IkJCIj48L3NwYW4+PC9zcGFuPjxzcGFuIGlkPSJDIj48L3NwYW4+PC9zcGFuPjwv
cD4KKyA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDcueG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2Fs
L3VuZmluaXNoZWQvMDA3LnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OGIyMTJlNGU1ZjljY2IxZDBjYWI1ZjMy
YTdmMGE4MzA2YjJhZDA2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA3LnhtbApA
QCAtMCwwICsxLDU0IEBACis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRt
bCI+CisgPGhlYWQ+CisgIDx0aXRsZT5ET00gVHJhdmVyc2FsOiBOb2RlSXRlcmF0b3I6IFJlbW92
YWwgb2YgYW4gYW5jZXN0b3Igb2YgdGhlIFJlZmVyZW5jZSBOb2RlIChmb3J3YXJkcykgKGRlZXAg
Y2hlY2spPC90aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFU
QVsKKyAgICB2YXIgZXJyb3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVuY3Rpb24g
ZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJh
dG9yKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hPV19BTEws
IG51bGwsIGZhbHNlKTsKKyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3Jvb3QnKTsKKyAgICAgIHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0EnKTsKKyAg
ICAgIHZhciBCID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0InKTsKKyAgICAgIHZhciBCQiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdCQicpOworICAgICAgdmFyIEMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnQycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgcm9v
dCk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIGNoZWNrKGl0
ZXJhdG9yLm5leHROb2RlKCksIEIpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwg
QkIpOworICAgICAgcmVtb3ZlKEIpOworICAgICAgdmFyIFggPSBhZGRDaGlsZFRvKEEpOworICAg
ICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgWCk7CisgICAgICBpZiAoZXJyb3JzKQorICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykuZmlyc3RDaGlsZC5kYXRhID0g
J0ZBSUw6ICcgKyBlcnJvcnMgKyAnIGVycm9yczpcbicgKyBsb2c7CisgICAgICBlbHNlCisgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAn
UEFTUyc7CisgICAgfQorICAgIGZ1bmN0aW9uIGNoZWNrKGEsIGIpIHsKKyAgICAgIGlmICghYSkg
eworICAgICAgICBlcnJvcnMgKz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCBudWxsIGJ1dCBl
eHBlY3RlZCAnICsgYiArICcgKCcgKyBiLmlkICsgJykuXG4nOworICAgICAgfSBlbHNlIGlmIChh
ICE9IGIpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAgICAgIGxvZyArPSAnRm91bmQgJyAr
IGEgKyAnICgnICsgYS5pZCArICcpIGJ1dCBleHBlY3RlZCAnICsgYiArICcgKCcgKyBiLmlkICsg
JykuXG4nOworICAgICAgfQorICAgIH0KKyAgICBmdW5jdGlvbiByZW1vdmUoYSkgeworICAgICAg
aWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOworICAgICAgICBsb2cgKz0gJ1RyaWVkIHJl
bW92aW5nIG51bGwgbm9kZS5cbic7CisgICAgICB9IGVsc2UKKyAgICAgIGEucGFyZW50Tm9kZS5y
ZW1vdmVDaGlsZChhKTsKKyAgICB9CisgICAgZnVuY3Rpb24gYWRkQ2hpbGRUbyhhKSB7CisgICAg
ICB2YXIgeCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCcsICdzcGFuJyk7CisgICAgICB4LmlkID0gJ1gnOworICAgICAgYS5hcHBlbmRDaGls
ZCh4KTsKKyAgICAgIHJldHVybiB4OworICAgIH0KKyAgXV0+PC9zY3JpcHQ+CisgPC9oZWFkPgor
IDxib2R5IG9ubG9hZD0iZG9UZXN0KCkiPgorICA8cHJlIGlkPSJyZXN1bHQiPkZBSUw6IFNjcmlw
dCBkaWQgbm90IGNvbXBsZXRlLjwvcHJlPgorICA8cD48c3BhbiBpZD0icm9vdCI+PHNwYW4gaWQ9
IkEiPjwvc3Bhbj48c3BhbiBpZD0iQiI+PHNwYW4gaWQ9IkJCIj48L3NwYW4+PC9zcGFuPjxzcGFu
IGlkPSJDIj48L3NwYW4+PC9zcGFuPjwvcD4KKyA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJz
YWwvdW5maW5pc2hlZC8wMDgueG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvMDA4LnhtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MWQ3MDA4YWU0MjIwZTg3MjIwNmViNjdjZmQ4OWFiNzBkOTE3YjY0Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVy
c2FsL3VuZmluaXNoZWQvMDA4LnhtbApAQCAtMCwwICsxLDQ4IEBACis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgPGhlYWQ+CisgIDx0aXRsZT5ET00gVHJhdmVy
c2FsOiBOb2RlSXRlcmF0b3I6IFJlbW92YWwgb2YgYW4gYW5jZXN0b3Igb2YgdGhlIFJlZmVyZW5j
ZSBOb2RlIChiYWNrd2FyZHMpPC90aXRsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPiA8IVtDREFUQVsKKyAgICB2YXIgZXJyb3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7Cisg
ICAgZnVuY3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3Jl
YXRlTm9kZUl0ZXJhdG9yKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0
ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsKKyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3Jvb3QnKTsKKyAgICAgIHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ0EnKTsKKyAgICAgIHZhciBCID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0InKTsKKyAg
ICAgIHZhciBCQiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdCQicpOworICAgICAgdmFyIEMg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnQycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4
dE5vZGUoKSwgcm9vdCk7CisgICAgICBjaGVjayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAg
ICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEIpOworICAgICAgY2hlY2soaXRlcmF0b3Iu
bmV4dE5vZGUoKSwgQkIpOworICAgICAgY2hlY2soaXRlcmF0b3IucHJldmlvdXNOb2RlKCksIEJC
KTsKKyAgICAgIHJlbW92ZShCKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2RlKCksIEMp
OworICAgICAgaWYgKGVycm9ycykKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jl
c3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdGQUlMOiAnICsgZXJyb3JzICsgJyBlcnJvcnM6XG4n
ICsgbG9nOworICAgICAgZWxzZQorICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVz
dWx0JykuZmlyc3RDaGlsZC5kYXRhID0gJ1BBU1MnOworICAgIH0KKyAgICBmdW5jdGlvbiBjaGVj
ayhhLCBiKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3JzICs9IDE7CisgICAgICAg
IGxvZyArPSAnRm91bmQgbnVsbCBidXQgZXhwZWN0ZWQgJyArIGIgKyAnICgnICsgYi5pZCArICcp
LlxuJzsKKyAgICAgIH0gZWxzZSBpZiAoYSAhPSBiKSB7CisgICAgICAgIGVycm9ycyArPSAxOwor
ICAgICAgICBsb2cgKz0gJ0ZvdW5kICcgKyBhICsgJyAoJyArIGEuaWQgKyAnKSBidXQgZXhwZWN0
ZWQgJyArIGIgKyAnICgnICsgYi5pZCArICcpLlxuJzsKKyAgICAgIH0KKyAgICB9CisgICAgZnVu
Y3Rpb24gcmVtb3ZlKGEpIHsKKyAgICAgIGlmICghYSkgeworICAgICAgICBlcnJvcnMgKz0gMTsK
KyAgICAgICAgbG9nICs9ICdUcmllZCByZW1vdmluZyBudWxsIG5vZGUuXG4nOworICAgICAgfSBl
bHNlCisgICAgICBhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk7CisgICAgfQorICBdXT48L3Nj
cmlwdD4KKyA8L2hlYWQ+CisgPGJvZHkgb25sb2FkPSJkb1Rlc3QoKSI+CisgIDxwcmUgaWQ9InJl
c3VsdCI+RkFJTDogU2NyaXB0IGRpZCBub3QgY29tcGxldGUuPC9wcmU+CisgIDxwPjxzcGFuIGlk
PSJyb290Ij48c3BhbiBpZD0iQSI+PC9zcGFuPjxzcGFuIGlkPSJCIj48c3BhbiBpZD0iQkIiPjwv
c3Bhbj48L3NwYW4+PHNwYW4gaWQ9IkMiPjwvc3Bhbj48L3NwYW4+PC9wPgorIDwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwOS54bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDku
eG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmMzMDA2ZWNiZDZmZjc1OTI1MWI0MDI4MjllN2ZiYWFjMWUzOTU1YTEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDkueG1sCkBAIC0wLDAgKzEsNTUgQEAK
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyA8aGVhZD4KKyAg
PHRpdGxlPkRPTSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogUmVtb3ZhbCBvZiBhbiBhbmNlc3Rv
ciBvZiB0aGUgUmVmZXJlbmNlIE5vZGUgKGJhY2t3YXJkcykgKGRlZXAgY2hlY2spPC90aXRsZT4K
KyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiA8IVtDREFUQVsKKyAgICB2YXIgZXJy
b3JzID0gMDsKKyAgICB2YXIgbG9nID0gJyc7CisgICAgZnVuY3Rpb24gZG9UZXN0KCkgeworICAg
ICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdyb290JyksIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsK
KyAgICAgIHZhciByb290ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKTsKKyAgICAg
IHZhciBBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0EnKTsKKyAgICAgIHZhciBCID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ0InKTsKKyAgICAgIHZhciBCQiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdCQicpOworICAgICAgdmFyIEMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
QycpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgcm9vdCk7CisgICAgICBjaGVj
ayhpdGVyYXRvci5uZXh0Tm9kZSgpLCBBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLm5leHROb2Rl
KCksIEIpOworICAgICAgY2hlY2soaXRlcmF0b3IubmV4dE5vZGUoKSwgQkIpOworICAgICAgY2hl
Y2soaXRlcmF0b3IucHJldmlvdXNOb2RlKCksIEJCKTsKKyAgICAgIHJlbW92ZShCKTsKKyAgICAg
IHZhciBYID0gYWRkQ2hpbGRUbyhBKTsKKyAgICAgIGNoZWNrKGl0ZXJhdG9yLnByZXZpb3VzTm9k
ZSgpLCBYKTsKKyAgICAgIGlmIChlcnJvcnMpCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdyZXN1bHQnKS5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyArICcgZXJy
b3JzOlxuJyArIGxvZzsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3Jlc3VsdCcpLmZpcnN0Q2hpbGQuZGF0YSA9ICdQQVNTJzsKKyAgICB9CisgICAgZnVuY3Rp
b24gY2hlY2soYSwgYikgeworICAgICAgaWYgKCFhKSB7CisgICAgICAgIGVycm9ycyArPSAxOwor
ICAgICAgICBsb2cgKz0gJ0ZvdW5kIG51bGwgYnV0IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIu
aWQgKyAnKS5cbic7CisgICAgICB9IGVsc2UgaWYgKGEgIT0gYikgeworICAgICAgICBlcnJvcnMg
Kz0gMTsKKyAgICAgICAgbG9nICs9ICdGb3VuZCAnICsgYSArICcgKCcgKyBhLmlkICsgJykgYnV0
IGV4cGVjdGVkICcgKyBiICsgJyAoJyArIGIuaWQgKyAnKS5cbic7CisgICAgICB9CisgICAgfQor
ICAgIGZ1bmN0aW9uIHJlbW92ZShhKSB7CisgICAgICBpZiAoIWEpIHsKKyAgICAgICAgZXJyb3Jz
ICs9IDE7CisgICAgICAgIGxvZyArPSAnVHJpZWQgcmVtb3ZpbmcgbnVsbCBub2RlLlxuJzsKKyAg
ICAgIH0gZWxzZQorICAgICAgYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOworICAgIH0KKyAg
ICBmdW5jdGlvbiBhZGRDaGlsZFRvKGEpIHsKKyAgICAgIHZhciB4ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3NwYW4nKTsKKyAgICAg
IHguaWQgPSAnWCc7CisgICAgICBhLmFwcGVuZENoaWxkKHgpOworICAgICAgcmV0dXJuIHg7Cisg
ICAgfQorICBdXT48L3NjcmlwdD4KKyA8L2hlYWQ+CisgPGJvZHkgb25sb2FkPSJkb1Rlc3QoKSI+
CisgIDxwcmUgaWQ9InJlc3VsdCI+RkFJTDogU2NyaXB0IGRpZCBub3QgY29tcGxldGUuPC9wcmU+
CisgIDxwPjxzcGFuIGlkPSJyb290Ij48c3BhbiBpZD0iQSI+PC9zcGFuPjxzcGFuIGlkPSJCIj48
c3BhbiBpZD0iQkIiPjwvc3Bhbj48L3NwYW4+PHNwYW4gaWQ9IkMiPjwvc3Bhbj48L3NwYW4+PC9w
PgorIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAxMC54bWwgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwv
dW5maW5pc2hlZC8wMTAueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRiMmE2Y2M3ZjFmODM1NTA0OWI3YzI1NDU5
ODJlNGFmNzc3YmU0YTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMTAueG1sCkBA
IC0wLDAgKzEsNjQgQEAKKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
Ij4KKyA8aGVhZD4KKyAgPHRpdGxlPkRPTSBUcmF2ZXJzYWw6IE5vZGVJdGVyYXRvcjogRmlsdGVy
czwvdGl0bGU+CisgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gPCFbQ0RBVEFbCisg
ICAgZnVuY3Rpb24gZG9UZXN0KCkgeworICAgICAgdmFyIGl0ZXJhdG9yID0gZG9jdW1lbnQuY3Jl
YXRlTm9kZUl0ZXJhdG9yKGRvY3VtZW50LCBOb2RlRmlsdGVyLlNIT1dfQUxMLCB0ZXN0RmlsdGVy
LCBmYWxzZSk7CisgICAgICAvLyBza2lwcyB0ZXh0IG5vZGVzIGFuZCBib2R5IGVsZW1lbnQKKyAg
ICAgIHZhciBleHBlY3RlZCA9IG5ldyBBcnJheSg5LCAvLyBkb2N1bWVudAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDEsIC8vIGh0bWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAxLCAvLyBoZWFkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgLy8gdGl0
bGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCA0LCAvLyBzY3JpcHQgYW5kIENE
QVRBIGJsb2NrCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYm9keSAoc2tpcHBl
ZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAvLyBwcmUKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgOCwgLy8gPCEtLSAtLT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBQ
SSBza2lwcGVkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNCk7IC8vIENEQVRBCisg
ICAgICB2YXIgZm91bmQgPSBuZXcgQXJyYXkoKTsKKworICAgICAgLy8gd2FsayBkb2N1bWVudAor
ICAgICAgdmFyIG5vZGU7CisgICAgICB3aGlsZSAobm9kZSA9IGl0ZXJhdG9yLm5leHROb2RlKCkp
CisgICAgICAgIGZvdW5kLnB1c2gobm9kZS5ub2RlVHlwZSk7CisKKyAgICAgIC8vIGNoZWNrIHJl
c3VsdHMKKyAgICAgIHZhciBlcnJvcnMgPSAwOworICAgICAgdmFyIHMgPSAnJzsKKyAgICAgIHZh
ciBsZW5ndGggPSAoZm91bmQubGVuZ3RoID4gZXhwZWN0ZWQubGVuZ3RoKSA/IGZvdW5kLmxlbmd0
aCA6IGV4cGVjdGVkLmxlbmd0aDsKKyAgICAgIHMgKz0gJ0VYUEVDVEVEICBGT1VORFxuJzsKKyAg
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpICs9IDEpIHsKKyAgICAgICAgcyArPSAn
ICAnICsgKGV4cGVjdGVkW2ldID8gZXhwZWN0ZWRbaV0gOiAnLScpICsKKyAgICAgICcgICAgICAg
ICAnICsgKGZvdW5kW2ldID8gZm91bmRbaV0gOiAnLScpOworICAgICAgICBpZiAoZm91bmRbaV0g
IT0gZXhwZWN0ZWRbaV0pIHsKKyAgICAgICAgICBzICs9ICcgICAgICBNSVNNQVRDSCc7CisgICAg
ICAgICAgZXJyb3JzICs9IDE7CisgICAgICAgIH0KKyAgICAgICAgcyArPSAnXG4nOworICAgICAg
fQorICAgICAgdmFyIHAgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZU5TKCdodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3ByZScpWzBdOworICAgICAgaWYgKGVycm9ycykKKyAg
ICAgICAgcC5maXJzdENoaWxkLmRhdGEgPSAnRkFJTDogJyArIGVycm9ycyArICcgZXJyb3JzIGZv
dW5kOlxuXG4nICsgczsKKyAgICAgIGVsc2UKKyAgICAgICAgcC5maXJzdENoaWxkLmRhdGEgPSAn
UEFTUyc7CisgICAgfQorCisgICAgZnVuY3Rpb24gdGVzdEZpbHRlcihuKSB7CisgICAgICBpZiAo
bi5ub2RlVHlwZSA9PSAzKSB7CisgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9TS0lQ
OworICAgICAgfSBlbHNlIGlmIChuLm5vZGVOYW1lID09ICdib2R5JykgeworICAgICAgICByZXR1
cm4gTm9kZUZpbHRlci5GSUxURVJfUkVKRUNUOyAvLyBzYW1lIGFzIF9TS0lQCisgICAgICB9Cisg
ICAgICByZXR1cm4gMTsgLy8gRklMVEVSX0FDQ0VQVAorICAgIH0KKworICBdXT48L3NjcmlwdD4K
KyA8L2hlYWQ+CisgPGJvZHkgb25sb2FkPSJkb1Rlc3QoKSI+CisgIDxwcmUgaWQ9InJlc3VsdCI+
RkFJTDogU2NyaXB0IGZhaWxlZCB0byBydW4uPC9wcmU+CisgPC9ib2R5PgorIDwhLS0gc29tZSBt
b3JlIG5vZGVzIHRvIHRlc3QgdGhpczogLS0+CisgPD9ib2R5IHRlc3Q/PgorIAorPC9odG1sPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkL1RPRE8g
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJz
YWwvdW5maW5pc2hlZC9UT0RPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNlY2RmOThiMDhhYmY5ZWJjODViMDE4M2Ex
Mzc3OWEzYjA2Nzc2ZGEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC9UT0RPCkBAIC0w
LDAgKzEgQEAKK0NoZWNrIHdoYXQgaGFwcGVucyB3aGVuIGEgTm9kZUZpbHRlciB0dXJucyBhIG51
bWJlciBub3QgaW4gdGhlIHJhbmdlIDEuLjMKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS90cmF2ZXJzYWwvdW5maW5pc2hlZC93M2MtaW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkL3czYy1p
bXBvcnQubG9nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRhNzg2NzA3MGVlOTZkZmI4ZTEzMDU5ZjJkMjM0NjljYTkw
NjExYTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC93M2MtaW1wb3J0LmxvZwpAQCAt
MCwwICsxLDI3IEBACitUaGUgdGVzdHMgaW4gdGhpcyBkaXJlY3Rvcnkgd2VyZSBpbXBvcnRlZCBm
cm9tIHRoZSBXM0MgcmVwb3NpdG9yeS4KK0RvIE5PVCBtb2RpZnkgdGhlc2UgdGVzdHMgZGlyZWN0
bHkgaW4gV2ViS2l0LgorSW5zdGVhZCwgY3JlYXRlIGEgcHVsbCByZXF1ZXN0IG9uIHRoZSBXUFQg
Z2l0aHViOgorCWh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0CisKK1Ro
ZW4gcnVuIHRoZSBUb29scy9TY3JpcHRzL2ltcG9ydC13M2MtdGVzdHMgaW4gV2ViS2l0IHRvIHJl
aW1wb3J0CisKK0RvIE5PVCBtb2RpZnkgb3IgcmVtb3ZlIHRoaXMgZmlsZS4KKworLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCitQcm9wZXJ0aWVzIHJlcXVpcmluZyB2ZW5kb3IgcHJlZml4ZXM6CitOb25lCitQcm9w
ZXJ0eSB2YWx1ZXMgcmVxdWlyaW5nIHZlbmRvciBwcmVmaXhlczoKK05vbmUKKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQorTGlzdCBvZiBmaWxlczoKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDEueG1sCisvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQv
MDAyLnhtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9t
L3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwMy54bWwKKy9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDQueG1sCisvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJhdmVyc2FsL3Vu
ZmluaXNoZWQvMDA1LnhtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwNi54bWwKKy9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5pc2hlZC8wMDcu
eG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vdHJh
dmVyc2FsL3VuZmluaXNoZWQvMDA4LnhtbAorL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZG9tL3RyYXZlcnNhbC91bmZpbmlzaGVkLzAwOS54bWwKKy9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS90cmF2ZXJzYWwvdW5maW5p
c2hlZC8wMTAueG1sCisvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9kb20vdHJhdmVyc2FsL3VuZmluaXNoZWQvVE9ETwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVu
dHMvRXZlbnQtZGlzcGF0Y2gtcmVkaXNwYXRjaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50
cy9FdmVudC1kaXNwYXRjaC1yZWRpc3BhdGNoLWV4cGVjdGVkLnR4dAppbmRleCA5YWI4OWFlZGQz
MWMxZDc5NGVhZWIyMzU1ZjZhZjYwOTIxNTM3YWY1Li45Zjc2NTQ2MjM3MDVlNTg3MDI4N2FjMjli
MDlkMzQ2OGJjOGRjNjRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2sy
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRj
aC1yZWRpc3BhdGNoLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mt
d2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNw
YXRjaC1yZWRpc3BhdGNoLWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIGNsaWNrIG1lIQog
CiBQQVNTIFJlZGlzcGF0Y2hpbmcgRE9NQ29udGVudExvYWRlZCBldmVudCBhZnRlciBiZWluZyBk
aXNwYXRjaGVkCi1GQUlMIFJlZGlzcGF0Y2hpbmcgbW91c2V1cCBldmVudCB3aG9zZSBkZWZhdWx0
IGFjdGlvbiBkaXNwYXRjaGVzIGEgY2xpY2sgZXZlbnQgYXNzZXJ0X3RydWU6IG1vdXNldXAgYW5k
IGNsaWNrIGV2ZW50cyBzaG91bGQndmUgYmVlbiBmaXJlZCBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorRkFJTCBSZWRpc3BhdGNoaW5nIG1vdXNldXAgZXZlbnQgd2hvc2UgZGVmYXVsdCBhY3Rpb24g
ZGlzcGF0Y2hlcyBhIGNsaWNrIGV2ZW50IGFzc2VydF9ub3RfZXF1YWxzOiBtb3VzZXVwIGFuZCBj
bGljayBldmVudHMgc2hvdWxkJ3ZlIGJlZW4gZmlyZWQgZ290IGRpc2FsbG93ZWQgdmFsdWUgdW5k
ZWZpbmVkCiBQQVNTIFJlZGlzcGF0Y2hpbmcgZXZlbnQgd2hpY2ggaXMgYmVpbmcgZGlzcGF0Y2hl
ZAogUEFTUyBTeW50aGVzaXppbmcgY2xpY2sgb24gYnV0dG9uLi4uCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>