<?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>156453</bug_id>
          
          <creation_ts>2016-04-10 13:44:00 -0700</creation_ts>
          <short_desc>DOMTokenList.contains() should not throw</short_desc>
          <delta_ts>2016-05-10 23:16:24 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Bindings</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>https://github.com/whatwg/dom/commit/6d3076e3cbcba662489b272a718bc6b8c0082a74</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1182552</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-04-10 13:44:00 -0700</bug_when>
    <thetext>DOMTokenList.contains() should not throw if the input token is invalid:
https://github.com/whatwg/dom/commit/6d3076e3cbcba662489b272a718bc6b8c0082a74</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1182554</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-04-10 14:07:12 -0700</bug_when>
    <thetext>First updating web-platform-tests via:
https://github.com/w3c/web-platform-tests/pull/2809</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1182555</commentid>
    <comment_count>2</comment_count>
      <attachid>276107</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-04-10 14:12:50 -0700</bug_when>
    <thetext>Created attachment 276107
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1182711</commentid>
    <comment_count>3</comment_count>
      <attachid>276107</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-04-11 09:46:52 -0700</bug_when>
    <thetext>Comment on attachment 276107
Patch

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

&gt; LayoutTests/imported/w3c/ChangeLog:8
&gt; +        Re-sync dom/nodes/Element-classlist.html with upstream.

Could you add the git hash to which you&apos;re synced?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1182714</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-04-11 09:50:39 -0700</bug_when>
    <thetext>Committed r199296: &lt;http://trac.webkit.org/changeset/199296&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>276107</attachid>
            <date>2016-04-10 14:12:50 -0700</date>
            <delta_ts>2016-05-10 23:16:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-156453-20160410141257.patch</filename>
            <type>text/plain</type>
            <size>25094</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk5Mjc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzIxNTIyNjE0NGRiYTlk
ZjExZWUyMDEyN2U1ZGE5M2JjMGRiODg3MC4uNDg5MWNjMzVjYWYwMGM1MWY4ZjY5Yzg1OTdmYjI3
NDVhM2MzNzNmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE2LTA0LTEwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgRE9NVG9rZW5MaXN0LmNvbnRh
aW5zKCkgc2hvdWxkIG5vdCB0aHJvdworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTU2NDUzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgRE9NVG9rZW5MaXN0LmNvbnRhaW5zKCkgc2hvdWxkIG5vdCB0aHJvdyBp
ZiB0aGUgaW5wdXQgdG9rZW4gaXMgaW52YWxpZDoKKyAgICAgICAgaHR0cHM6Ly9naXRodWIuY29t
L3doYXR3Zy9kb20vY29tbWl0LzZkMzA3NmUzY2JjYmE2NjI0ODliMjcyYTcxOGJjNmI4YzAwODJh
NzQKKworICAgICAgICBXZSBub3cgcmV0dXJuIGZhbHNlIGluIHN1Y2ggY2FzZXMsIGluc3RlYWQg
b2YgdGhyb3dpbmcsIHdoaWNoIHNob3VsZCBiZQorICAgICAgICBzYWZlIHdpdGggcmVnYXJkcyB0
byBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYWxyZWFk
eSBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogaHRtbC9ET01Ub2tlbkxp
c3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NVG9rZW5MaXN0Ojpjb250YWlucyk6CisgICAg
ICAgICogaHRtbC9ET01Ub2tlbkxpc3QuaDoKKyAgICAgICAgKiBodG1sL0RPTVRva2VuTGlzdC5p
ZGw6CisKIDIwMTYtMDQtMDkgIEtvbnN0YW50aW4gVG9rYXJldiAgPGFubnVsZW5AeWFuZGV4LnJ1
PgogCiAgICAgICAgIEZpeGVkIGNvbXBpbGF0aW9uIG9mIEpQRUdJbWFnZURlY29kZXIgd2l0aCBs
aWJqcGVnIHY5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3Qu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuY3BwCmluZGV4IDQ3NDcwMmE0
MjIzMWY0YzU3MjEwODAyYzk1MDU4MDhhNTdhMWM4NzguLjFlNGYyMzY0OWJlMDYyMjZmOWQxNTMy
MTZmYjU1MTFjODViZjUxYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9r
ZW5MaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2VuTGlzdC5jcHAKQEAg
LTYyLDExICs2Miw4IEBAIGJvb2wgRE9NVG9rZW5MaXN0Ojp2YWxpZGF0ZVRva2Vucyhjb25zdCBT
dHJpbmcqIHRva2Vucywgc2l6ZV90IGxlbmd0aCwgRXhjZXB0aW9uCiAgICAgcmV0dXJuIHRydWU7
CiB9CiAKLWJvb2wgRE9NVG9rZW5MaXN0Ojpjb250YWlucyhjb25zdCBBdG9taWNTdHJpbmcmIHRv
a2VuLCBFeGNlcHRpb25Db2RlJiBlYykgY29uc3QKK2Jvb2wgRE9NVG9rZW5MaXN0Ojpjb250YWlu
cyhjb25zdCBBdG9taWNTdHJpbmcmIHRva2VuKSBjb25zdAogewotICAgIGlmICghdmFsaWRhdGVU
b2tlbih0b2tlbiwgZWMpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICByZXR1cm4gbV90
b2tlbnMuY29udGFpbnModG9rZW4pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0RPTVRva2VuTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaApp
bmRleCAzZDQ0NTVkZTBhNjhkYTg4MmI1OWY5NDI3OWYxNDdjNjAwNjYzMWMzLi4wNjU0MTlhYjhh
NjhkMzQ4MzRlMzgzZmZlODAyZjA4NWVmMzIyN2RmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0RPTVRva2VuTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5M
aXN0LmgKQEAgLTQ3LDcgKzQ3LDcgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIGxlbmd0aCgpIGNv
bnN0OwogICAgIGNvbnN0IEF0b21pY1N0cmluZyYgaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7
CiAKLSAgICBib29sIGNvbnRhaW5zKGNvbnN0IEF0b21pY1N0cmluZyYsIEV4Y2VwdGlvbkNvZGUm
KSBjb25zdDsKKyAgICBib29sIGNvbnRhaW5zKGNvbnN0IEF0b21pY1N0cmluZyYpIGNvbnN0Owog
ICAgIHZvaWQgYWRkKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgRXhjZXB0aW9uQ29kZSYpOwogICAg
IHZvaWQgYWRkKGNvbnN0IEF0b21pY1N0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lk
IHJlbW92ZShjb25zdCBWZWN0b3I8U3RyaW5nPiYsIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVG9rZW5MaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvRE9NVG9rZW5MaXN0LmlkbAppbmRleCBhZTQ0NmEzMDNhYzlmZDY2ZWZkYjhmMjZmMTgw
OTQxMzQ1NjE4OGJhLi5hMjczZDc4OWFlZWE3NjM3YjliYTAzMDk3YTY2ZGQwYzc2NjhmNTc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVRva2VuTGlzdC5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9ET01Ub2tlbkxpc3QuaWRsCkBAIC0yOSw3ICsyOSw3IEBACiBdIGlu
dGVyZmFjZSBET01Ub2tlbkxpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxlbmd0aDsKICAgICBnZXR0ZXIgRE9NU3RyaW5nPyBpdGVtKHVuc2lnbmVkIGxvbmcgaW5k
ZXgpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gY29udGFpbnMoRE9NU3RyaW5nIHRv
a2VuKTsKKyAgICBib29sZWFuIGNvbnRhaW5zKERPTVN0cmluZyB0b2tlbik7CiAgICAgW1JhaXNl
c0V4Y2VwdGlvbl0gdm9pZCBhZGQoRE9NU3RyaW5nLi4uIHRva2Vucyk7CiAgICAgW1JhaXNlc0V4
Y2VwdGlvbl0gdm9pZCByZW1vdmUoRE9NU3RyaW5nLi4uIHRva2Vucyk7CiAgICAgW1JhaXNlc0V4
Y2VwdGlvbiwgQ3VzdG9tXSBib29sZWFuIHRvZ2dsZShET01TdHJpbmcgdG9rZW4sIG9wdGlvbmFs
IGJvb2xlYW4gZm9yY2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGMwZTk1YWZhZDA5NDIyNzFiOTZiM2FkYzhiZDM1ZWFi
MDZkM2E0ZjQuLmQzYzE0YzBkYmNlNDllYzRjMDA2YjI2NmMyZjQzMmY2ZDRjMGI1NDYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyMyBAQAorMjAxNi0wNC0xMCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgorCisgICAgICAgIERPTVRva2VuTGlzdC5jb250YWlucygpIHNob3VsZCBub3QgdGhyb3cK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NjQ1Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSBl
eGlzdGluZyBsYXlvdXQgdGVzdHMgbm93IHRoYXQgRE9NVG9rZW5MaXN0LmNvbnRhaW5zKCkgbm8g
bG9uZ2VyCisgICAgICAgIHRocm93cyB3aGVuIGNhbGxlZCB3aXRoIGFuIGludmFsaWQgdG9rZW4u
CisKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MRWxlbWVudC9jbGFzcy1saXN0LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MRWxlbWVudC9jbGFzcy1saXN0LXF1aXJrcy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL2Ns
YXNzLWxpc3QuanM6CisgICAgICAgIChzaG91bGRUaHJvd0RPTUV4Y2VwdGlvbik6IERlbGV0ZWQu
CisgICAgICAgICogZmFzdC9kb20vSFRNTE91dHB1dEVsZW1lbnQvZG9tLXNldHRhYmxlLXRva2Vu
LWxpc3QtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxPdXRwdXRFbGVtZW50
L3NjcmlwdC10ZXN0cy9kb20tc2V0dGFibGUtdG9rZW4tbGlzdC5qczoKKyAgICAgICAgKHNob3Vs
ZFRocm93RE9NRXhjZXB0aW9uKTogRGVsZXRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9yZWwtbGlz
dC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vcmVsLWxpc3QuaHRtbDoKKwogMjAx
Ni0wNC0wOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE5OTI2OC4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCmluZGV4IGFhNGYwM2I3NjRjYmI4ZmM5YTQ0YTc2NjhlNzEyMGUwYzdlZDM3YjMuLjU3
Y2M0YzE2OGU0NzYxZWI1NGYyYjM3N2RhNTIyNWE2ZWMyMzgzOGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE2LTA0LTEwICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgRE9NVG9rZW5MaXN0LmNvbnRhaW5zKCkgc2hv
dWxkIG5vdCB0aHJvdworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTU2NDUzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmUtc3luYyBkb20vbm9kZXMvRWxlbWVudC1jbGFzc2xpc3QuaHRtbCB3aXRoIHVwc3Ry
ZWFtLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LWNs
YXNzbGlzdC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9u
b2Rlcy9FbGVtZW50LWNsYXNzbGlzdC5odG1sOgorCiAyMDE2LTA0LTA4ICBZb3Vlbm4gRmFibGV0
ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CiAKICAgICAgICAgVGVzdGhhcm5lc3MtYmFz
ZWQgdGVzdHMgdGhhdCB0aW1lIG91dCBzaG91bGQgYmUgYWJsZSB0byBwcm9kdWNlIGRldGFpbGVk
IG91dHB1dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvY2xh
c3MtbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9j
bGFzcy1saXN0LWV4cGVjdGVkLnR4dAppbmRleCBjZTkyNDY5MzBjNWU3MTNiY2NkNzA4NjNjNDBj
N2NlZGNhOTMzYTVhLi44NGY0ZjViMWMyNGVkYTU2MTAxOTM4MGU1ZjUxMDhhNzRmNGU5YWU3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9jbGFzcy1saXN0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9jbGFzcy1s
aXN0LWV4cGVjdGVkLnR4dApAQCAtNDAsOCArNDAsOCBAQCBQQVNTIGVsZW1lbnQuY2xhc3NOYW1l
IGlzICJ4IHkiCiBQQVNTIGVsZW1lbnQuY2xhc3NOYW1lIGlzICJ4IHkiCiBQQVNTIGVsZW1lbnQu
Y2xhc3NOYW1lIGlzICJ5IgogVGVzdCBpbnZhbGlkIHRva2VucwotUEFTUyBlbGVtZW50LmNsYXNz
TGlzdC5jb250YWlucygnJykgdGhyZXcgZXhwZWN0ZWQgRE9NRXhjZXB0aW9uIHdpdGggY29kZSAx
MgotUEFTUyBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygneCB5JykgdGhyZXcgZXhwZWN0ZWQg
RE9NRXhjZXB0aW9uIHdpdGggY29kZSA1CitQQVNTIGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5z
KCcnKSBpcyBmYWxzZQorUEFTUyBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygneCB5JykgaXMg
ZmFsc2UKIFBBU1MgZWxlbWVudC5jbGFzc0xpc3QuYWRkKCcnKSB0aHJldyBleHBlY3RlZCBET01F
eGNlcHRpb24gd2l0aCBjb2RlIDEyCiBQQVNTIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgneCB5Jykg
dGhyZXcgZXhwZWN0ZWQgRE9NRXhjZXB0aW9uIHdpdGggY29kZSA1CiBQQVNTIGVsZW1lbnQuY2xh
c3NMaXN0LnJlbW92ZSgnJykgdGhyZXcgZXhwZWN0ZWQgRE9NRXhjZXB0aW9uIHdpdGggY29kZSAx
MgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvY2xhc3MtbGlz
dC1xdWlya3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQv
Y2xhc3MtbGlzdC1xdWlya3MtZXhwZWN0ZWQudHh0CmluZGV4IGNlOTI0NjkzMGM1ZTcxM2JjY2Q3
MDg2M2M0MGM3Y2VkY2E5MzNhNWEuLjg0ZjRmNWIxYzI0ZWRhNTYxMDE5MzgwZTVmNTEwOGE3NGY0
ZTlhZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxFbGVtZW50L2NsYXNz
LWxpc3QtcXVpcmtzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1M
RWxlbWVudC9jbGFzcy1saXN0LXF1aXJrcy1leHBlY3RlZC50eHQKQEAgLTQwLDggKzQwLDggQEAg
UEFTUyBlbGVtZW50LmNsYXNzTmFtZSBpcyAieCB5IgogUEFTUyBlbGVtZW50LmNsYXNzTmFtZSBp
cyAieCB5IgogUEFTUyBlbGVtZW50LmNsYXNzTmFtZSBpcyAieSIKIFRlc3QgaW52YWxpZCB0b2tl
bnMKLVBBU1MgZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJycpIHRocmV3IGV4cGVjdGVkIERP
TUV4Y2VwdGlvbiB3aXRoIGNvZGUgMTIKLVBBU1MgZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMo
J3ggeScpIHRocmV3IGV4cGVjdGVkIERPTUV4Y2VwdGlvbiB3aXRoIGNvZGUgNQorUEFTUyBlbGVt
ZW50LmNsYXNzTGlzdC5jb250YWlucygnJykgaXMgZmFsc2UKK1BBU1MgZWxlbWVudC5jbGFzc0xp
c3QuY29udGFpbnMoJ3ggeScpIGlzIGZhbHNlCiBQQVNTIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgn
JykgdGhyZXcgZXhwZWN0ZWQgRE9NRXhjZXB0aW9uIHdpdGggY29kZSAxMgogUEFTUyBlbGVtZW50
LmNsYXNzTGlzdC5hZGQoJ3ggeScpIHRocmV3IGV4cGVjdGVkIERPTUV4Y2VwdGlvbiB3aXRoIGNv
ZGUgNQogUEFTUyBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJycpIHRocmV3IGV4cGVjdGVkIERP
TUV4Y2VwdGlvbiB3aXRoIGNvZGUgMTIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L0hUTUxFbGVtZW50L3NjcmlwdC10ZXN0cy9jbGFzcy1saXN0LmpzIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL2NsYXNzLWxpc3QuanMKaW5kZXggNjU2YjY2
NmJkYWRjNTRhMjk3YzBjNzA3Mjg5M2E4MzlhZWJiMzZmMy4uNTM2M2ZkM2Q0ZmIzMjJiZDIyODk5
YTQ5OTdiYjgxZGU2ZjM0M2U1NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEVsZW1lbnQvc2NyaXB0LXRlc3RzL2NsYXNzLWxpc3QuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL2NsYXNzLWxpc3QuanMKQEAgLTE0OSwxNCAr
MTQ5LDEwIEBAIGZ1bmN0aW9uIHNob3VsZFRocm93RE9NRXhjZXB0aW9uKGYsIGVjKQogfQogCiBj
cmVhdGVFbGVtZW50KCd4Jyk7Ci1zaG91bGRUaHJvd0RPTUV4Y2VwdGlvbihmdW5jdGlvbigpIHsK
LSAgICBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnJyk7Ci19LCBET01FeGNlcHRpb24uU1lO
VEFYX0VSUik7CitzaG91bGRCZUZhbHNlKCJlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnJyki
KTsKIAogY3JlYXRlRWxlbWVudCgneCB5Jyk7Ci1zaG91bGRUaHJvd0RPTUV4Y2VwdGlvbihmdW5j
dGlvbigpIHsKLSAgICBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygneCB5Jyk7Ci19LCBET01F
eGNlcHRpb24uSU5WQUxJRF9DSEFSQUNURVJfRVJSKTsKK3Nob3VsZEJlRmFsc2UoImVsZW1lbnQu
Y2xhc3NMaXN0LmNvbnRhaW5zKCd4IHknKSIpOwogCiBjcmVhdGVFbGVtZW50KCcnKTsKIHNob3Vs
ZFRocm93RE9NRXhjZXB0aW9uKGZ1bmN0aW9uKCkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTE91dHB1dEVsZW1lbnQvZG9tLXNldHRhYmxlLXRva2VuLWxpc3QtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTE91dHB1dEVsZW1lbnQvZG9tLXNldHRh
YmxlLXRva2VuLWxpc3QtZXhwZWN0ZWQudHh0CmluZGV4IDllN2VhOTBkMzY0NzE5N2ZlNjc5NDIx
YWFkODJhYmZjZDI3NmZlM2MuLmIwNTllYjg0MDkzMzlkNjZjYmEyNzYyZGRmOGYyYjRlMGI2YTY5
NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxPdXRwdXRFbGVtZW50L2Rv
bS1zZXR0YWJsZS10b2tlbi1saXN0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MT3V0cHV0RWxlbWVudC9kb20tc2V0dGFibGUtdG9rZW4tbGlzdC1leHBlY3RlZC50
eHQKQEAgLTMyLDggKzMyLDggQEAgUEFTUyBlbGVtZW50Lmh0bWxGb3IudG9TdHJpbmcoKSBpcyAi
eCB5IgogUEFTUyBlbGVtZW50Lmh0bWxGb3IudG9TdHJpbmcoKSBpcyAieCB5IgogUEFTUyBlbGVt
ZW50Lmh0bWxGb3IudG9TdHJpbmcoKSBpcyAieSIKIC0gVGVzdCBpbnZhbGlkIHRva2VucwotUEFT
UyBlbGVtZW50Lmh0bWxGb3IuY29udGFpbnMoJycpIHRocmV3IGV4cGVjdGVkIERPTUV4Y2VwdGlv
biB3aXRoIGNvZGUgMTIKLVBBU1MgZWxlbWVudC5odG1sRm9yLmNvbnRhaW5zKCd4IHknKSB0aHJl
dyBleHBlY3RlZCBET01FeGNlcHRpb24gd2l0aCBjb2RlIDUKK1BBU1MgZWxlbWVudC5odG1sRm9y
LmNvbnRhaW5zKCcnKSBpcyBmYWxzZQorUEFTUyBlbGVtZW50Lmh0bWxGb3IuY29udGFpbnMoJ3gg
eScpIGlzIGZhbHNlCiBQQVNTIGVsZW1lbnQuaHRtbEZvci5hZGQoJycpIHRocmV3IGV4cGVjdGVk
IERPTUV4Y2VwdGlvbiB3aXRoIGNvZGUgMTIKIFBBU1MgZWxlbWVudC5odG1sRm9yLmFkZCgneCB5
JykgdGhyZXcgZXhwZWN0ZWQgRE9NRXhjZXB0aW9uIHdpdGggY29kZSA1CiBQQVNTIGVsZW1lbnQu
aHRtbEZvci5yZW1vdmUoJycpIHRocmV3IGV4cGVjdGVkIERPTUV4Y2VwdGlvbiB3aXRoIGNvZGUg
MTIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxPdXRwdXRFbGVtZW50L3Nj
cmlwdC10ZXN0cy9kb20tc2V0dGFibGUtdG9rZW4tbGlzdC5qcyBiL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxPdXRwdXRFbGVtZW50L3NjcmlwdC10ZXN0cy9kb20tc2V0dGFibGUtdG9rZW4tbGlz
dC5qcwppbmRleCBmZDBmOTg4YTg0ZGFhMmY0YzgwZTc5NTE5NjJlODJmNTlmNGY3NzliLi5kZTE4
NWJmMDRkNTI0ZWY0NjA4Y2EzN2FmNGVlMzVkZmI0YTQ5NTA3IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MT3V0cHV0RWxlbWVudC9zY3JpcHQtdGVzdHMvZG9tLXNldHRhYmxl
LXRva2VuLWxpc3QuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTE91dHB1dEVsZW1l
bnQvc2NyaXB0LXRlc3RzL2RvbS1zZXR0YWJsZS10b2tlbi1saXN0LmpzCkBAIC0xMzksMTQgKzEz
OSwxMCBAQCBmdW5jdGlvbiBzaG91bGRUaHJvd0RPTUV4Y2VwdGlvbihmLCBlYykKIH0KIAogY3Jl
YXRlRWxlbWVudCgneCcpOwotc2hvdWxkVGhyb3dET01FeGNlcHRpb24oZnVuY3Rpb24oKSB7Ci0g
ICAgZWxlbWVudC5odG1sRm9yLmNvbnRhaW5zKCcnKTsKLX0sIERPTUV4Y2VwdGlvbi5TWU5UQVhf
RVJSKTsKK3Nob3VsZEJlRmFsc2UoImVsZW1lbnQuaHRtbEZvci5jb250YWlucygnJykiKTsKIAog
Y3JlYXRlRWxlbWVudCgneCB5Jyk7Ci1zaG91bGRUaHJvd0RPTUV4Y2VwdGlvbihmdW5jdGlvbigp
IHsKLSAgICBlbGVtZW50Lmh0bWxGb3IuY29udGFpbnMoJ3ggeScpOwotfSwgRE9NRXhjZXB0aW9u
LklOVkFMSURfQ0hBUkFDVEVSX0VSUik7CitzaG91bGRCZUZhbHNlKCJlbGVtZW50Lmh0bWxGb3Iu
Y29udGFpbnMoJ3ggeScpIik7CiAKIGNyZWF0ZUVsZW1lbnQoJycpOwogc2hvdWxkVGhyb3dET01F
eGNlcHRpb24oZnVuY3Rpb24oKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9y
ZWwtbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZWwtbGlzdC1leHBl
Y3RlZC50eHQKaW5kZXggOTNjNTVlYWJjMWQzZjE2NDc3MjI4MWEzYjFhZTE0ZDE0NTJkMWRiMi4u
NmYzYTlkOTY2YjM0MDE0N2RkNTUwZjVlMzQ5NTdmNzc2MDYwM2VhZiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vcmVsLWxpc3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3JlbC1saXN0LWV4cGVjdGVkLnR4dApAQCAtNjEsOCArNjEsOCBAQCBQQVNTIGVs
ZW1lbnQucmVsIGlzICJ4IHkiCiBQQVNTIGVsZW1lbnQucmVsIGlzICJ4IHkiCiBQQVNTIGVsZW1l
bnQucmVsIGlzICJ5IgogVGVzdCBpbnZhbGlkIHRva2VucwotUEFTUyBlbGVtZW50LnJlbExpc3Qu
Y29udGFpbnMoIiIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU3ludGF4RXJyb3I6IERPTSBFeGNl
cHRpb24gMTIuCi1QQVNTIGVsZW1lbnQucmVsTGlzdC5jb250YWlucygieCB5IikgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3I6IERPTSBFeGNlcHRpb24gNS4KK1BB
U1MgZWxlbWVudC5yZWxMaXN0LmNvbnRhaW5zKCIiKSBpcyBmYWxzZQorUEFTUyBlbGVtZW50LnJl
bExpc3QuY29udGFpbnMoInggeSIpIGlzIGZhbHNlCiBQQVNTIGVsZW1lbnQucmVsTGlzdC5hZGQo
IiIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU3ludGF4RXJyb3I6IERPTSBFeGNlcHRpb24gMTIu
CiBQQVNTIGVsZW1lbnQucmVsTGlzdC5hZGQoInggeSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
SW52YWxpZENoYXJhY3RlckVycm9yOiBET00gRXhjZXB0aW9uIDUuCiBQQVNTIGVsZW1lbnQucmVs
TGlzdC5yZW1vdmUoIiIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU3ludGF4RXJyb3I6IERPTSBF
eGNlcHRpb24gMTIuCkBAIC0xODQsOCArMTg0LDggQEAgUEFTUyBlbGVtZW50LnJlbCBpcyAieCB5
IgogUEFTUyBlbGVtZW50LnJlbCBpcyAieCB5IgogUEFTUyBlbGVtZW50LnJlbCBpcyAieSIKIFRl
c3QgaW52YWxpZCB0b2tlbnMKLVBBU1MgZWxlbWVudC5yZWxMaXN0LmNvbnRhaW5zKCIiKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFN5bnRheEVycm9yOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBl
bGVtZW50LnJlbExpc3QuY29udGFpbnMoInggeSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW52
YWxpZENoYXJhY3RlckVycm9yOiBET00gRXhjZXB0aW9uIDUuCitQQVNTIGVsZW1lbnQucmVsTGlz
dC5jb250YWlucygiIikgaXMgZmFsc2UKK1BBU1MgZWxlbWVudC5yZWxMaXN0LmNvbnRhaW5zKCJ4
IHkiKSBpcyBmYWxzZQogUEFTUyBlbGVtZW50LnJlbExpc3QuYWRkKCIiKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IFN5bnRheEVycm9yOiBET00gRXhjZXB0aW9uIDEyLgogUEFTUyBlbGVtZW50LnJl
bExpc3QuYWRkKCJ4IHkiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJF
cnJvcjogRE9NIEV4Y2VwdGlvbiA1LgogUEFTUyBlbGVtZW50LnJlbExpc3QucmVtb3ZlKCIiKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFN5bnRheEVycm9yOiBET00gRXhjZXB0aW9uIDEyLgpAQCAt
MzA3LDggKzMwNyw4IEBAIFBBU1MgZWxlbWVudC5yZWwgaXMgInggeSIKIFBBU1MgZWxlbWVudC5y
ZWwgaXMgInggeSIKIFBBU1MgZWxlbWVudC5yZWwgaXMgInkiCiBUZXN0IGludmFsaWQgdG9rZW5z
Ci1QQVNTIGVsZW1lbnQucmVsTGlzdC5jb250YWlucygiIikgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBTeW50YXhFcnJvcjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgZWxlbWVudC5yZWxMaXN0LmNv
bnRhaW5zKCJ4IHkiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJv
cjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBlbGVtZW50LnJlbExpc3QuY29udGFpbnMoIiIpIGlz
IGZhbHNlCitQQVNTIGVsZW1lbnQucmVsTGlzdC5jb250YWlucygieCB5IikgaXMgZmFsc2UKIFBB
U1MgZWxlbWVudC5yZWxMaXN0LmFkZCgiIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTeW50YXhF
cnJvcjogRE9NIEV4Y2VwdGlvbiAxMi4KIFBBU1MgZWxlbWVudC5yZWxMaXN0LmFkZCgieCB5Iikg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3I6IERPTSBFeGNlcHRp
b24gNS4KIFBBU1MgZWxlbWVudC5yZWxMaXN0LnJlbW92ZSgiIikgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBTeW50YXhFcnJvcjogRE9NIEV4Y2VwdGlvbiAxMi4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL3JlbC1saXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZWwtbGlz
dC5odG1sCmluZGV4IGMzOTBhZGQ5NDc2OGNhMmRkN2ExNzI0Mjg1NThmZWQ2MzA5NGU0MDYuLmE3
Y2VmYTQyNTRkYzY1ZjQwM2Y3ZWNmNTRkNmE2ODgxNGE4NGQ2NmUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3JlbC1saXN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
cmVsLWxpc3QuaHRtbApAQCAtMTQzLDEwICsxNDMsMTAgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAg
ZGVidWcoJ1Rlc3QgaW52YWxpZCB0b2tlbnMnKTsKIAogICAgIGNyZWF0ZUVsZW1lbnQoJ3gnKTsK
LSAgICBzaG91bGRUaHJvdygnZWxlbWVudC5yZWxMaXN0LmNvbnRhaW5zKCIiKScpOworICAgIHNo
b3VsZEJlRmFsc2UoJ2VsZW1lbnQucmVsTGlzdC5jb250YWlucygiIiknKTsKIAogICAgIGNyZWF0
ZUVsZW1lbnQoJ3ggeScpOwotICAgIHNob3VsZFRocm93KCdlbGVtZW50LnJlbExpc3QuY29udGFp
bnMoInggeSIpJyk7CisgICAgc2hvdWxkQmVGYWxzZSgnZWxlbWVudC5yZWxMaXN0LmNvbnRhaW5z
KCJ4IHkiKScpOwogCiAgICAgY3JlYXRlRWxlbWVudCgnJyk7CiAgICAgc2hvdWxkVGhyb3coJ2Vs
ZW1lbnQucmVsTGlzdC5hZGQoIiIpJyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LWNsYXNzbGlzdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Rv
bS9ub2Rlcy9FbGVtZW50LWNsYXNzbGlzdC1leHBlY3RlZC50eHQKaW5kZXggZDgzZWQxNjkzYTZj
MTJmMWU2MTU5MTk0MzY5OTBlNjgzZjJjOTU5ZC4uZjM2MDllMzBlOThkZDAyYmRkMDljMDJmMzE4
YWNmNDJlMzIxMGY4YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1jbGFzc2xpc3QtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVz
L0VsZW1lbnQtY2xhc3NsaXN0LWV4cGVjdGVkLnR4dApAQCAtMTQsMTQgKzE0LDE3IEBAIFBBU1Mg
Y2xhc3NMaXN0W2luZGV4XSBtdXN0IGJlIHVuZGVmaW5lZCBmb3Igb3V0LW9mLXJhbmdlIGluZGV4
CiBQQVNTIGNsYXNzTGlzdFtpbmRleF0gbXVzdCBiZSB1bmRlZmluZWQgZm9yIG5lZ2F0aXZlIGlu
ZGV4IAogUEFTUyBjbGFzc05hbWUgc2hvdWxkIGNvbnRhaW4gaW5pdGlhbCBtYXJrdXAgd2hpdGVz
cGFjZSAKIEZBSUwgY2xhc3NMaXN0IHNob3VsZCBjb250YWluIGluaXRpYWwgbWFya3VwIHdoaXRl
c3BhY2UgYXNzZXJ0X2VxdWFsczogaW1wbGljaXQgZXhwZWN0ZWQgIiAiIGJ1dCBnb3QgIiIKLVBB
U1MgLmNvbnRhaW5zKGVtcHR5X3N0cmluZykgbXVzdCB0aHJvdyBhIFNZTlRBWF9FUlIgCitQQVNT
IC5jb250YWlucyhlbXB0eV9zdHJpbmcpIG11c3QgcmV0dXJuIGZhbHNlIAogUEFTUyAuYWRkKGVt
cHR5X3N0cmluZykgbXVzdCB0aHJvdyBhIFNZTlRBWF9FUlIgCiBQQVNTIC5yZW1vdmUoZW1wdHlf
c3RyaW5nKSBtdXN0IHRocm93IGEgU1lOVEFYX0VSUiAKIFBBU1MgLnRvZ2dsZShlbXB0eV9zdHJp
bmcpIG11c3QgdGhyb3cgYSBTWU5UQVhfRVJSIAotUEFTUyAuY29udGFpbnMoc3RyaW5nX3dpdGhf
c3BhY2VzKSBtdXN0IHRocm93IGFuIElOVkFMSURfQ0hBUkFDVEVSX0VSUiAKK0ZBSUwgLnJlcGxh
Y2Ugd2l0aCBlbXB0eV9zdHJpbmcgbXVzdCB0aHJvdyBhIFNZTlRBWF9FUlIgYXNzZXJ0X3Rocm93
czogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xpc3QucmVwbGFjZSgnJywgJ2Zv
bycpOyB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogZWxlbS5jbGFzc0xpc3QucmVwbGFjZSBp
cyBub3QgYSBmdW5jdGlvbi4gKEluIC4uLiIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gU1lO
VEFYX0VSUjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQg
MTIKK1BBU1MgLmNvbnRhaW5zKHN0cmluZ193aXRoX3NwYWNlcykgbXVzdCByZXR1cm4gZmFsc2Ug
CiBQQVNTIC5hZGQoc3RyaW5nX3dpdGhfc3BhY2VzKSBtdXN0IHRocm93IGFuIElOVkFMSURfQ0hB
UkFDVEVSX0VSUiAKIFBBU1MgLnJlbW92ZShzdHJpbmdfd2l0aF9zcGFjZXMpIG11c3QgdGhyb3cg
YW4gSU5WQUxJRF9DSEFSQUNURVJfRVJSIAogUEFTUyAudG9nZ2xlKHN0cmluZ193aXRoX3NwYWNl
cykgbXVzdCB0aHJvdyBhbiBJTlZBTElEX0NIQVJBQ1RFUl9FUlIgCitGQUlMIC5yZXBsYWNlIHdp
dGggc3RyaW5nX3dpdGhfc3BhY2VzIG11c3QgdGhyb3cgYSBJTlZBTElEX0NIQVJBQ1RFUl9FUlIg
YXNzZXJ0X3Rocm93czogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xpc3QucmVw
bGFjZSgneicsICdhIGInKTsgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGVsZW0uY2xhc3NM
aXN0LnJlcGxhY2UgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAuLi4iIHRoYXQgaXMgbm90IGEgRE9N
RXhjZXB0aW9uIElOVkFMSURfQ0hBUkFDVEVSX0VSUjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFs
IHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgNQorRkFJTCAucmVwbGFjZSB3aXRoIGFuIGFscmVhZHkg
ZXhpc3RpbmcgdG9rZW4gZm9vLmNsYXNzTGlzdC5yZXBsYWNlIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Zvby5jbGFzc0xpc3QucmVwbGFjZSgndG9rZW4xJywgJ3Rva2VuMycpJywgJ2Zvby5jbGFz
c0xpc3QucmVwbGFjZScgaXMgdW5kZWZpbmVkKQogUEFTUyBjb21wdXRlZCBzdHlsZSBtdXN0IHVw
ZGF0ZSB3aGVuIHNldHRpbmcgLmNsYXNzTmFtZSAKIFBBU1MgY2xhc3NMaXN0LmNvbnRhaW5zIG11
c3QgdXBkYXRlIHdoZW4gLmNsYXNzTmFtZSBpcyBjaGFuZ2VkIAogUEFTUyBjbGFzc0xpc3QuY29u
dGFpbnMgbXVzdCBiZSBjYXNlIHNlbnNpdGl2ZSAKQEAgLTUxLDExICs1NCwyMCBAQCBQQVNTIGNs
YXNzTGlzdC50b2dnbGUgbXVzdCB0b2dnbGUgdG9rZW5zIGNhc2Utc2Vuc2l0aXZlbHkgd2hlbiBh
ZGRpbmcKIFBBU1MgY2xhc3NMaXN0LnRvZ2dsZSBtdXN0IG5vdCBicmVhayBjYXNlLXNlbnNpdGl2
ZSBDU1Mgc2VsZWN0b3IgbWF0Y2hpbmcgCiBQQVNTIGNsYXNzTGlzdC50b2dnbGUgbXVzdCBiZSBh
YmxlIHRvIHJlbW92ZSB0b2tlbnMgCiBQQVNTIGNsYXNzTGlzdC50b2dnbGUgbXVzdCBiZSBjYXNl
LXNlbnNpdGl2ZSB3aGVuIHJlbW92aW5nIHRva2VucyAKK0ZBSUwgY2xhc3NMaXN0LnJlcGxhY2Ug
cmVwbGFjZXMgYXJndW1lbnRzIHBhc3NlZCwgaWYgdGhleSBhcmUgcHJlc2VudC4gc2Vjb25kZWxl
bS5jbGFzc0xpc3QucmVwbGFjZSBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdzZWNvbmRlbGVtLmNs
YXNzTGlzdC5yZXBsYWNlKCdiYXInLCAnYmF6JyknLCAnc2Vjb25kZWxlbS5jbGFzc0xpc3QucmVw
bGFjZScgaXMgdW5kZWZpbmVkKQorRkFJTCBjbGFzc0xpc3QucmVwbGFjZSBtdXN0IHJlcGxhY2Ug
ZXhpc3RpbmcgdG9rZW5zIHNlY29uZGVsZW0uY2xhc3NMaXN0LnJlcGxhY2UgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnc2Vjb25kZWxlbS5jbGFzc0xpc3QucmVwbGFjZSgnZm9vJywgJ2JhcicpJywg
J3NlY29uZGVsZW0uY2xhc3NMaXN0LnJlcGxhY2UnIGlzIHVuZGVmaW5lZCkKK0ZBSUwgY2xhc3NM
aXN0LnJlcGxhY2UgbXVzdCBub3QgYnJlYWsgY2FzZS1zZW5zaXRpdmUgQ1NTIHNlbGVjdG9yIG1h
dGNoaW5nIGFzc2VydF9ub3RfZXF1YWxzOiBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiaXRhbGljIgor
RkFJTCBjbGFzc0xpc3QucmVwbGFjZSBtdXN0IHJlcGxhY2UgZHVwbGljYXRlZCB0b2tlbnMgc2Vj
b25kZWxlbS5jbGFzc0xpc3QucmVwbGFjZSBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdzZWNvbmRl
bGVtLmNsYXNzTGlzdC5yZXBsYWNlKCd0b2tlbjEnLCAndG9rZW4zJyknLCAnc2Vjb25kZWxlbS5j
bGFzc0xpc3QucmVwbGFjZScgaXMgdW5kZWZpbmVkKQorRkFJTCBjbGFzc0xpc3QucmVwbGFjZSBt
dXN0IGNvbGxhcHNlIHdoaXRlc3BhY2UgYXJvdW5kIHJlcGxhY2VkIHRva2VucyBzZWNvbmRlbGVt
LmNsYXNzTGlzdC5yZXBsYWNlIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ3NlY29uZGVsZW0uY2xh
c3NMaXN0LnJlcGxhY2UoJ3Rva2VuMicsICd0b2tlbjQnKScsICdzZWNvbmRlbGVtLmNsYXNzTGlz
dC5yZXBsYWNlJyBpcyB1bmRlZmluZWQpCitGQUlMIGNsYXNzTGlzdC5yZXBsYWNlIG11c3QgY29s
bGFwc2Ugd2hpdGVzcGFjZXMgYXJvdW5kIGVhY2ggdG9rZW4gc2Vjb25kZWxlbS5jbGFzc0xpc3Qu
cmVwbGFjZSBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdzZWNvbmRlbGVtLmNsYXNzTGlzdC5yZXBs
YWNlKCd0b2tlbjInLCAndG9rZW4zJyknLCAnc2Vjb25kZWxlbS5jbGFzc0xpc3QucmVwbGFjZScg
aXMgdW5kZWZpbmVkKQorRkFJTCBjbGFzc0xpc3QucmVwbGFjZSBtdXN0IGNvbGxhcHNlIHdoaXRl
c3BhY2VzIGFyb3VuZCBlYWNoIHRva2VuIGFuZCByZW1vdmUgZHVwbGljYXRlcyBzZWNvbmRlbGVt
LmNsYXNzTGlzdC5yZXBsYWNlIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ3NlY29uZGVsZW0uY2xh
c3NMaXN0LnJlcGxhY2UoJ3Rva2VuMicsICd0b2tlbjMnKScsICdzZWNvbmRlbGVtLmNsYXNzTGlz
dC5yZXBsYWNlJyBpcyB1bmRlZmluZWQpCitGQUlMIGNsYXNzTGlzdC5yZXBsYWNlIG11c3QgY29s
bGFwc2Ugd2hpdGVzcGFjZSB3aGVuIHJlcGxhY2luZyBkdXBsaWNhdGUgdG9rZW5zIHNlY29uZGVs
ZW0uY2xhc3NMaXN0LnJlcGxhY2UgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnc2Vjb25kZWxlbS5j
bGFzc0xpc3QucmVwbGFjZSgndG9rZW4xJywgJ3Rva2VuMycpJywgJ3NlY29uZGVsZW0uY2xhc3NM
aXN0LnJlcGxhY2UnIGlzIHVuZGVmaW5lZCkKIFBBU1MgQ1NTIGNsYXNzIHNlbGVjdG9ycyBtdXN0
IHN0b3AgbWF0Y2hpbmcgd2hlbiBhbGwgY2xhc3NlcyBoYXZlIGJlZW4gcmVtb3ZlZCAKIFBBU1Mg
Y2xhc3NOYW1lIG11c3QgYmUgZW1wdHkgd2hlbiBhbGwgY2xhc3NlcyBoYXZlIGJlZW4gcmVtb3Zl
ZCAKIFBBU1MgY2xhc3NMaXN0IG11c3Qgc3RyaW5naWZ5IHRvIGFuIGVtcHR5IHN0cmluZyB3aGVu
IGFsbCBjbGFzc2VzIGhhdmUgYmVlbiByZW1vdmVkIAogUEFTUyBjbGFzc0xpc3QuaXRlbSgwKSBt
dXN0IHJldHVybiBudWxsIHdoZW4gYWxsIGNsYXNzZXMgaGF2ZSBiZWVuIHJlbW92ZWQgCiBQQVNT
IGNsYXNzTGlzdFswXSBtdXN0IGJlIHVuZGVmaW5lZCB3aGVuIGFsbCBjbGFzc2VzIGhhdmUgYmVl
biByZW1vdmVkIAorUEFTUyBJbnZva2luZyBhZGQgb3IgcmVtb3ZlIHNob3VsZCBzZXQgdGhlIGNs
YXNzIGF0dHJpYnV0ZSAKIFBBU1MgY2xhc3NMaXN0LmFkZCBzaG91bGQgdHJlYXQgIiAiIGFzIGEg
c3BhY2UgCiBQQVNTIGNsYXNzTGlzdC5hZGQgc2hvdWxkIHRyZWF0IFx0IGFzIGEgc3BhY2UgCiBQ
QVNTIGNsYXNzTGlzdC5hZGQgc2hvdWxkIHRyZWF0IFxyIGFzIGEgc3BhY2UgCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9F
bGVtZW50LWNsYXNzbGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9kb20vbm9kZXMvRWxlbWVudC1jbGFzc2xpc3QuaHRtbAppbmRleCA5MjQxMjQy
NTEwMzgyNmQyNzc0OTcxMDAyMDdhZjI1N2Y0NDg1NzllLi5kM2Q2ZGViMDQwY2VmNDk5ZjE4MWUx
M2RhNjQyM2MxNDMzMDAyMzRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ub2Rlcy9FbGVtZW50LWNsYXNzbGlzdC5odG1sCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL25vZGVzL0Vs
ZW1lbnQtY2xhc3NsaXN0Lmh0bWwKQEAgLTY2LDggKzY2LDggQEAgdGVzdChmdW5jdGlvbiAoKSB7
CiAgIGFzc2VydF9lcXVhbHMoIGVsZW0uY2xhc3NMaXN0LnRvU3RyaW5nKCksICcgJywgJ2V4cGxp
Y2l0JyApOwogfSwgJ2NsYXNzTGlzdCBzaG91bGQgY29udGFpbiBpbml0aWFsIG1hcmt1cCB3aGl0
ZXNwYWNlJyk7CiB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgYXNzZXJ0X3Rocm93cyggJ1NZTlRBWF9F
UlInLCBmdW5jdGlvbiAoKSB7IGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKCcnKTsgfSApOwotfSwg
Jy5jb250YWlucyhlbXB0eV9zdHJpbmcpIG11c3QgdGhyb3cgYSBTWU5UQVhfRVJSJyk7CisgIGFz
c2VydF9mYWxzZSggZWxlbS5jbGFzc0xpc3QuY29udGFpbnMoJycpICk7Cit9LCAnLmNvbnRhaW5z
KGVtcHR5X3N0cmluZykgbXVzdCByZXR1cm4gZmFsc2UnKTsKIHRlc3QoZnVuY3Rpb24gKCkgewog
ICBhc3NlcnRfdGhyb3dzKCAnU1lOVEFYX0VSUicsIGZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xp
c3QuYWRkKCcnKTsgfSApOwogfSwgJy5hZGQoZW1wdHlfc3RyaW5nKSBtdXN0IHRocm93IGEgU1lO
VEFYX0VSUicpOwpAQCAtNzgsOCArNzgsMTUgQEAgdGVzdChmdW5jdGlvbiAoKSB7CiAgIGFzc2Vy
dF90aHJvd3MoICdTWU5UQVhfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC50b2dn
bGUoJycpOyB9ICk7CiB9LCAnLnRvZ2dsZShlbXB0eV9zdHJpbmcpIG11c3QgdGhyb3cgYSBTWU5U
QVhfRVJSJyk7CiB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgYXNzZXJ0X3Rocm93cyggJ0lOVkFMSURf
Q0hBUkFDVEVSX0VSUicsIGZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xpc3QuY29udGFpbnMoJ2Eg
YicpOyB9ICk7Ci19LCAnLmNvbnRhaW5zKHN0cmluZ193aXRoX3NwYWNlcykgbXVzdCB0aHJvdyBh
biBJTlZBTElEX0NIQVJBQ1RFUl9FUlInKTsKKyAgYXNzZXJ0X3Rocm93cyggJ1NZTlRBWF9FUlIn
LCBmdW5jdGlvbiAoKSB7IGVsZW0uY2xhc3NMaXN0LnJlcGxhY2UoJycsICdmb28nKTsgfSApOwor
ICBhc3NlcnRfdGhyb3dzKCAnU1lOVEFYX0VSUicsIGZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xp
c3QucmVwbGFjZSgnZm9vJywgJycpOyB9ICk7CisgIGFzc2VydF90aHJvd3MoICdTWU5UQVhfRVJS
JywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC5yZXBsYWNlKCcnLCAnZm9vIGJhcicpOyB9
ICk7CisgIGFzc2VydF90aHJvd3MoICdTWU5UQVhfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNs
YXNzTGlzdC5yZXBsYWNlKCdmb28gYmFyJywgJycpOyB9ICk7CisgIGFzc2VydF90aHJvd3MoICdT
WU5UQVhfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC5yZXBsYWNlKCcnLCAnJyk7
IH0gKTsKK30sICcucmVwbGFjZSB3aXRoIGVtcHR5X3N0cmluZyBtdXN0IHRocm93IGEgU1lOVEFY
X0VSUicpOwordGVzdChmdW5jdGlvbiAoKSB7CisgIGFzc2VydF9mYWxzZSggZWxlbS5jbGFzc0xp
c3QuY29udGFpbnMoJ2EgYicpICk7Cit9LCAnLmNvbnRhaW5zKHN0cmluZ193aXRoX3NwYWNlcykg
bXVzdCByZXR1cm4gZmFsc2UnKTsKIHRlc3QoZnVuY3Rpb24gKCkgewogICBhc3NlcnRfdGhyb3dz
KCAnSU5WQUxJRF9DSEFSQUNURVJfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC5h
ZGQoJ2EgYicpOyB9ICk7CiB9LCAnLmFkZChzdHJpbmdfd2l0aF9zcGFjZXMpIG11c3QgdGhyb3cg
YW4gSU5WQUxJRF9DSEFSQUNURVJfRVJSJyk7CkBAIC04OSw2ICs5NiwyMCBAQCB0ZXN0KGZ1bmN0
aW9uICgpIHsKIHRlc3QoZnVuY3Rpb24gKCkgewogICBhc3NlcnRfdGhyb3dzKCAnSU5WQUxJRF9D
SEFSQUNURVJfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC50b2dnbGUoJ2EgYicp
OyB9ICk7CiB9LCAnLnRvZ2dsZShzdHJpbmdfd2l0aF9zcGFjZXMpIG11c3QgdGhyb3cgYW4gSU5W
QUxJRF9DSEFSQUNURVJfRVJSJyk7Cit0ZXN0KGZ1bmN0aW9uICgpIHsKKyAgYXNzZXJ0X3Rocm93
cyggJ0lOVkFMSURfQ0hBUkFDVEVSX0VSUicsIGZ1bmN0aW9uICgpIHsgZWxlbS5jbGFzc0xpc3Qu
cmVwbGFjZSgneicsICdhIGInKTsgfSApOworICBhc3NlcnRfdGhyb3dzKCAnSU5WQUxJRF9DSEFS
QUNURVJfRVJSJywgZnVuY3Rpb24gKCkgeyBlbGVtLmNsYXNzTGlzdC5yZXBsYWNlKCdhIGInLCAn
eicpOyB9ICk7CisgIGFzc2VydF90aHJvd3MoICdJTlZBTElEX0NIQVJBQ1RFUl9FUlInLCBmdW5j
dGlvbiAoKSB7IGVsZW0uY2xhc3NMaXN0LnJlcGxhY2UoJ2EgYicsICdiIGMnKTsgfSApOworfSwg
Jy5yZXBsYWNlIHdpdGggc3RyaW5nX3dpdGhfc3BhY2VzIG11c3QgdGhyb3cgYSBJTlZBTElEX0NI
QVJBQ1RFUl9FUlInKTsKK3Rlc3QoZnVuY3Rpb24gKCkgeworICB2YXIgZm9vID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgIGZvby5jbGFzc05hbWUgPSAndG9rZW4xIHRva2VuMiB0
b2tlbjMnCisgIGZvby5jbGFzc0xpc3QucmVwbGFjZSgndG9rZW4xJywgJ3Rva2VuMycpOworICBh
c3NlcnRfZXF1YWxzKCBmb28uY2xhc3NMaXN0Lmxlbmd0aCwgMiApOworICBhc3NlcnRfZmFsc2Uo
IGZvby5jbGFzc0xpc3QuY29udGFpbnMoJ3Rva2VuMScpICk7CisgIGFzc2VydF90cnVlKCBmb28u
Y2xhc3NMaXN0LmNvbnRhaW5zKCd0b2tlbjInKSApOworICBhc3NlcnRfdHJ1ZSggZm9vLmNsYXNz
TGlzdC5jb250YWlucygndG9rZW4zJykgKTsKK30sICcucmVwbGFjZSB3aXRoIGFuIGFscmVhZHkg
ZXhpc3RpbmcgdG9rZW4nKQogZWxlbS5jbGFzc05hbWUgPSAnZm9vJzsKIHRlc3QoZnVuY3Rpb24g
KCkgewogICBhc3NlcnRfZXF1YWxzKCBnZXRDb21wdXRlZFN0eWxlKGVsZW0sbnVsbCkuZm9udFN0
eWxlLCAnaXRhbGljJywgJ2NyaXRpY2FsIHRlc3Q7IHJlcXVpcmVkIGJ5IHRoZSB0ZXN0c3VpdGUn
ICk7CkBAIC0yMjUsNiArMjQ2LDU4IEBAIHRlc3QoZnVuY3Rpb24gKCkgewogICBhc3NlcnRfZmFs
c2UoIGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKCdGT08nKSApOwogfSwgJ2NsYXNzTGlzdC50b2dn
bGUgbXVzdCBiZSBjYXNlLXNlbnNpdGl2ZSB3aGVuIHJlbW92aW5nIHRva2VucycpOwogdGVzdChm
dW5jdGlvbiAoKSB7CisgIHNlY29uZGVsZW0uY2xhc3NOYW1lID0gJ2ZvbyBGT08nCisgIHNlY29u
ZGVsZW0uY2xhc3NMaXN0LnJlcGxhY2UoJ2JhcicsICdiYXonKTsKKyAgYXNzZXJ0X2VxdWFscygg
c2Vjb25kZWxlbS5jbGFzc0xpc3QubGVuZ3RoLCAyICk7CisgIGFzc2VydF9lcXVhbHMoIHNlY29u
ZGVsZW0uY2xhc3NMaXN0ICsgJycsICdmb28gRk9PJywgJ2ltcGxpY2l0JyApOworICBhc3NlcnRf
ZXF1YWxzKCBzZWNvbmRlbGVtLmNsYXNzTGlzdC50b1N0cmluZygpLCAnZm9vIEZPTycsICdleHBs
aWNpdCcgKTsKK30sICdjbGFzc0xpc3QucmVwbGFjZSByZXBsYWNlcyBhcmd1bWVudHMgcGFzc2Vk
LCBpZiB0aGV5IGFyZSBwcmVzZW50LicpOwordGVzdChmdW5jdGlvbiAoKSB7CisgIHNlY29uZGVs
ZW0uY2xhc3NMaXN0LnJlcGxhY2UoJ2ZvbycsICdiYXInKTsKKyAgYXNzZXJ0X2VxdWFscyggc2Vj
b25kZWxlbS5jbGFzc0xpc3QubGVuZ3RoLCAyICk7CisgIGFzc2VydF9lcXVhbHMoIHNlY29uZGVs
ZW0uY2xhc3NMaXN0ICsgJycsICdiYXIgRk9PJywgJ2ltcGxpY2l0JyApOworICBhc3NlcnRfZXF1
YWxzKCBzZWNvbmRlbGVtLmNsYXNzTGlzdC50b1N0cmluZygpLCAnYmFyIEZPTycsICdleHBsaWNp
dCcgKTsKKyAgYXNzZXJ0X2ZhbHNlKCBzZWNvbmRlbGVtLmNsYXNzTGlzdC5jb250YWlucygnZm9v
JykgKTsKKyAgYXNzZXJ0X3RydWUoIHNlY29uZGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKCdiYXIn
KSApOworICBhc3NlcnRfdHJ1ZSggc2Vjb25kZWxlbS5jbGFzc0xpc3QuY29udGFpbnMoJ0ZPTycp
ICk7Cit9LCAnY2xhc3NMaXN0LnJlcGxhY2UgbXVzdCByZXBsYWNlIGV4aXN0aW5nIHRva2Vucycp
OwordGVzdChmdW5jdGlvbiAoKSB7CisgIGFzc2VydF9ub3RfZXF1YWxzKCBnZXRDb21wdXRlZFN0
eWxlKHNlY29uZGVsZW0sbnVsbCkuZm9udFN0eWxlLCAnaXRhbGljJyApOworfSwgJ2NsYXNzTGlz
dC5yZXBsYWNlIG11c3Qgbm90IGJyZWFrIGNhc2Utc2Vuc2l0aXZlIENTUyBzZWxlY3RvciBtYXRj
aGluZycpOwordGVzdChmdW5jdGlvbiAoKSB7CisgIHNlY29uZGVsZW0uY2xhc3NOYW1lID0gJ3Rv
a2VuMSB0b2tlbjIgdG9rZW4xJworICBzZWNvbmRlbGVtLmNsYXNzTGlzdC5yZXBsYWNlKCd0b2tl
bjEnLCAndG9rZW4zJyk7CisgIGFzc2VydF9lcXVhbHMoIHNlY29uZGVsZW0uY2xhc3NMaXN0Lmxl
bmd0aCwgMiApOworICBhc3NlcnRfZmFsc2UoIHNlY29uZGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5z
KCd0b2tlbjEnKSApOworICBhc3NlcnRfdHJ1ZSggc2Vjb25kZWxlbS5jbGFzc0xpc3QuY29udGFp
bnMoJ3Rva2VuMicpICk7CisgIGFzc2VydF90cnVlKCBzZWNvbmRlbGVtLmNsYXNzTGlzdC5jb250
YWlucygndG9rZW4zJykgKTsKK30sICdjbGFzc0xpc3QucmVwbGFjZSBtdXN0IHJlcGxhY2UgZHVw
bGljYXRlZCB0b2tlbnMnKTsKK3Rlc3QoZnVuY3Rpb24gKCkgeworICBzZWNvbmRlbGVtLmNsYXNz
TmFtZSA9ICd0b2tlbjEgIHRva2VuMiAgdG9rZW4zJzsKKyAgc2Vjb25kZWxlbS5jbGFzc0xpc3Qu
cmVwbGFjZSgndG9rZW4yJywgJ3Rva2VuNCcpOworICBhc3NlcnRfZXF1YWxzKCBzZWNvbmRlbGVt
LmNsYXNzTGlzdCArICcnLCAndG9rZW4xIHRva2VuNCB0b2tlbjMnLCAnaW1wbGljaXQnICk7Cisg
IGFzc2VydF9lcXVhbHMoIHNlY29uZGVsZW0uY2xhc3NMaXN0LnRvU3RyaW5nKCksICd0b2tlbjEg
dG9rZW40IHRva2VuMycsICdleHBsaWNpdCcgKTsKK30sICdjbGFzc0xpc3QucmVwbGFjZSBtdXN0
IGNvbGxhcHNlIHdoaXRlc3BhY2UgYXJvdW5kIHJlcGxhY2VkIHRva2VucycpOwordGVzdChmdW5j
dGlvbiAoKSB7CisgIHNlY29uZGVsZW0uY2xhc3NOYW1lID0gJyB0b2tlbjEgdG9rZW4yICAnOwor
ICBzZWNvbmRlbGVtLmNsYXNzTGlzdC5yZXBsYWNlKCd0b2tlbjInLCAndG9rZW4zJyk7CisgIGFz
c2VydF9lcXVhbHMoIHNlY29uZGVsZW0uY2xhc3NMaXN0Lmxlbmd0aCwgMiApOworICBhc3NlcnRf
ZXF1YWxzKCBzZWNvbmRlbGVtLmNsYXNzTGlzdCArICcnLCAndG9rZW4xIHRva2VuMycsICdpbXBs
aWNpdCcgKTsKKyAgYXNzZXJ0X2VxdWFscyggc2Vjb25kZWxlbS5jbGFzc0xpc3QudG9TdHJpbmco
KSwgJ3Rva2VuMSB0b2tlbjMnLCAnZXhwbGljaXQnICk7Cit9LCAnY2xhc3NMaXN0LnJlcGxhY2Ug
bXVzdCBjb2xsYXBzZSB3aGl0ZXNwYWNlcyBhcm91bmQgZWFjaCB0b2tlbicpOwordGVzdChmdW5j
dGlvbiAoKSB7CisgIHNlY29uZGVsZW0uY2xhc3NOYW1lID0gJyAgdG9rZW4xICB0b2tlbjIgIHRv
a2VuMSAgJzsKKyAgc2Vjb25kZWxlbS5jbGFzc0xpc3QucmVwbGFjZSgndG9rZW4yJywgJ3Rva2Vu
MycpOworICBhc3NlcnRfZXF1YWxzKCBzZWNvbmRlbGVtLmNsYXNzTGlzdCArICcnLCAndG9rZW4x
IHRva2VuMycsICdpbXBsaWNpdCcgKTsKKyAgYXNzZXJ0X2VxdWFscyggc2Vjb25kZWxlbS5jbGFz
c0xpc3QudG9TdHJpbmcoKSwgJ3Rva2VuMSB0b2tlbjMnLCAnZXhwbGljaXQnICk7Cit9LCAnY2xh
c3NMaXN0LnJlcGxhY2UgbXVzdCBjb2xsYXBzZSB3aGl0ZXNwYWNlcyBhcm91bmQgZWFjaCB0b2tl
biBhbmQgcmVtb3ZlIGR1cGxpY2F0ZXMnKTsKK3Rlc3QoZnVuY3Rpb24gKCkgeworICBzZWNvbmRl
bGVtLmNsYXNzTmFtZSA9ICcgIHRva2VuMSAgdG9rZW4yICB0b2tlbjEgICc7CisgIHNlY29uZGVs
ZW0uY2xhc3NMaXN0LnJlcGxhY2UoJ3Rva2VuMScsICd0b2tlbjMnKTsKKyAgYXNzZXJ0X2VxdWFs
cyggc2Vjb25kZWxlbS5jbGFzc0xpc3QgKyAnJywgJ3Rva2VuMyB0b2tlbjInLCAnaW1wbGljaXQn
ICk7CisgIGFzc2VydF9lcXVhbHMoIHNlY29uZGVsZW0uY2xhc3NMaXN0LnRvU3RyaW5nKCksICd0
b2tlbjMgdG9rZW4yJywgJ2V4cGxpY2l0JyApOworfSwgJ2NsYXNzTGlzdC5yZXBsYWNlIG11c3Qg
Y29sbGFwc2Ugd2hpdGVzcGFjZSB3aGVuIHJlcGxhY2luZyBkdXBsaWNhdGUgdG9rZW5zJyk7Cit0
ZXN0KGZ1bmN0aW9uICgpIHsKICAgYXNzZXJ0X25vdF9lcXVhbHMoIGdldENvbXB1dGVkU3R5bGUo
ZWxlbSxudWxsKS5mb250U3R5bGUsICdpdGFsaWMnICk7CiB9LCAnQ1NTIGNsYXNzIHNlbGVjdG9y
cyBtdXN0IHN0b3AgbWF0Y2hpbmcgd2hlbiBhbGwgY2xhc3NlcyBoYXZlIGJlZW4gcmVtb3ZlZCcp
OwogdGVzdChmdW5jdGlvbiAoKSB7CkBAIC0yNDUsNiArMzE4LDEzIEBAIHRlc3QoZnVuY3Rpb24g
KCkgewogICBXZWJJREwgY3JlYXRlcyBhY3R1YWwgT3duUHJvcGVydGllcyBhbmQgdGhlbiBbXSBq
dXN0IGFjdHMgYXMgYSBub3JtYWwgcHJvcGVydHkgbG9va3VwICovCiAgIGFzc2VydF9lcXVhbHMo
IGVsZW0uY2xhc3NMaXN0WzBdLCB1bmRlZmluZWQgKTsKIH0sICdjbGFzc0xpc3RbMF0gbXVzdCBi
ZSB1bmRlZmluZWQgd2hlbiBhbGwgY2xhc3NlcyBoYXZlIGJlZW4gcmVtb3ZlZCcpOwordGVzdChm
dW5jdGlvbiAoKSB7CisgIHZhciBmb28gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsK
KyAgZm9vLmNsYXNzTGlzdC5hZGQoKTsKKyAgYXNzZXJ0X3RydWUoIGZvby5oYXNBdHRyaWJ1dGUo
J2NsYXNzJykgKTsKKyAgYXNzZXJ0X2VxdWFscyggZm9vLmNsYXNzTGlzdCArICcnLCAnJywgJ2lt
cGxpY2l0JyApOworICBhc3NlcnRfZXF1YWxzKCBmb28uY2xhc3NMaXN0LnRvU3RyaW5nKCksICcn
LCAnZXhwbGljaXQnICk7Cit9LCAnSW52b2tpbmcgYWRkIG9yIHJlbW92ZSBzaG91bGQgc2V0IHRo
ZSBjbGFzcyBhdHRyaWJ1dGUnKTsKIC8vIFRoZSBvcmRlcmVkIHNldCBwYXJzZXIgbXVzdCBza2lw
IEFTQ0lJIHdoaXRlc3BhY2UgKFUrMDAwOSwgVSswMDBBLCBVKzAwMEMsIFUrMDAwRCwgYW5kIFUr
MDAyMC4pCiB0ZXN0KGZ1bmN0aW9uICgpIHsKICAgdmFyIGZvbyA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoJ2RpdicpOwo=
</data>
<flag name="review"
          id="300448"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>