<?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>224622</bug_id>
          
          <creation_ts>2021-04-15 13:55:40 -0700</creation_ts>
          <short_desc>[LayoutTests] Convert http/tests/resources convert PHP to Python</short_desc>
          <delta_ts>2021-04-26 10:45:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=220749</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=224933</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Gambrell">cgambrell</reporter>
          <assigned_to name="Chris Gambrell">cgambrell</assigned_to>
          <cc>ap</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hi</cc>
    
    <cc>jbedard</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1750764</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-15 13:55:40 -0700</bug_when>
    <thetext>Replacing PHP with equivalent Python CGI scripts</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750773</commentid>
    <comment_count>1</comment_count>
      <attachid>426136</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-15 14:08:30 -0700</bug_when>
    <thetext>Created attachment 426136
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750810</commentid>
    <comment_count>2</comment_count>
      <attachid>426145</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-15 15:47:16 -0700</bug_when>
    <thetext>Created attachment 426145
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750815</commentid>
    <comment_count>3</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2021-04-15 15:51:06 -0700</bug_when>
    <thetext>rdar://76727052</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751103</commentid>
    <comment_count>4</comment_count>
      <attachid>426237</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-16 09:30:51 -0700</bug_when>
    <thetext>Created attachment 426237
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751875</commentid>
    <comment_count>5</comment_count>
      <attachid>426448</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-19 11:31:14 -0700</bug_when>
    <thetext>Created attachment 426448
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751879</commentid>
    <comment_count>6</comment_count>
      <attachid>426448</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-19 11:34:01 -0700</bug_when>
    <thetext>Comment on attachment 426448
Patch

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

&gt; LayoutTests/http/tests/resources/last-modified.py:8
&gt; +date = parse_qs(os.environ.get(&apos;QUERY_STRING&apos;, &apos;&apos;), keep_blank_values=True).get(&apos;date&apos;, [datetime.utcnow().strftime(&apos;%a, %d %b %Y %H:%M:%S GMT&apos;)])[0]

Python will not send the &apos;Last-Modified&apos; header if it is empty or an invalid date format. Adding this as the default protects against an empty date</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1751882</commentid>
    <comment_count>7</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-04-19 11:39:55 -0700</bug_when>
    <thetext>(In reply to Chris Gambrell from comment #6)
&gt; Comment on attachment 426448 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=426448&amp;action=review
&gt; 
&gt; &gt; LayoutTests/http/tests/resources/last-modified.py:8
&gt; &gt; +date = parse_qs(os.environ.get(&apos;QUERY_STRING&apos;, &apos;&apos;), keep_blank_values=True).get(&apos;date&apos;, [datetime.utcnow().strftime(&apos;%a, %d %b %Y %H:%M:%S GMT&apos;)])[0]
&gt; 
&gt; Python will not send the &apos;Last-Modified&apos; header if it is empty or an invalid
&gt; date format. Adding this as the default protects against an empty date

More accurately, Apache will not send the Last-Modified header if Python prints an empty or invalid header.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752062</commentid>
    <comment_count>8</comment_count>
      <attachid>426496</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-19 17:26:49 -0700</bug_when>
    <thetext>Created attachment 426496
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752282</commentid>
    <comment_count>9</comment_count>
      <attachid>426496</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-04-20 09:15:13 -0700</bug_when>
    <thetext>Comment on attachment 426496
Patch

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

&gt; LayoutTests/http/tests/misc/last-modified-parsing.html:17
&gt; +test(&apos;Mon, 03 Mar 2008 01:03:33 GMT&apos;);

...which port was this required to fix? Looking at the test name, I think we&apos;re meaningfully changing the behavior of this test.

&gt; LayoutTests/http/tests/resources/portabilityLayer.py:82
&gt; +def set_state(file, state):

This has big implications for all of this function&apos;s callers. What motivated the change?

&gt; LayoutTests/http/tests/resources/reset-temp-file.py:7
&gt; +filename = parse_qs(os.environ.get(&apos;QUERY_STRING&apos;, &apos;&apos;), keep_blank_values=True).get(&apos;filename&apos;, [&apos;404.txt&apos;])[0]

Why did we change the name of the default file?

&gt; LayoutTests/http/tests/resources/touch-temp-file.py:8
&gt; +filename = parse_qs(os.environ.get(&apos;QUERY_STRING&apos;, &apos;&apos;), keep_blank_values=True).get(&apos;filename&apos;, [&apos;404.txt&apos;])[0]

Why did we change the name of the default file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752349</commentid>
    <comment_count>10</comment_count>
      <attachid>426573</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-20 11:24:46 -0700</bug_when>
    <thetext>Created attachment 426573
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752350</commentid>
    <comment_count>11</comment_count>
      <attachid>426573</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-20 11:27:27 -0700</bug_when>
    <thetext>Comment on attachment 426573
Patch

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

&gt; LayoutTests/http/tests/misc/last-modified-parsing.html:8
&gt; +    document.write(&apos;&lt;iframe src=&quot;../resources/last-modified.py?date=&apos; + escape(text) + &apos;&quot;&gt;&lt;/iframe&gt;&apos;);

Reverted to keep different formats of dates in this test

&gt; LayoutTests/http/tests/resources/last-modified.py:14
&gt; +else:

Re-format date if it isn&apos;t in an appropriate format for Last-Modified header.

&gt; LayoutTests/http/tests/resources/portabilityLayer.py:82
&gt; +def set_state(file, state):

Moved file to first arg to keep consistent with all other functions in this script. Addressed every instance of a caller of this function and made sure they were all changed to match the argument order.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753173</commentid>
    <comment_count>12</comment_count>
      <attachid>426813</attachid>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-22 08:30:18 -0700</bug_when>
    <thetext>Created attachment 426813
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754250</commentid>
    <comment_count>13</comment_count>
    <who name="Chris Gambrell">cgambrell</who>
    <bug_when>2021-04-26 10:20:40 -0700</bug_when>
    <thetext>http/tests/images/mp4-partial-load.html is failing mac-wk2-stress. When running the same test with its PHP version instead of Python, it is failing the same way. There is a separate issue with this test and a separate bug will be created to fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754256</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-26 10:45:15 -0700</bug_when>
    <thetext>Committed r276602 (237034@main): &lt;https://commits.webkit.org/237034@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426813.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426136</attachid>
            <date>2021-04-15 14:08:30 -0700</date>
            <delta_ts>2021-04-15 15:47:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210415160829.patch</filename>
            <type>text/plain</type>
            <size>140856</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjA3MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzNCBAQAorMjAyMS0wNC0xNSAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICBXaWxsIGFk
ZCByYWRhciB3aGVuIGltcG9ydGVkIGFmdGVyIHIrICh0YWtpbmcgc29tZSB0aW1lIHRvIGF0dGF0
Y2ggdGhlIHJhZGFyIG9uIHRoZSBidWcpCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1u
ZXR3b3JrLWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9t
YWluLXJlc291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hl
L211bHRpLWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24t
aHRtbC54aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNz
Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11
cGRhdGUtMi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWls
LW9uLXVwZGF0ZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
YXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3Q6CisgICAg
ICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZl
c3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFu
aWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1h
Y2Nlc3MtZnJhbWUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9vZmZsaW5lLWFjY2Vzcy5qczoKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIGh0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0OgorICAgICAgICAq
IGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL3JlbW92ZS1jYWNoZS5weToKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJyb3ItZHVy
aW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FjaGUv
c3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdhdGluZy1pZnJhbWUtaW4tY3Jv
c3Mtb3JpZ2luLXBhZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1z
aXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFt
ZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2ll
cy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvY3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9jc3MvY3NzLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2Nzcy9jc3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jc3Mv
bWFzay1pbWFnZS1sb2FkaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jc3MvcmVmbGVj
dGlvbi1tYXNrLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9y
ZXNvdXJjZXMvcmVxdWVzdC1sb2dnaW5nLmpzOgorICAgICAgICAoUmVzb3VyY2VMb2dnaW5nLkNh
bGxDb21tYW5kKToKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNl
bGluZS1hZnRlci1pbWFnZS1sb2FkLTItZXhwZWN0ZWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLTMtZXhwZWN0ZWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0
aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4
cGVjdGVkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFz
ZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvZmV0Y2gv
Y2xvbmUtcmVzcG9uc2UtYm9keS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvZmV0Y2gvY2xv
c2luZy13aGlsZS1mZXRjaGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvZmV0Y2gvZmV0
Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9m
ZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGh0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRo
LWRpZmZlcmVudC1vcHRpb25zLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9nZXQt
cmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9p
bWFnZXMvZGVjb2RlLXNsb3ctbG9hZC1zdGF0aWMtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1sb2FkLWxhcmdlLWltYWdlLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9pbWFnZXMvZ2lmLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9pbWFnZS1zdXBwb3J0cy12aWRlby5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL2pwZWctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvaW1hZ2VzL21wNC1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFscGhhLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9ncmVzc2l2ZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2xvYWRpbmcvcHJlbG9hZC1pbWctdGVzdC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
bG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAtZmls
ZS11dGlscy5qczoKKyAgICAgICAgKGNyZWF0ZVRlbXBGaWxlKToKKyAgICAgICAgKHRvdWNoVGVt
cEZpbGUpOgorICAgICAgICAocmVtb3ZlVGVtcEZpbGUpOgorICAgICAgICAqIGh0dHAvdGVzdHMv
bG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmctMi5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ct
bG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9sYXN0LW1vZGlmaWVkLXBh
cnNpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2Mvbm8tbGFzdC1tb2RpZmllZC5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9yZXBlYXQtb3Blbi1jYW5jZWwuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2Ut
YXNzZXJ0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9wcmVsb2FkL2RlbGF5aW5nX29ubG9h
ZF9saW5rX3ByZWxvYWRfYWZ0ZXJfZGlzY292ZXJ5X2ltYWdlLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJlZi5odG1sOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZGVsYXlpbmdfd2luZG93X29ubG9hZF9iZWZvcmVf
ZGlzY292ZXJ5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9ldmljdGlu
Z19wcmVsb2FkX2F0X29ubG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L2Jhc2ljLWF1dGgucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L2RpZ2VzdC1hdXRoOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2Rv
d25sb2FkLWpzb24td2l0aC1kZWxheS5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwOiBSZW1vdmVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weTogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocDogUmVt
b3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQu
cHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQu
cGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9kaWZp
ZWQucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0
YWxsLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5weTogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5OiBBZGRlZC4KKyAgICAgICAgKHRlbXBfcGF0aF9iYXNlKToK
KyAgICAgICAgKGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKToKKyAgICAgICAgKGNvbnRl
bnRfdHlwZSk6CisgICAgICAgIChnZW5lcmF0ZV9yZXNwb25zZSk6CisgICAgICAgIChoYW5kbGVf
aW5jcmVhdGVfcmVzb3VyY2VfY291bnRfY29tbWFuZCk6CisgICAgICAgIChoYW5kbGVfcmVzZXRf
cmVzb3VyY2VfY291bnRfY29tbWFuZCk6CisgICAgICAgIChoYW5kbGVfZ2V0X3Jlc291cmNlX2Nv
dW50X2NvbW1hbmQpOgorICAgICAgICAoaGFuZGxlX3N0YXJ0X3Jlc291cmNlX3JlcXVlc3RzX2xv
Zyk6CisgICAgICAgIChoYW5kbGVfZ2V0X3Jlc291cmNlX3JlcXVlc3RzX2xvZyk6CisgICAgICAg
IChoYW5kbGVfbG9nX3Jlc291cmNlX3JlcXVlc3QpOgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVz
b3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHk6CisgICAgICAgIChzZXRfc3RhdGUpOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnBo
cDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12
aWRlby1pZi1hY2NlcHRlZC5weTogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvcmVzZXQtdGVtcC1maWxlLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jl
c291cmNlcy9zbG93LWltYWdlLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jl
c291cmNlcy9zbG93LWltYWdlLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291
cmNlcy9zbG93LW5vdGlmeS1kb25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0
dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHA6IFJlbW92ZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNl
c3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBl
L3N3aXBlLWJhY2std2l0aC1vdXRzdGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9s
LWJhc2ljLXByZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90
ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxp
Z2h0LWNhY2hlLXRpbWVvdXQucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAg
ICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9s
LXByZWZsaWdodC1kZW5pZWQteHNyZi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWlu
ZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1l
bWJlci1iYWQtcGFzc3dvcmQvY291bnQtZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0
cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEt
MDQtMTUgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgY2Fs
YygpIHNob3VsZCBub3QgY29udGFpbiAwIHZhbHVlcyBvdGhlciB0aGFuIHBlcmNlbnRhZ2VzCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCShy
ZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxi
YWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24gc2V0TmV0
d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0
ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICAgICAgcmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtZmFs
bGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOwogICAgICAgICByZXEuc2VuZCgiIik7CiAgICAgfSBjYXRjaCAoZXgpIHsKICAgICAgICAg
bG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsgc2ltdWxhdG9yIFVSTCIpOwpAQCAtNDMsNyArNDMs
NyBAQCBmdW5jdGlvbiBsb2FkKHVybCkKICAgICB9CiB9CiAKLXZhciB0ZXN0VVJMID0gIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtZmFsbGJhY2smcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vdC1pbi1jYWNoZS50eHQiOwordmFyIHRlc3RVUkwgPSAiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2FjaGUudHh0IjsKIHZhciBub25leGlzdGVudFVS
TCA9ICJyZXNvdXJjZXMvZG9lcy1ub3QtZXhpc3QiOwogdmFyIHJlZGlyZWN0VVJMID0gInJlc291
cmNlcy9mYWxsYmFjay1yZWRpcmVjdC5weSI7CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFz
aC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaC5odG1sCShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3Vy
Y2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtNSw3ICs1LDcgQEAKIDxkaXY+ICAgICAgICBCZWZvcmUgeW91IGNsaWNrIHRoZSBsaW5rIHRo
YXQgdGVzdHMgdGhlIGFwcGNhY2hlIGZhbGxiYWNrLCBwbGVhc2UgbWFrZSBzdXJlIHRoZSBzZXJ2
ZXIgaXMgZG93biBvciBkaXNjb25uZWN0IHlvdXIgZGV2aWNlIGZyb20gYW55IGRhdGEgY29ubmVj
dGlvbiBzbyB0aGUgY29ubmVjdGlvbiByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIgd2lsbCBmYWlsLgog
PC9kaXY+CiAKLTxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVy
cm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhl
IHNlcnZlciBpcyBkb3duIG9yIHRoZSBjbGllbnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEg
Y29ubmVjdGlvbiwgdGhpcyB3aWxsIHZlcmlmeSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0
aGUgY3Jhc2guIDwvYT4KKzxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdv
cmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCIgPiBjbGljayB0aGlzIGxpbmsgd2hl
biB0aGUgc2VydmVyIGlzIGRvd24gb3IgdGhlIGNsaWVudCBkZXZpY2UgZG9lc24ndCBoYXZlIGEg
ZGF0YSBjb25uZWN0aW9uLCB0aGlzIHdpbGwgdmVyaWZ5IGlmIHRoZSBmYWxsYmFjayB3aWxsIGNh
dXNlIHRoZSBjcmFzaC4gPC9hPgogCiAKIDxzY3JpcHQ+CkBAIC0xMyw3ICsxMyw3IEBACiBmdW5j
dGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0
dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKQEAgLTI2LDcgKzI2LDcgQEAgZnVu
Y3Rpb24gcnVuVGVzdCgpCiB7CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgICAg
IHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKLSAgICAgICAgd2luZG93LmxvY2F0aW9uPSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2Ut
ZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7Cisg
ICAgICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jh
c2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7CiAgICAgfQogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1oYXNoLmh0bWwJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1oYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAgZnVu
Y3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsK
ICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291
cmNlLWhhc2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwg
ZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApAQCAtMjgsNyArMjgsNyBAQCBmdW5jdGlv
biBmcmFtZUNyZWF0ZWQoKQogICAgICAgICBzdGFnZSA9IDE7CiAgICAgICAgIHNldE5ldHdvcmtF
bmFibGVkKGZhbHNlKTsKICAgICAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImlmcmFtZSIpOwotICAgICAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZy
YW1lLmh0bWwjYmFyIik7CisgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWlu
LXJlc291cmNlLWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFz
aC1mcmFtZS5odG1sI2JhciIpOwogICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlm
cik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgbG9nKCJTVUNDRVNTIik7CkBAIC00Myw3ICs0Myw3
IEBAIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgZnJhbWUKIHZhciBzdGFnZSA9
IDA7CiBzZXROZXR3b3JrRW5hYmxlZCh0cnVlKTsKIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpZnJhbWUiKTsKLWlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNv
dXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJh
bWUuaHRtbCNmb28iKTsKK2lmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNl
LWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5o
dG1sI2ZvbyIpOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogCiA8L3NjcmlwdD4K
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIGZ1
bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEgPSBuZXcgWE1M
SHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxz
ZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1h
bmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICBy
ZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bXVsdGktZmFsbGJhY2suaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbXVsdGktZmFsbGJhY2suaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMjEsNyArMjEsNyBAQCBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAg
ICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3Qi
IDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tdWx0aS1mYWxsYmFjayZj
b21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAg
ICAgICAgIHJlcS5zZW5kKCIiKTsKICAgICB9IGNhdGNoIChleCkgewogICAgICAgICBsb2coIkNh
bm5vdCBhY2Nlc3MgbmV0d29yayBzaW11bGF0b3IgVVJMLCBleCA9ICIgKyBleCk7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwueGh0bWwJKHJldmlz
aW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwu
eGh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiA8aHRtbCB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMTk5OS94aHRtbCIKLSAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QiPgorICAgICAgbWFuaWZlc3Q9Ii9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0Ij4KIDxoZWFkPjx0aXRsZS8+PC9o
ZWFkPgogPGJvZHk+CiA8cD5UZXN0IHRoYXQgbm9uLUhUTUwgbWFpbiByZXNvdXJjZXMgd29yayB3
aXRoIGFwcGxpY2F0aW9uIGNhY2hlIGNvcnJlY3RseS48L3A+CkBAIC0xOSwxNCArMTksMTQgQEAg
ZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRt
bCZhbXA7Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVj
dCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCiBmdW5j
dGlvbiBjcmVhdGVGcmFtZSgpCiB7CiAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImlmcmFtZSIpOwotICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvYWJlLnBuZyIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1w
O3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nIik7CiAgICAgaWZyLm9ubG9hZCA9IGZy
YW1lQ3JlYXRlZDsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CkBAIC00
Myw3ICs0Myw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRo
YXQgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGNhY2hlLgogICAgIHRyeSB7CiAgICAgICAgIHZhciBy
ZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtw
YXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKKyAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2Fj
aGUudHh0IiwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgpOwogICAgIH0gY2F0Y2ggKGUpIHsK
ICAgICAgICAgaWYgKGUuY29kZSA9PSBET01FeGNlcHRpb24uTkVUV09SS19FUlIpCkBAIC01OCw3
ICs1OCw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRoYXQg
ZXhpc3RzIGluIHRoZSBjYWNoZS4KICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0KCk7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1s
JmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKICAgICAg
ICAgcmVxLnNlbmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAiRkFJTFVSRTogQ291bGQgbm90IGxvYWQg
ZGF0YSBmcm9tIGNhY2hlIgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9v
ZmZsaW5lLWFjY2Vzcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5lLWFjY2Vzcy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCwxNCArMTgsMTQgQEAgZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBz
ZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwog
ICAgIHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQogewogICAgIHZh
ciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBpZnIuc2V0QXR0
cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MtZnJhbWUuaHRtbCIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKICAgICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLTIucHkKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRh
dGUtMi5weQkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQkod29ya2luZyBjb3B5KQpAQCAtMjYs
NyArMjYsNyBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAgICAgIG9zLnJlbW92ZSh0bXBf
ZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5c
clxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQn
LCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdEZWxldGVkJykKICAgICBzeXMu
c3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgc3Rh
dGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQud3JpdGUoCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWlsLW9uLXVwZGF0ZS5weQkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUucHkJKHdvcmtpbmcgY29weSkK
QEAgLTI4LDcgKzI4LDcgQEAgaWYgY29tbWFuZCA9PSAncmVzZXQnOgogICAgICAgICBvcy5yZW1v
dmUodG1wX2ZpbGUpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0
bWxcclxuXHJcbicpCiBlbGlmIGNvbW1hbmQgPT0gJ2RlbGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdE
ZWxldGVkJywgdG1wX2ZpbGUpCisgICAgc2V0X3N0YXRlKHRtcF9maWxlLCAnRGVsZXRlZCcpCiAg
ICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBl
bGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFu
aWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvZmFsbGJhY2subWFuaWZlc3QJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/IHNpbXBsZS50eHQKIGZhbGxiYWNrLXJlZGlyZWN0IHNpbXBsZS50eHQK
IGRvZXMtbm90LWV4aXN0IHNpbXBsZS50eHQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291
cmNlLXJlZGlyZWN0LWZyYW1lLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHJl
dmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHdvcmtpbmcgY29weSkKQEAgLTQs
NiArNCw2IEBAIGltcG9ydCBzeXMKIAogc3lzLnN0ZG91dC53cml0ZSgKICAgICAnc3RhdHVzOiAz
MDJcclxuJwotICAgICdMb2NhdGlvbjogaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVk
aXJlY3QtZnJhbWUtMi5odG1sXHJcbicKKyAgICAnTG9jYXRpb246IGh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sXHJcbicKICAgICAnQ29udGVudC1UeXBl
OiB0ZXh0L2h0bWxcclxuXHJcbicKICkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNl
LXJlZGlyZWN0Lm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHJldmlz
aW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2Vz
L21haW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNCAr
MSw0IEBACiBDQUNIRSBNQU5JRkVTVAotaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVk
aXJlY3QtZnJhbWUtMi5odG1sCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNl
LXJlZGlyZWN0JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0
LWZyYW1lLTIuaHRtbAogTkVUV09SSzoKLWh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJl
c291cmNlLXJlZGlyZWN0JmNvbW1hbmQKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtcmVkaXJlY3QmY29tbWFuZApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFu
aWZlc3QJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL211bHRpLWZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/IHNpbXBsZS50eHQKIGRvZXMtbm90IGVtcHR5LnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxl
LnR4dApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9u
LWh0bWwubWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QJKHJldmlzaW9uIDI3NjAyNCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDggKzEsOCBAQAogQ0FDSEUgTUFOSUZFU1QKIC9hcHBjYWNo
ZS9ub24taHRtbC54aHRtbAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1h
cHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvYWJlLnBuZwotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm9u
LWh0bWwubWFuaWZlc3QKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBj
YWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAorL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2Fw
cGNhY2hlL3Jlc291cmNlcy9hYmUucG5nCisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1s
Lm1hbmlmZXN0CiBORVRXT1JLOgogL2Zhdmljb24uaWNvCi0vcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmNvbW1hbmQ9CisvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNz
LWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNo
ZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MtZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sIG1hbmlm
ZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxp
bmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVz
dCI+Cis8aHRtbCBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5l
LWFjY2Vzcy5tYW5pZmVzdCI+CiA8ZGl2IGlkPXJlc3VsdD48L2Rpdj4KIDxzY3JpcHQ+CiBmdW5j
dGlvbiBsb2cobWVzc2FnZSkKQEAgLTExLDcgKzExLDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbnBy
b2dyZXNzID0gZnVuY3Rpb24oKQogYXBwbGljYXRpb25DYWNoZS5vbnVwZGF0ZXJlYWR5ID0gZnVu
Y3Rpb24oKSB7IGxvZygidXBkYXRlcmVhZHkiKSB9CiBhcHBsaWNhdGlvbkNhY2hlLm9ub2Jzb2xl
dGUgPSBmdW5jdGlvbigpIHsgbG9nKCJvYnNvbGV0ZSIpIH0KIDwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGlu
ZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUt
YWNjZXNzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiAKIGFwcGxpY2F0aW9uQ2FjaGUub25jYWNo
ZWQgPSBmdW5jdGlvbigpIHsgbG9nKCJjYWNoZWQiKTsgdGVzdCgpIH0KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxp
bmUtYWNjZXNzLmpzCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwkod29ya2luZyBjb3B5KQpAQCAt
Niw3ICs2LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAKICAgICB0cnkgewogICAgICAgICB2YXIgcmVx
ID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0
aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5v
cGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0IiwgZmFs
c2UpOwogICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgaWYgKHJlcS5yZXNwb25zZVRl
eHQgPT0gIkhlbGxvLCBXb3JsZCEiKQogICAgICAgICAgICAgcGFyZW50LnBvc3RNZXNzYWdlKCJk
b25lIiwgIioiKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAK
IENBQ0hFIE1BTklGRVNUCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFw
cGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFj
Y2Vzcy1mcmFtZS5odG1sCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFw
cGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFj
Y2Vzcy5tYW5pZmVzdAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAot
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFj
Y2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKKy9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAorL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAorL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2Fw
cGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLmpzCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5CShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUt
Y2FjaGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAgaWYgY29tbWFuZCA9PSAn
cmVzZXQnOgogICAgICAgICBvcy5yZW1vdmUodG1wX2ZpbGUpCiAgICAgc3lzLnN0ZG91dC53cml0
ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIGNvbW1hbmQgPT0gJ2Rl
bGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxldGVkJywgdG1wX2ZpbGUpCisgICAgc2V0X3N0YXRl
KHRtcF9maWxlLCAnRGVsZXRlZCcpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBl
OiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAg
ICBzeXMuc3Rkb3V0LndyaXRlKApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9u
ZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlv
bi5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hl
L25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAg
IGxvZyhzdGF0ZSA/ICJFbmFibGluZyBuZXR3b3JrIiA6ICJEaXNhYmxpbmcgbmV0d29yayIpOwog
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3It
ZHVyaW5nLXJldmFsaWRhdGlvbiZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlz
Y29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNl
KTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllci5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRp
Zmllci5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
Y2hlL3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMTEsNyArMTEsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICB0cnkgewogICAgICAgICAg
ICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29t
bWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPSIgKyBjbWQsIGZh
bHNlKTsKICAgICAgICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgICAgICAgICBy
ZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgIH0gY2F0Y2ggKGV4KSB7CkBAIC00
MSwxOCArNDEsMTggQEAKICAgCiAgICAgPHN0eWxlPgogICAgICAgICBkaXYgewotICAgICAgICAg
ICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlk
ZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBn
I2RpdicpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3VicmVz
b3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CiAgICAgICAgIH0KICAgICAgICAgcCB7Ci0gICAgICAg
ICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQt
aWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5q
cGcjcCcpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3VicmVz
b3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9YmdfcGF0dGVybi5qcGcjcCcpOwogICAgICAgICB9CiAgICAgPC9zdHlsZT4KIAogPC9oZWFk
PgogPGJvZHk+CiAgICAgPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyI+
PC9kaXY+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRp
ZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1n
MSI+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmll
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1nMiI+
CisgICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcxIj4KKyAg
ICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzIiPgogICAgIAog
ICBUZXN0IHRoYXQgcmVzb3VyY2VzIHdpdGggZnJhZ21lbnQgaWRlbnRpZmllcnMgYXJlIGxvYWRl
ZCBvbmx5IG9uY2UuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3Vy
Y2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJy
b3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9uZXR3b3JrLWVycm9yLWR1cmlu
Zy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSArMSBAQAotPGlt
ZyBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtbmV0d29y
ay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVzb3VyY2VzL2NvbXBhc3Mu
anBnJmFsbG93LWNhY2hpbmc9MSI+Cis8aW1nIHNyYz0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbiZwYXRo
PS9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyZhbGxvdy1jYWNoaW5nPTEiPgpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0
aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdhdGlu
Zy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZp
Z2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIGF3YWl0IHNldENv
b2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjYiLCB7IlNhbWVTaXRlIjogbnVsbCwgIk1heC1BZ2Ui
OiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJzdHJpY3QtYmVjYXVz
ZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjYiLCB7IlNhbWVTaXRlIjogImludmFsaWQiLCAi
TWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoImxheCIs
ICI2IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsK
LSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3Vy
Y2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvY29v
a2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0RmZXRj
aC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5weSI7CisgICAg
d2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9l
Y2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9z
YW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRl
ci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5weSI7CiB9CiBydW5UZXN0
KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1l
LXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZy
YW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdh
dGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkocmV2
aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0
ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUt
aW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBA
QCBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBhd2FpdCBzZXRDb29raWUoImltcGxpY2l0
LXN0cmljdCIsICI0IiwgeyJTYW1lU2l0ZSI6IG51bGwsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6
ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgic3RyaWN0LWJlY2F1c2UtaW52YWxpZC1TYW1l
U2l0ZS12YWx1ZSIsICI0IiwgeyJTYW1lU2l0ZSI6ICJpbnZhbGlkIiwgIk1heC1BZ2UiOiAxMDAs
ICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJsYXgiLCAiNCIsIHsiU2FtZVNp
dGUiOiAiTGF4IiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7Ci0gICAgd2luZG93Lmxv
Y2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFt
ZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nvb2tpZXMvc2FtZS1zaXRl
L3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0Y2gtYWZ0ZXItdG9wLWxl
dmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdl
LnB5JTI2dGFyZ2V0JTNEX3RvcCI7CisgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0Ev
LzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVy
bGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0YXJnZXQlM0RfdG9wIjsK
IH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
b29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1p
bi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLWlm
cmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9u
IHJ1blRlc3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjMiLCB7
IlNhbWVTaXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdh
aXQgc2V0Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjMi
LCB7IlNhbWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsK
ICAgICBhd2FpdCBzZXRDb29raWUoImxheCIsICIzIiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4
LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvZmV0Y2gtaW4t
Y3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sIjsKKyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9aHR0
cDovL2xvY2FsaG9zdDo4MDAwL2Nvb2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9mZXRjaC1pbi1j
cm9zcy1vcmlnaW4taWZyYW1lLmh0bWwiOwogfQogcnVuVGVzdCgpOwogPC9zY3JpcHQ+CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3JkZXItaW1hZ2UtbG9hZGluZy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2JvcmRlci1pbWFnZS1sb2Fk
aW5nLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3Nz
L2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzksMTEg
QEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOworICAg
ICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOwogICAgIH0KICAg
ICAKICAgICAuYm9yZGVyZWQgewotICAgICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxvYWRp
bmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBnIikgMTAgMTAg
MTAgMTAgc3RyZXRjaDsKKyAgICAgIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBnIikgMTAgMTAgMTAgMTAg
c3RyZXRjaDsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjAy
NCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTksMjYgKzksMjYgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdo
dDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1s
b2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5kMS5qcGci
KTsKKyAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDEuanBnIik7CiAgICAgfQogICAgIAogICAgIC5iYWNrZ3Jv
dW5kIHsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOworICAgICAgYmFja2dyb3VuZC1pbWFn
ZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1pbWFn
ZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5kMi5q
cGciKTsKICAgICB9CiAgICAgCiAgICAgLmNvbnRlbnQgewotICAgICAgY29udGVudDogdXJsKCIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTEuanBnIik7
CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVz
dD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PWNvbnRlbnQtaW1hZ2UxLmpwZyIpOwogICAgIH0KIAogICAgIC50ZXN0IHsKLSAgICAgIGNvbnRl
bnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWlt
YWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1h
Z2UyLmpwZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9Y29udGVudC1pbWFnZTMuanBnIik7CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UyLmpwZyIpICJmb29weSIgdXJs
KCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2Fk
aW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMy5qcGci
KTsKICAgICB9CiAgICAgCiAgICAgdWwgewotICAgICAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTEuanBnIik7Cisg
ICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPWxpc3QtaW1hZ2UxLmpwZyIpOwogICAgIH0KICAgICAubGlzdCB7Ci0gICAgICBsaXN0
LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1s
aXN0LWltYWdlMi5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgiL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTIuanBnIik7CiAgICAgfQogICAg
IAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdl
LXZhbHVlZC1zaGFwZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y3NzL2Nzcy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1zaGFwZS5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICAgICAgICBmbG9hdDogbGVmdDsKICAgICAgICAg
d2lkdGg6IDIwMHB4OwogICAgICAgICBoZWlnaHQ6IDIwMHB4OwotICAgICAgICAtd2Via2l0LXNo
YXBlLW91dHNpZGU6IHVybCgiL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHA/bmFtZT1zcXVh
cmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZvcj0xIik7CisgICAgICAgIC13ZWJraXQtc2hhcGUt
b3V0c2lkZTogdXJsKCIvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9c3F1YXJlMTAw
LnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MSIpOwogICAgIH0KIDwvc3R5bGU+CiA8L2hlYWQ+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Utc3JjLWxvYWRpbmcuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Utc3Jj
LWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI2LDcg
KzI2LDcgQEAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewogICAgICAgICBpZiAoeGhyLnJlYWR5U3Rh
dGUgPT0geGhyLkRPTkUpCiAgICAgICAgICAgICBmb3JjZVN0eWxlU2VsZWN0b3JSZWNyZWF0aW9u
KCk7CiAgICAgfTsKLSAgICB4aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1m
aWxlLnBocD8nICsgZmlsZW5hbWUsIHRydWUpOworICAgIHhoci5vcGVuKCdHRVQnLCAnL3Jlc291
cmNlcy9yZXNldC10ZW1wLWZpbGUucHk/JyArIGZpbGVuYW1lLCB0cnVlKTsKICAgICB4aHIuc2Vu
ZCgpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9tYXNr
LWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTks
MTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0
aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBnIik7CisgICAgICAtd2Via2l0LW1h
c2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1j
c3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
YXNrMS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLm1hc2tlZCB7Ci0gICAgICAtd2Via2l0LW1h
c2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWFzazIuanBnIik7CisgICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKICAgICB9CiAgICAgCiAg
IDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1h
c2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjAy
NCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1s
b2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94IHsK
ICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0
LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOworICAgICAgLXdlYmtpdC1ib3gtcmVm
bGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVz
dD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAgICAKICAgICAucmVmbGVjdGVkIHsK
LSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEwcHggdXJsKCIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CisgICAgICAt
d2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CiAgICAgfQogICAgIAogICA8
L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24t
YmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXIt
aW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxv
YWQtMi1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQAogPHNjcmlw
dD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJuICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAg
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdl
LWxvYWQtMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3Zl
cnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sCShyZXZpc2lvbiAy
NzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNl
bGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTUsNyArMTUs
NyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAg
ICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9s
b2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxv
YWQtMy1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMtZXhw
ZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKIDxzY3JpcHQ+CiAgICAg
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgICAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwog
ICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1h
bGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0
ZXItaW1hZ2UtbG9hZC0zLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDcgQEAKIDxz
Y3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQt
c3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC1leHBlY3Rl
ZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92
ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0aW9uIGxvYWRB
bmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAgICAgCiAg
ICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3Mv
dmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFm
dGVyLWltYWdlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0aW9u
IGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAg
ICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9nZ2luZy5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVzdC1sb2dnaW5nLmpzCShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVz
dC1sb2dnaW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBAQCB2YXIgUmVzb3VyY2VM
b2dnaW5nID0gewogICAgIHsKICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgIHZhciByZXEgPSBu
ZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9IiArIHRoaXMudGVzdE5hbWUgKyAiJmNvbW1h
bmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9IiArIHRoaXMudGVzdE5hbWUgKyAiJmNvbW1h
bmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgcmVxLnNlbmQobnVsbCk7CiAgICAgICAg
ICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgfSBjYXRjaCAoZXgpIHsKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVzcG9uc2UtYm9keS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVzcG9u
c2UtYm9keS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJvZHkuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzQsNyAr
MzQsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogCiBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgewogICAgIHZhciBjbG9uZTsKLSAgICByZXR1cm4gZmV0Y2goJy9yZXNvdXJjZXMvZG93
bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAnKS50aGVuKGZ1
bmN0aW9uKHJlcykgeworICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJykudGhlbihmdW5jdGlvbihyZXMp
IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXMuc3RhdHVzLCAyMDApOwogICAgICAgICAvLyBB
bGwgZGF0YSBzaG91bGQgbm90IGJlIGVucXVldWVkIHlldC4KICAgICAgICAgY2xvbmUgPSByZXMu
Y2xvbmUoKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvc2luZy13aGls
ZS1mZXRjaGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb3Npbmctd2hpbGUtZmV0Y2hpbmcuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgICAgICAKIHZhciB0ZXN0ID0gYXN5bmNf
dGVzdCgiRW5zdXJpbmcgdGhhdCBmZXRjaCByZXNwb25zZSBib2R5IHByb21pc2UgaXMgbm90IGZ1
bGZpbGxlZCB3aGVuIHdpbmRvdyBpcyBjbG9zZWQiKTsKIHRlc3Quc3RlcChmdW5jdGlvbigpIHsK
LSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9p
dGVyYXRpb249NSZkZWxheT0xMDAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTEwMDAiOwogICAgIGZldGNo
KHVybCkudGhlbih0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBh
c3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKICAgICAgICAgcmVzcG9uc2UudGV4
dCgpLnRoZW4odGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24oYnVmZmVyKSB7CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoLWNvcnMtd2l0aC1yZWZlcnJlci5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2gtY29ycy13aXRoLXJl
ZmVycmVyLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
ZmV0Y2gvZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTks
NyArOSw3IEBACiAgIDxib2R5PgogICAgIDxzY3JpcHQ+CiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
dCkgewotICAgIHZhciB1cmwgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29ycz10cnVlIjsK
KyAgICB2YXIgdXJsID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQt
anNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29ycz10cnVlIjsKICAgICBy
ZXR1cm4gZmV0Y2godXJsLCB7Im1vZGUiOiAiY29ycyIsICJyZWZlcnJlciI6ICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVmZXJyZXIifSkudGhlbigocmVzcG9uc2UpID0+IHsKICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIpOwogICAgICAgICByZXR1cm4gcmVzcG9u
c2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZlcikgPT4gewpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50
LW9wdGlvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9m
ZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDExICsxLDExIEBACiBDT05TT0xFIE1FU1NBR0U6
IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4g
Y3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fu
bm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdp
dGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10
cnVlJnRlc3Q9MSBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdF
OiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1
ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBD
T05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxs
b3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdF
OiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRy
dWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgor
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVs
YXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIGR1ZSB0byBhY2Nlc3MgY29u
dHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNj
ZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgot
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRl
bGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyBkdWUgdG8gYWNjZXNzIGNv
bnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/
aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0zIGR1
ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ug
d2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMg
ZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhw
P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9NCBk
dWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hl
PXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiAKIFBBU1MgRW5zdXJl
IGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVsIHRoZSBzYW1lIHJlc291
cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzCiBQQVNTIEVuc3VyZSBjb3JzIGNoZWNrcyB3b3JrIHdo
ZW4gbG9hZGluZyBzdWNjZXNzaXZlbHkgdGhlIHNhbWUgcmVzb3VyY2Ugd2l0aCBkaWZmZXJlbnQg
bW9kZXMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1y
ZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVy
ZW50LW9wdGlvbnMuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw4ICs5LDggQEAKICAgPGJvZHk+CiAgICAgPHNjcmlw
dD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybDEgPSAiaHR0cDovL2xv
Y2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJh
dGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MSI7Ci0gICAg
dmFyIHVybDIgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNo
ZT10cnVlJnRlc3Q9MiI7CisgICAgdmFyIHVybDEgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAw
JmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKKyAgICB2YXIgdXJsMiA9ICJodHRw
Oi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9p
dGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTIiOwog
ICAgIHJldHVybiBQcm9taXNlLmFsbChbCiAgICAgICAgICAgICBmZXRjaCh1cmwxLCB7Im1vZGUi
OiAibm8tY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMocmVzcG9uc2UudHlwZSwgIm9wYXF1ZSIpOwpAQCAtMzYsOCArMzYsOCBAQCBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgewogfSwgJ0Vuc3VyZSBjb3JzIGNoZWNrcyB3b3JrIHdoZW4g
bG9hZGluZyBpbiBwYXJhbGxlbCB0aGUgc2FtZSByZXNvdXJjZSB3aXRoIGRpZmZlcmVudCBtb2Rl
cycpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB1cmwzID0gImh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9p
dGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMiOwot
ICAgIHZhciB1cmw0ID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQt
anNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93
Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOworICAgIHZhciB1cmwzID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAw
MC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5
PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7CisgICAgdmFyIHVybDQgPSAi
aHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD00
IjsKICAgICByZXR1cm4gZmV0Y2godXJsMywgeyJtb2RlIjogImNvcnMifSkudGhlbigocmVzcG9u
c2UpID0+IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIpOwog
ICAgICAgICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZlcikg
PT4gewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9k
eS13aGlsZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3
NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZ2V0LXJlc3BvbnNlLWJvZHkt
d2hpbGUtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3ICsxMyw3IEBACiAgICAg
PHNjcmlwdD4KIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTIw
MCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5w
eT9pdGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5nRmxhZyA9IGZhbHNlOwog
ICAgIHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAg
YXNzZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBAIC0yNyw3ICsyNyw3IEBAIHBy
b21pc2VfdGVzdChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNhbGxpbmcgUmVzcG9uc2UudGV4
dCgpIHdoZW4gc3RpbGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24o
KSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5w
aHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93
bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFy
IGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlv
bihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAw
KTsKQEAgLTQxLDcgKzQxLDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRlc3Rp
bmcgY2FsbGluZyBSZXNwb25zZS5hcnJheUJ1ZmZlcigpIHdoZW4gc3RpbGwgZmV0Y2hpbmcgZGF0
YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3Vy
Y2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsK
KyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0
ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAg
cmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3Nl
cnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKQEAgLTU1LDcgKzU1LDcgQEAgcHJvbWlz
ZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS5ibG9iKCkg
d2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsK
LSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9p
dGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9h
ZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKICAgICB2YXIgbG9h
ZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9uKHJl
c3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCAyMDApOwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVjb2RlLXNsb3ctbG9hZC1zdGF0
aWMtaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1p
bWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQAogICAgIDxkaXY+PC9kaXY+
CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWRJbWFnZVNvdXJjZVVSTCgp
IHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9s
b2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiCiAgICAgICAgICAgICAgICAgICsgIj9u
YW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy8xMDB4MTAwLXJlZC5wc2QiIAogICAg
ICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZ2bmQuYWRvYmUucGhvdG9zaG9wIgog
ICAgICAgICAgICAgICAgICArICImc3RhbGxBdD0xMDI0IjsKQEAgLTEzLDcgKzEzLDcgQEAKICAg
ICAgICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHJlc29sdmVkSW1hZ2VTb3VyY2VVUkwoKSB7Ci0g
ICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucGhwIgorICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IgogICAgICAgICAgICAgICAgICArICI/bmFtZT0u
Li8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmciIAogICAgICAg
ICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAgICAgICAgICAgICAgICsg
IiZzdGFsbEF0PTEwMjQiOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZHJh
dy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1h
Z2UuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFn
ZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIC8vIFRoZSBtYXhpbXVtIGJ1ZmZlcmluZyBpbnRl
cnZhbCBmb3IgSW1hZ2VSZXNvdXJjZSBpcyA1MDBtcy4gQ2hvb3NlIHN0YWxsRm9yCiAgICAgICAg
IC8vIHN1Y2ggdGhhdCB0aGUgaW1hZ2UgYnVmZmVyaW5nIGlzIGRpc2FibGVkIGluIHRoZSBuZXR3
b3JrIHByb2Nlc3MuCiAgICAgICAgIGZ1bmN0aW9uIHNsb3dMYXJnZUltYWdlU291cmNlVVJMKCkg
ewotICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocCIKKyAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSIKICAgICAgICAgICAgICAgICAgKyAiP25h
bWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nIiAKICAg
ICAgICAgICAgICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGcG5nIgogICAgICAgICAgICAgICAg
ICArICImc3RhbGxBdD01MTIiCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9n
aWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1
bmN0aW9uIGdpZkltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2lt
YWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRtbAkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDYgQEAKIDxwaWN0dXJlPgotICAgIDxzb3VyY2Ug
c3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnBocD92aWRl
bz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KLSAgICA8c291cmNlIHNyY3NldD0iL3Jlc291
cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHA/dmlkZW89dGVzdC5vZ3YiIHR5
cGU9InZpZGVvL29ndiI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJlY3Qt
dG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5tcDQiIHR5cGU9InZpZGVvL21wNCI+
CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNj
ZXB0ZWQucHk/dmlkZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+CiAgICAgPGltZyBzcmM9
Ii9yZXNvdXJjZXMvc3F1YXJlMTAwLnBuZyI+CiA8L3BpY3R1cmU+CiA8YnI+CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBhcnRpYWwtbG9hZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2pwZWctcGFydGlhbC1sb2FkLmh0
bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2pw
ZWctcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAi
OworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIGpwZWdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2UtYm9yZGVyLmh0bWwJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRp
bmctaW1hZ2UtYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiAgICAg
ICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VCb3JkZXJFbmFibGVkKHRy
dWUpOwogCiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgaW1n
LnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBo
cD9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVlbi00MDB4NDAwLnBuZyZt
aW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAwIjsKKyAgICAgICAgICAg
IGltZy5zcmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weT9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVlbi00MDB4NDAwLnBu
ZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAwIjsKIAogICAgICAg
ICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgICAgIH0sIDApOwpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1uby1ib3JkZXIuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdl
LW5vLWJvcmRlci5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC00LDcgKzQsNyBAQAogICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5jb21wbGV0ZUlt
YWdlQm9yZGVyRW5hYmxlZChmYWxzZSk7CiAKICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAo
KSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3VyY2Vz
L2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0YWxsQXQ9MCZzdGFsbEZv
cj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3Vy
Y2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0YWxsQXQ9MCZzdGFs
bEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKICAgICAg
ICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlh
bC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMv
bXA0LXBhcnRpYWwtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTEzLDcgKzEzLDcgQEAKIAogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAg
ICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAKICAgICBmdW5jdGlvbiBtcDRJbWFnZSgpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFs
cGhhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5n
LXBhcnRpYWwtbG9hZC1uby1hbHBoYS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFscGhhLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBm
dW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9u
IHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0
aWFsLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy9wbmctcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRB
bmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gcG5nSW1hZ2UoKQpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcHJv
Z3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC03LDcgKzcsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFu
ZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiBwbmdJbWFnZSgpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXBhcnRpYWwtbG9hZC5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcGFydGlh
bC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3
IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQog
ewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9s
b2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFnZSgpCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZlLWxvYWQuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZl
LWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9p
bWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyAr
Nyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFnZSgpCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJlbG9hZC1pbWctdGVzdC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9wcmVsb2FkLWltZy10ZXN0
Lmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGlu
Zy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBACiAg
IHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0
OwotICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9IiArIGNtZCwgZmFs
c2UpOworICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD0iICsgY21kLCBm
YWxzZSk7CiAgICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgICByZXR1cm4gcmVx
LnJlc3BvbnNlVGV4dDsKICAgICAgICB9IGNhdGNoIChleCkgewpAQCAtNDksNyArNDksNyBAQAog
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuL3Jlc291cmNlcy9lbXB0eS5q
cyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gIDxpbWcgaWQg
PSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9aW5jcmVhc2UtcmVzb3VyY2UtY291bnQm
cGF0aD0vbG9hZGluZy9yZXNvdXJjZXMvcHJlbG9hZC10ZXN0LmpwZyIgb25lcnJvcj0iaW1nX2Vy
cm9yKCkiIG9ubG9hZD0ic2V0VGltZW91dChjaGVja0FjY2Vzc0NvdW50LCAzMDAwKSI+CisgIDxp
bWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD1pbmNyZWFzZS1yZXNvdXJjZS1j
b3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNlcy9wcmVsb2FkLXRlc3QuanBnIiBvbmVycm9yPSJp
bWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1lb3V0KGNoZWNrQWNjZXNzQ291bnQsIDMwMDApIj4K
ICAgPHA+VGhpcyB0ZXN0IGlzIHRvIHRlc3Qgd2hldGhlciBwcmVsb2FkIGltYWdlIHdpbGwgcmVx
dWlyZSAyIG1vcmUgcmVxdWVzdHMgb3Igbm90LjwvcD4KICAgPHNwYW4gaWQ9Im91dHB1dFBhbmVs
Ij5QQVNTRUQ8L3NwYW4+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xv
Y2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICB7CiAgICAgIHRyeSB7CiAgICAgICAgICB2YXIg
cmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBjbWQs
IGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAg
IHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNwb25zZVRleHQ7CiAgICAg
IH0gY2F0Y2ggKGV4KSB7CkBAIC00MywzNSArNDMsMzUgQEAKICAgPC9zY3JpcHQ+CiAgIAogICA8
IS0tIFRoaXMgd2lsbCB0cmlnZ2VyIHRoZSBwcmVsb2FkIHNjYW5uZXIgLS0+Ci0gIDxzY3JpcHQg
c3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KKyAgPHNjcmlw
dCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CiAKLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlhLmNz
cyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXByaW50LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4i
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+Ci0g
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9h
ZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4KLSAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJy
YWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLmNzcyI+Ci0g
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0icHJvamVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByb2pl
Y3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5jc3MiPgot
ICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVk
aWEtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHktMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIt
cHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3Nz
Ij4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIt
cHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLTIu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1z
dWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNj
cmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLTIu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1x
dWVyeS1mYWlsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHkuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtYWxsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2Ny
ZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4t
d2lkdGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXBy
ZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVy
eS1zdWNjZXNzLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBz
Y3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6
IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXBy
ZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVy
eS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXByb2plY3Rpb24uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR0
eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
dHYuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bm8tbWVkaWEtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFs
bC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3Jl
ZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWlu
LXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVl
cnktc3VjY2Vzcy0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxl
LCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13
aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVu
LXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1nIHNyYz0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPXNjcmlwdC0yLmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0eWxlc2hlZXQgbG9hZCBzY2hl
ZHVsaW5nIHdpdGggcHJlbG9hZCBzY2FubmVyLiBSZXNvdXJjZSBsb2FkcyBmb3Igc2NyZWVuIHN0
eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91bGQgYmUgc2No
ZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLmh0bWwJKHJldmlzaW9uIDI3
NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgIHsKICAg
ICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAg
ICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZj
b21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CiAg
ICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0
OwogICAgICB9IGNhdGNoIChleCkgewpAQCAtNDIsMzMgKzQyLDMzIEBACiAgICAgd2luZG93LmFk
ZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBlbmRUZXN0LCBmYWxzZSk7CiAgIDwvc2NyaXB0PgogCi0g
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxsIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLWFsbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1z
Y3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1p
bi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3Vj
Y2Vzcy5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVu
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCki
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWF1cmFsLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hl
ZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVsZC5j
c3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1wcm9qZWN0aW9uLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJ0dHkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5j
c3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlh
LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJh
bGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LTIu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNj
cmVlbi0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kICht
aW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1
ZXJ5LWZhaWwtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1l
ZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQu
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2Ny
ZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJy
YWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6
IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYXVyYWwiIGhyZWY9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJh
aWxsZSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhh
bmRoZWxkLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+Cisg
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LXR2LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1t
ZWRpYS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmludC0y
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
c2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3Jl
ZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWlu
LXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5
LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1nIHNyYz0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1pbWFnZS5qcGciPgotICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1zY3JpcHQuanMi
Pjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+CisgIDxzY3Jp
cHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0eWxl
c2hlZXQgbG9hZCBzY2hlZHVsaW5nLiBSZXNvdXJjZSBsb2FkcyBmb3Igc2NyZWVuIHN0eWxlc2hl
ZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91bGQgYmUgc2NoZWR1bGVk
IGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxl
LWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQtdXNpbmct
b3Blbi1wYW5lbC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLXVzaW5nLW9wZW4tcGFuZWwuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYsNyBAQCBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
IGZ1bmN0aW9uIG9uRmlsZUNoYW5nZShmaWxlLCBmaWxlUGF0aCkKIHsKICAgICB2YXIgeGhyID0g
bmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHA/cGF0aD0uLi9sb2NhbC9m
aWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOworICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHk/cGF0aD0uLi9s
b2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiAgICAg
dmFyIGV4cGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHBhcnNlSW50KHhoci5yZXNwb25zZVRleHQpICog
MTAwMCk7CiAgICAgdmFyIGFjdHVhbERhdGUgPSBmaWxlLmxhc3RNb2RpZmllZDsKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmls
ZS1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMTMsNyArMTMsNyBAQCBkZXNjcmlwdGlvbigiVGVzdCBGaWxlLmxhc3RNb2RpZmll
ZERhdGUuCiBmdW5jdGlvbiBvbkZpbGVEcm9wKGZpbGUsIGZpbGVQYXRoKQogewogICAgIHZhciB4
aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocD9wYXRoPS4uL2xv
Y2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CisgICAgeGhyLm9wZW4oIkdFVCIsICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weT9wYXRo
PS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CiAgICAgeGhyLnNlbmQoKTsK
ICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3IERhdGUocGFyc2VJbnQoeGhyLnJlc3BvbnNlVGV4
dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFsRGF0ZSA9IGZpbGUubGFzdE1vZGlmaWVkOwpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZp
bGUtdXRpbHMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9m
aWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHJldmlzaW9uIDI3NjAyNCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxl
LXV0aWxzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDcgKzEsNyBAQAogZnVuY3Rpb24gY3JlYXRl
VGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYXRhKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0
cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiArIGZpbGVOYW1lICsgIiZk
YXRhPSIgKyBmaWxlRGF0YSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5P2ZpbGVuYW1lPSIgKyBm
aWxlTmFtZSArICImZGF0YT0iICsgZmlsZURhdGEsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwog
ICAgIGlmICh4aHIuc3RhdHVzICE9IDIwMCkgewogICAgICAgICB0ZXN0RmFpbGVkKCJVbmV4cGVj
dGVkIHJlc3BvbnNlIHN0YXR1cyByZWNlaXZlZDogIiArIHhoci5zdGF0dXMpOwpAQCAtMjAsMTMg
KzIwLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGaWxlKGZpbGVOYW1lLCBmaWxlRGEKIGZ1bmN0
aW9uIHRvdWNoVGVtcEZpbGUoZmlsZU5hbWUpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRw
UmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocD9maWxlbmFtZT0iICsgZmlsZU5hbWUsIGZhbHNl
KTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5hbWUsIGZhbHNlKTsKICAgICB4
aHIuc2VuZCgpOwogfQogCiBmdW5jdGlvbiByZW1vdmVUZW1wRmlsZShmaWxlTmFtZSkKIHsKICAg
ICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIlBPU1QiLCAi
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwP2ZpbGVu
YW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5P2ZpbGVuYW1lPSIgKyBm
aWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmctMi5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2Vi
dnR0LXNsb3ctbG9hZGluZy0yLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0PgogZnVuY3Rpb24gbG9hZEFu
ZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiB2dHRUcmFjaygpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93
LWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlh
L3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1s
b2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0PgogZnVu
Y3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiB2
dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmll
ZC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNj
L2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5nLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTUsMTQgKzUsMTQgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiB9CiAKIGZ1
bmN0aW9uIHRlc3QodGV4dCkgewotICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNyYz0iLi4v
cmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhwP2RhdGU9JyArIGVzY2FwZSh0ZXh0KSArICciPjwv
aWZyYW1lPicpOworICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNyYz0iLi4vcmVzb3VyY2Vz
L2xhc3QtbW9kaWZpZWQucHk/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7
CiB9CiAKIHRlc3QoJ01vbiwgMjEgTm92IDIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0KCdUdWVz
ZGF5LCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKLXRlc3QoJ01vbiwgMjEgTm92IDk3IDAx
OjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMS1Ob3YtMjAwOCAwMTowMzozMyBHTVQnKTsKLXRl
c3QoJ01vbiwgMjEtRmViLTIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0KCdNb24sIDAzLUZlYi0y
MDA4IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAzLU1hci0yMDA4IDAxOjAzOjMzIEdNVCcp
OwordGVzdCgnVHVlLCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKK3Rlc3QoJ01vbiwgMjEg
Tm92IDE5OTcgMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDIxIE5vdiAyMDA4IDAxOjAzOjMz
IEdNVCcpOwordGVzdCgnTW9uLCAyMSBGZWIgMjAwOCAwMTowMzozMyBHTVQnKTsKK3Rlc3QoJ01v
biwgMDMgRmViIDIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDAzIE1hciAyMDA4IDAx
OjAzOjMzIEdNVCcpOwogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2Mvbm8tbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7Ci0gICAgZG9jdW1lbnQu
d3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA/ZGF0ZT0n
ICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9jdW1lbnQud3JpdGUoJzxp
ZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9kYXRlPScgKyBlc2NhcGUo
dGV4dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnJyk7CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sCShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4t
Y2FuY2VsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTIgKzUsMTIgQEAgdmFyIHJlcGVhdENv
dW50ID0gMDsKIAogZnVuY3Rpb24gc2VuZFJlcXVlc3QoKSB7CiAgICAgdmFyIGZpcnN0UmVxID0g
bmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgZmlyc3RSZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MTAwJmRlbGF5PTEiKTsK
KyAgICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgt
ZGVsYXkucHk/aXRlcmF0aW9uPTEwMCZkZWxheT0xIik7CiAKICAgICBmaXJzdFJlcS5vbnJlYWR5
c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKGZpcnN0UmVxLnJlYWR5U3Rh
dGUgPT0gZmlyc3RSZXEuSEVBREVSU19SRUNFSVZFRCkgewogICAgICAgICAgICAgdmFyIHNlY29u
ZFJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICAgICAgc2Vjb25kUmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9u
PTEwJmRlbGF5PTAiKTsKKyAgICAgICAgICAgIHNlY29uZFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwJmRlbGF5PTAiKTsK
IAogICAgICAgICAgICAgc2Vjb25kUmVxLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAg
ICAgICAgIGlmIChyZXBlYXRDb3VudCsrIDwgNDApCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BlbmRpbmctbG9jYXRp
b24tY2hhbmdlLWFzc2VydC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewog
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9u
ZSgpOwogfQotd2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25l
LnBocCI7Cit3aW5kb3cubG9jYXRpb24gPSAiLi4vcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUu
cHkiOwogPC9zY3JpcHQ+PHNjcmlwdD4KIGFsZXJ0KCdGQUlMIDEgb2YgMycpOwogPC9zY3JpcHQ+
PHNjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWluZ19v
bmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWluZ19vbmxvYWRfbGlua19w
cmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9h
ZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcg
QEAKICAgICB2YXIgZmluaXNoZWRJbWFnZSA9IGZhbHNlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPXBy
ZWxvYWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwIiBhcz1pbWFnZSBvbmxvYWQ9
ImZpbmlzaGVkSW1hZ2UgPSB0cnVlOyI+Cis8bGluayByZWw9cHJlbG9hZCBocmVmPSIuLi9yZXNv
dXJjZXMvc2xvdy1pbWFnZS5weSIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5pc2hlZEltYWdlID0gdHJ1
ZTsiPgogPGJvZHk+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2Fk
IiwgZnVuY3Rpb24oKSB7CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwogICAgIH0pOwogICAgIHZhciBpbWcgPSBuZXcgSW1hZ2UoKTsKLSAgICBpbWcu
c3JjID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCI7CisgICAgaW1nLnNyYyA9ICIuLi9y
ZXNvdXJjZXMvc2xvdy1pbWFnZS5weSI7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChp
bWcpOwogPC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3By
ZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJlZi5o
dG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQv
ZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTgsMTQg
KzgsMTQgQEAKICAgICBsaW5rLmFzID0gImltYWdlIjsKICAgICBsaW5rLnJlbCA9ICJwcmVsb2Fk
IjsKICAgICAvLyBDYWNoZS1idXN0aW5nIGlzIG5lZWRlZCBmb3Igc2xvdyByZXNvdXJjZXMuCi0g
ICAgbGluay5ocmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocD9yYW5kPSIgKyBNYXRo
LnJhbmRvbSgpOworICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weT9y
YW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIHZhciBkb3dubG9hZGVkSW1hZ2UgPSBmYWxzZTsK
ICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspOwogICAgIGxpbmsuaHJlZiA9ICIi
OwogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAg
ICAgIHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2Ui
KTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRyaWVzLmxlbmd0aDsgKytpKSB7Ci0g
ICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ctaW1hZ2UucGhwIikg
IT0gLTEpCisgICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ctaW1h
Z2UucHkiKSAhPSAtMSkKICAgICAgICAgICAgICAgICBkb3dubG9hZGVkSW1hZ2UgPSB0cnVlOwog
ICAgICAgICB9CiAgICAgICAgIHNob3VsZEJlRmFsc2UoImRvd25sb2FkZWRJbWFnZSIpOwpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25s
b2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVy
eS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxv
YWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVyeS5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgLy8gVGhlIHJhbmQgdmFsdWUgaXMgbmVj
ZXNzYXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCiAgICAgdmFyIHJhbmQgPSBNYXRo
LnJhbmRvbSgpOwogICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9cHJlbG9hZCBocmVmPScu
Li9yZXNvdXJjZXMvc2xvdy1zY3JpcHQucGw/ZGVsYXk9MjAwO3JhbmQ9IiArIHJhbmQgKyAiJyBh
cz1zY3JpcHQgb25sb2FkPSd3aW5kb3cuZmluaXNoZWRTY3JpcHQgPSB0cnVlOyB0ZXN0KCk7Jz4i
KTsKLSAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQgaHJlZj0nLi4vcmVzb3Vy
Y2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dp
bmRvdy5maW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CisgICAgZG9jdW1lbnQud3Jp
dGUoIjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5P3Jh
bmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRvdy5maW5pc2hlZEltYWdlID0g
dHJ1ZTsgdGVzdCgpOyc+Iik7CiA8L3NjcmlwdD4KIDxib2R5PgogPHNjcmlwdD4KSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9vbmxv
YWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90
X2V2aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9vbmxv
YWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAKIDxzY3JpcHQgc3JjPSIvanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIC8vIFRo
ZSByYW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNsb3cgcmVzb3VyY2VzLgot
ICAgIHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3Nsb3ct
aW1hZ2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgdmFyIGltYWdlVVJMID0gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weT9yYW5kPSIgKyBNYXRo
LnJhbmRvbSgpOwogICAgIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgIHNldFRpbWVvdXQoZnVu
Y3Rpb24oKSB7CiAgICAgICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZvcm1hbmNlLmdldEVudHJp
ZXNCeU5hbWUoaW1hZ2VVUkwpLmxlbmd0aDsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBocAkobm9uZXhpc3RlbnQp
CkBAIC0xLDEwICswLDAgQEAKLTw/cGhwCi0gIGlmICghaXNzZXQoJF9TRVJWRVJbJ1BIUF9BVVRI
X1VTRVInXSkgfHwgIWlzc2V0KCRfUkVRVUVTVFsndWlkJ10pIHx8ICgkX1JFUVVFU1RbJ3VpZCdd
ICE9ICRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pKSB7Ci0gICBoZWFkZXIoJ1dXVy1BdXRoZW50
aWNhdGU6IEJhc2ljIHJlYWxtPSJXZWJLaXQgVGVzdCBSZWFsbSInKTsKLSAgIGhlYWRlcignSFRU
UC8xLjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgZWNobyAnQXV0aGVudGljYXRpb24gY2FuY2Vs
ZWQnOwotICAgZXhpdDsKLSAgfSBlbHNlIHsKLSAgIGVjaG8gIlVzZXI6IHskX1NFUlZFUlsnUEhQ
X0FVVEhfVVNFUiddfSwgcGFzc3dvcmQ6IHskX1NFUlZFUlsnUEhQX0FVVEhfUFcnXX0uIjsKLSAg
fQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1hdXRo
L2F1dGhvcml6ZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAko
bm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi0KLXJlcXVpcmVfb25jZSAiZGln
ZXN0LnBocCI7Ci0KLWlmIChlbXB0eSgkX1NFUlZFUlsnUEhQX0FVVEhfRElHRVNUJ10pKSB7Ci0g
ICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgaGVhZGVyKCJXV1ct
QXV0aGVudGljYXRlOiBEaWdlc3QgcmVhbG09XCJ7JHJlYWxtfVwiLHFvcD1cImF1dGhcIixub25j
ZT1cInskbm9uY2V9XCIsb3BhcXVlPVwieyRvcGFxdWV9XCIiKTsKLQotICAgIGVjaG8gIjxoMT5Z
b3UgYXJlIG5vdCBhbGxvd2VkIHRvIHNlZSB0aGlzIHNlY3JldC48L2gxPiI7Ci19IGVsc2VpZiAo
ISgkZGF0YSA9IGh0dHBfZGlnZXN0X3BhcnNlKCRfU0VSVkVSWydQSFBfQVVUSF9ESUdFU1QnXSkp
KSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgZWNobyAi
PGgxPkludmFsaWQgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNlaWYgKCEoJHVzZXJuYW1lID0g
dmFsaWRhdGVfZGlnZXN0KCRkYXRhKSkpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4wIDQwMSBVbmF1
dGhvcml6ZWQnKTsKLSAgICBlY2hvICI8aDE+V3JvbmcgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBl
bHNlIHsKLSAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbicpOwotICAgIGVjaG8g
J1VzZXI6ICcgLiAkdXNlcm5hbWUgLiAiXG4iOwotfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9kaWdlc3QucGhwCShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3Qt
YXV0aC9kaWdlc3QucGhwCShub25leGlzdGVudCkKQEAgLTEsNTIgKzAsMCBAQAotPD9waHAKLQot
JHJlYWxtID0gJ0RpZ2VzdCBBdXRoIFByb3RlY3RlZCBBcmVhJzsKLSRub25jZSA9IHVuaXFpZCgp
OwotJG9wYXF1ZSA9IG1kNSgkcmVhbG0pOwotCi0kdXNlcm5hbWUgPSAnZXZlcnlib2R5JzsKLSRw
YXNzd29yZCA9ICdsb3Zlc2JlZXInOwotCi1mdW5jdGlvbiBodHRwX2RpZ2VzdF9wYXJzZSgkdHh0
KQotewotICAgIC8vIHByb3RlY3QgYWdhaW5zdCBtaXNzaW5nIGRhdGEKLSAgICAkbmVlZGVkX3Bh
cnRzID0gWwotICAgICAgICAnbm9uY2UnID0+IDEsCi0gICAgICAgICduYycgPT4gMSwKLSAgICAg
ICAgJ2Nub25jZScgPT4gMSwKLSAgICAgICAgJ3FvcCcgPT4gMSwKLSAgICAgICAgJ3VzZXJuYW1l
JyA9PiAxLAotICAgICAgICAndXJpJyA9PiAxLAotICAgICAgICAncmVzcG9uc2UnID0+IDEKLSAg
ICBdOwotICAgICRkYXRhID0gW107Ci0gICAgJGtleXMgPSBpbXBsb2RlKCd8JywgYXJyYXlfa2V5
cygkbmVlZGVkX3BhcnRzKSk7Ci0KLSAgICBwcmVnX21hdGNoX2FsbCgnQCgnIC4gJGtleXMgLiAn
KT0oPzooW1wnIl0pKFteXDJdKz8pXDJ8KFteXHMsXSspKUAnLCAkdHh0LCAkbWF0Y2hlcywgUFJF
R19TRVRfT1JERVIpOwotCi0gICAgZm9yZWFjaCAoJG1hdGNoZXMgYXMgJG0pIHsKLSAgICAgICAg
JGRhdGFbJG1bMV1dID0gJG1bM10gPyAkbVszXSA6ICRtWzRdOwotICAgICAgICB1bnNldCgkbmVl
ZGVkX3BhcnRzWyRtWzFdXSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICRuZWVkZWRfcGFydHMgPyBm
YWxzZSA6ICRkYXRhOwotfQotCi1mdW5jdGlvbiB2YWxpZGF0ZV9kaWdlc3QoJGRhdGEpCi17Ci0g
ICAgZ2xvYmFsICRyZWFsbSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQ7Ci0KLSAgICBpZiAoJGRhdGFb
J3VzZXJuYW1lJ10gIT09ICR1c2VybmFtZSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAg
JEExID0gZ2V0X21kNV9vZigkZGF0YVsndXNlcm5hbWUnXSwgJHJlYWxtLCAkcGFzc3dvcmQpOwot
ICAgICRBMiA9IGdldF9tZDVfb2YoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10sICRkYXRhWyd1
cmknXSk7Ci0gICAgJHZhbGlkX3Jlc3BvbnNlID0gZ2V0X21kNV9vZigkQTEsICRkYXRhWydub25j
ZSddLCAkZGF0YVsnbmMnXSwgJGRhdGFbJ2Nub25jZSddLCAkZGF0YVsncW9wJ10sICRBMik7Ci0K
LSAgICByZXR1cm4gJGRhdGFbJ3Jlc3BvbnNlJ10gPT0gJHZhbGlkX3Jlc3BvbnNlID8gJHVzZXJu
YW1lIDogbnVsbDsKLX0KLQotZnVuY3Rpb24gZ2V0X21kNV9vZiguLi4kaXRlbXMpCi17Ci0gICAg
cmV0dXJuIG1kNShpbXBsb2RlKCc6JywgJGl0ZW1zKSk7Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQt
anNvbi13aXRoLWRlbGF5LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShyZXZpc2lvbiAyNzYwMjQp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgt
ZGVsYXkucGhwCShub25leGlzdGVudCkKQEAgLTEsMjkgKzAsMCBAQAotPD9waHAKLWhlYWRlcigi
RXhwaXJlczogVGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVQiKTsKLQotaWYgKCRfR0VUWydh
bGxvd0NhY2hlJ10pIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNv
biIpOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1u
by1idWZmZXJpbmctcGxlYXNlIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250cm9sOiBuby1jYWNo
ZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRlcigiUHJhZ21hOiBuby1j
YWNoZSIpOwotfQotCi1pZiAoJF9HRVRbJ2NvcnMnXSkgewotICAgIGhlYWRlcigiQWNjZXNzLUNv
bnRyb2wtQWxsb3ctT3JpZ2luOiAqIik7Ci19Ci0KLSRpdGVyYXRpb24gPSAkX0dFVFsnaXRlcmF0
aW9uJ107Ci0kZGVsYXkgPSAkX0dFVFsnZGVsYXknXTsKLQotZWNobyAiWyRpdGVyYXRpb24sICRk
ZWxheSAiOwotCi1mb3IgKCRpID0gMTsgJGkgPD0gJGl0ZXJhdGlvbjsgKyskaSkgewotICAgIGVj
aG8gIiwgJGksIFwiZm9vYmFyXCIiOwotICAgIC8vIEZvcmNlIGNvbnRlbnQgdG8gYmUgc2VudCB0
byB0aGUgYnJvd3NlciBhcyBpcy4KLSAgICBvYl9mbHVzaCgpOwotICAgIGZsdXNoKCk7Ci0gICAg
dXNsZWVwKCRkZWxheSAqIDEwMDApOwotfQotZWNobyAiXSI7Ci0/PgpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzOCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBz
eXMKK2ltcG9ydCB0aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcXVl
cnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKQorYWxsb3dfY2FjaGUgPSBxdWVyeS5nZXQoJ2FsbG93Q2FjaGUnLCBb
Tm9uZV0pWzBdCitjb3JzID0gcXVlcnkuZ2V0KCdjb3JzJywgW05vbmVdKVswXQorCitzeXMuc3Rk
b3V0LndyaXRlKCdFeHBpcmVzOiBUaHUsIDAxIERlYyAyMDAzIDE2OjAwOjAwIEdNVFxyXG4nKQor
CitpZiBhbGxvd19jYWNoZSBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250
ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cclxuJykKK2Vsc2U6CisgICAgc3lzLnN0ZG91dC53
cml0ZSgKKyAgICAgICAgJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1uby1idWZmZXJpbmct
cGxlYXNlXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwg
bXVzdC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAg
ICkKKworaWYgY29ycyBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdBY2Nlc3Mt
Q29udHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJykKKworc3lzLnN0ZG91dC53cml0ZSgnXHJcbicp
CisKK2l0ZXJhdGlvbiA9IGludChxdWVyeS5nZXQoJ2l0ZXJhdGlvbicsIFswXSlbMF0pCitkZWxh
eSA9IGludChxdWVyeS5nZXQoJ2RlbGF5JywgWzBdKVswXSkKKworc3lzLnN0ZG91dC53cml0ZSgn
W3t9LCB7fSAnLmZvcm1hdChpdGVyYXRpb24sIGRlbGF5KSkKKworZm9yIGkgaW4gcmFuZ2UoMSwg
aXRlcmF0aW9uICsgMSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnLCB7fSwgImZvb2JhciInLmZv
cm1hdChpKSkKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICB0aW1lLnNsZWVwKGRlbGF5IC8g
MTAwMCkKKworc3lzLnN0ZG91dC53cml0ZSgnXScpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKHJldmlzaW9uIDI3NjAyNCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJ
KG5vbmV4aXN0ZW50KQpAQCAtMSwxNSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgot
PGhlYWQ+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsK
LSAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLX0KLTwvc2NyaXB0PgotPC9oZWFkPgot
PGJvZHk+Ci08aWZyYW1lIHNyYz0iPD9waHAgZWNobyAkX0dFVFsnc3JjJ107ID8+Ij48L2lmcmFt
ZT4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2VjaG8taWZyYW1lLXNyYy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5CSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsMjUgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9z
CitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworc3JjID0g
cGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192
YWx1ZXM9VHJ1ZSkuZ2V0KCdzcmMnLCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKCdDb250
ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworcHJpbnQoJycnPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikge3sKKyAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1l
c0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfX0KKzwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0ie30iPjwvaWZyYW1lPgorPC9ib2R5Pgor
PC9odG1sPicnJy5mb3JtYXQoc3JjKSkKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVk
OiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
cHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFz
dC1tb2RpZmllZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkobm9uZXhp
c3RlbnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLWRhdGVfZGVmYXVsdF90aW1lem9uZV9zZXQo
J1VUQycpOwotJGZpbGVQYXRoID0gJF9HRVRbJ3BhdGgnXTsKLWlmIChmaWxlX2V4aXN0cygkZmls
ZVBhdGgpKSB7Ci0gICAgZWNobyBkYXRlKCJVIiwgZmlsZW10aW1lKCRmaWxlUGF0aCkpOwotfQot
Pz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2Rp
ZmllZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9m
aWxlLWxhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQg
c3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcGF0aCA9IG9zLnBhdGgu
YWJzcGF0aChwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVw
X2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3BhdGgnLCBbX19maWxlX19dKVswXSkKKworc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKK2lmIG9zLnBh
dGguaXNmaWxlKHBhdGgpOgorICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKG9zLnN0YXQocGF0aCku
c3RfbXRpbWUpLnNwbGl0KCcuJylbMF0pCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkKX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpB
ZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0
LW1vZGlmaWVkLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHAJKG5vbmV4aXN0ZW50KQpAQCAt
MSw3ICswLDAgQEAKLTw/cGhwCi0gICAgJGRhdGUgPSAkX0dFVFsnZGF0ZSddOwotICAgIGhlYWRl
cigiTGFzdC1Nb2RpZmllZDogJGRhdGUiKTsKLT8+Ci08c2NyaXB0PgotZG9jdW1lbnQud3JpdGUo
KG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5nKCkpOwotPC9zY3Jp
cHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVk
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3Qt
bW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvbGFzdC1tb2RpZmllZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDIwIEBACisj
IS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSB1cmxs
aWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK2RhdGUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdl
dCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2RhdGUn
LCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKAorICAgICdBY2Nlc3MtQ29udHJvbC1BbGxv
dy1PcmlnaW46ICpcclxuJworICAgICdFVGFnOiBmb29cclxuJworICAgICdMYXN0LU1vZGlmaWVk
OiB7fVxyXG4nCisgICAgJ0NhY2hlLUNvbnRyb2w6IG1heC1hZ2U9MFxyXG4nCisgICAgJ0NvbnRl
bnQtVHlwZTogdGV4dC9odG1sXHJcbicKKyAgICAnQ29udGVudC1MZW5ndGg6IDg0XHJcblxyXG4n
LmZvcm1hdChkYXRlKQorKQorCitwcmludCgnJyc8c2NyaXB0PgorZG9jdW1lbnQud3JpdGUoKG5l
dyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5nKCkpOworPC9zY3JpcHQ+
JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAt
MCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDUwICswLDAgQEAKLTw/cGhwCi0k
bmFtZSA9ICRfR0VUWyduYW1lJ107Ci0kc3RhbGxBdCA9ICRfR0VUWydzdGFsbEF0J107Ci0kc3Rh
bGxGb3IgPSAkX0dFVFsnc3RhbGxGb3InXTsKLSRzdGFsbFJlcGVhdCA9ICRfR0VUWydzdGFsbFJl
cGVhdCddOwotJG1pbWVUeXBlID0gJF9HRVRbJ21pbWVUeXBlJ107Ci0KLSRmaWxlID0gZm9wZW4o
JG5hbWUsICJyYiIpOwotaWYgKCEkZmlsZSkKLSAgICBkaWUoIkNhbm5vdCBvcGVuIGZpbGUuIik7
Ci0KLWhlYWRlcigiQ29udGVudC1UeXBlOiAiIC4gJG1pbWVUeXBlKTsKLWhlYWRlcigiQ29udGVu
dC1MZW5ndGg6ICIgLiBmaWxlc2l6ZSgkbmFtZSkpOwotCi1pZiAoaXNzZXQoJHN0YWxsQXQpICYm
IGlzc2V0KCRzdGFsbEZvcikpIHsKLSAgICAkc3RhbGxBdCA9IChpbnQpJHN0YWxsQXQ7Ci0gICAg
aWYgKCRzdGFsbEF0ID4gZmlsZXNpemUoJG5hbWUpKQotICAgICAgICBkaWUoIkluY29ycmVjdCB2
YWx1ZSBmb3Igc3RhbGxBdC4iKTsKLQotICAgICR3cml0dGVuVG90YWwgPSAwOwotICAgICRmaWxl
U2l6ZSA9IGZpbGVzaXplKCRuYW1lKTsKLQotICAgIHdoaWxlICgkd3JpdHRlblRvdGFsIDwgJGZp
bGVTaXplKSB7Ci0gICAgICAgICRzdGFsbEF0ID0gbWluKCRzdGFsbEF0LCAkZmlsZVNpemUgLSAk
d3JpdHRlblRvdGFsKTsKLSAgICAgICAgJHdyaXR0ZW4gPSAwOwotCi0gICAgICAgIHdoaWxlICgk
d3JpdHRlbiA8ICRzdGFsbEF0KSB7Ci0gICAgICAgICAgICAkd3JpdGUgPSBtaW4oMTAyNCwgJHN0
YWxsQXQgLSAkd3JpdHRlbik7Ci0gICAgICAgICAgICBlY2hvKGZyZWFkKCRmaWxlLCAkd3JpdGUp
KTsKLSAgICAgICAgICAgICR3cml0dGVuICs9ICR3cml0ZTsKLSAgICAgICAgICAgIGZsdXNoKCk7
Ci0gICAgICAgICAgICBvYl9mbHVzaCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgJHdyaXR0ZW5U
b3RhbCArPSAkd3JpdHRlbjsKLSAgICAgICAgJHJlbWFpbmluZyA9ICRmaWxlU2l6ZSAtICR3cml0
dGVuVG90YWw7Ci0gICAgICAgIGlmICghJHJlbWFpbmluZykKLSAgICAgICAgICAgIGJyZWFrOwot
Ci0gICAgICAgIHVzbGVlcCgkc3RhbGxGb3IgKiAxMDAwMDAwKTsKLSAgICAgICAgaWYgKCFpc3Nl
dCgkc3RhbGxSZXBlYXQpIHx8ICEkc3RhbGxSZXBlYXQpCi0gICAgICAgICAgICAkc3RhbGxBdCA9
ICRyZW1haW5pbmc7Ci0gICAgfQotfSBlbHNlIHsKLSAgICBlY2hvKGZyZWFkKCRmaWxlLCBmaWxl
c2l6ZSgkbmFtZSkpKTsKLSAgICBmbHVzaCgpOwotICAgIG9iX2ZsdXNoKCk7Ci19Ci1mY2xvc2Uo
JGZpbGUpOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQt
YW5kLXN0YWxsLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnB5CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsNjYgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lz
CitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK3F1ZXJ5
ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFu
a192YWx1ZXM9VHJ1ZSkKK25hbWUgPSBxdWVyeS5nZXQoJ25hbWUnLCBbJyddKVswXQorc3RhbGxf
YXQgPSBxdWVyeS5nZXQoJ3N0YWxsQXQnLCBbTm9uZV0pWzBdCitzdGFsbF9mb3IgPSBxdWVyeS5n
ZXQoJ3N0YWxsRm9yJywgW05vbmVdKVswXQorc3RhbGxfcmVwZWF0ID0gcXVlcnkuZ2V0KCdzdGFs
bFJlcGVhdCcsIFtOb25lXSlbMF0KK21pbWVfdHlwZSA9IHF1ZXJ5LmdldCgnbWltZVR5cGUnLCBb
JyddKVswXQorCitpZiBub3Qgb3MucGF0aC5pc2ZpbGUobmFtZSk6CisgICAgc3lzLnN0ZG91dC53
cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisgICAgc3lzLmV4aXQoMCkK
KworbmFtZSA9IG9zLnBhdGguYWJzcGF0aChuYW1lKQorCitvcGVuX2ZpbGUgPSBvcGVuKG5hbWUs
ICdyYicpCitmaWxlX3NpemUgPSBvcy5wYXRoLmdldHNpemUobmFtZSkKK2NvbnRlbnQgPSBvcGVu
X2ZpbGUucmVhZCgpCisKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0NvbnRlbnQtVHlwZToge31c
clxuJworICAgICdDb250ZW50LUxlbmd0aDoge31cclxuXHJcbicuZm9ybWF0KG1pbWVfdHlwZSwg
ZmlsZV9zaXplKQorKQorCitpZiBzdGFsbF9hdCBpcyBub3QgTm9uZSBhbmQgc3RhbGxfZm9yIGlz
IG5vdCBOb25lOgorICAgIHN0YWxsX2F0ID0gaW50KHN0YWxsX2F0KQorICAgIHN0YWxsX2ZvciA9
IGZsb2F0KHN0YWxsX2ZvcikKKworICAgIGlmIHN0YWxsX2F0ID4gZmlsZV9zaXplOgorICAgICAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdJbmNvcnJlY3QgdmFsdWUgZm9yIHN0YWxsQXQuJykKKyAgICAg
ICAgc3lzLmV4aXQoMCkKKworICAgIHdyaXR0ZW5fdG90YWwgPSAwCisgICAgd2hpbGUgd3JpdHRl
bl90b3RhbCA8IGZpbGVfc2l6ZToKKyAgICAgICAgc3RhbGxfYXQgPSBtaW4oc3RhbGxfYXQsIGZp
bGVfc2l6ZSAtIHdyaXR0ZW5fdG90YWwpCisgICAgICAgIHdyaXR0ZW4gPSAwCisKKyAgICAgICAg
d2hpbGUgd3JpdHRlbiA8IHN0YWxsX2F0OgorICAgICAgICAgICAgd3JpdGUgPSBtaW4oMTAyNCwg
c3RhbGxfYXQgLSB3cml0dGVuKQorCisgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAg
ICAgICAgICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGNvbnRlbnRbd3JpdHRlbl90b3RhbCAr
IHdyaXR0ZW46d3JpdHRlbl90b3RhbCArIHdyaXR0ZW4gKyB3cml0ZV0pCisgICAgICAgICAgICBz
eXMuc3Rkb3V0LmZsdXNoKCkKKworICAgICAgICAgICAgd3JpdHRlbiArPSB3cml0ZQorCisgICAg
ICAgIHdyaXR0ZW5fdG90YWwgKz0gd3JpdHRlbgorICAgICAgICByZW1haW5pbmcgPSBmaWxlX3Np
emUgLSB3cml0dGVuX3RvdGFsCisKKyAgICAgICAgaWYgcmVtYWluaW5nID09IDA6CisgICAgICAg
ICAgICBicmVhaworCisgICAgICAgIHRpbWUuc2xlZXAoc3RhbGxfZm9yKQorICAgICAgICBpZiBz
dGFsbF9yZXBlYXQgaXMgTm9uZToKKyAgICAgICAgICAgIHN0YWxsX2F0ID0gcmVtYWluaW5nCitl
bHNlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRl
KGNvbnRlbnQpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisKK29wZW5fZmlsZS5jbG9zZSgpCgpQ
cm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsx
ICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHAJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5OCArMCwwIEBACi08P3Bo
cAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLS8vIFRoaXMgc2NyaXB0
IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBmb3IgcmV0cmlldmluZyBmaWxlcy4gV2hlbiB0aGUg
c3RhdGUgaXMgc2V0IHRvCi0vLyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVycm9y
IHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsK
LSAgICBoZWFkZXIoIkhUVFAvMS4xIDUwMCBJbnRlcm5hbCBTZXJ2ZXIgRXJyb3IiKTsKLSAgICBl
Y2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0K
LQotaWYgKCFpc3NldCgkX0dFVFsndGVzdCddKSkgewotICAgIGhlYWRlcigiSFRUUC8xLjEgNTAw
IEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gInRlc3QgcGFyYW1ldGVyIG11c3Qg
YmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVcbiI7Ci0gICAgZXhpdCgpOwotfQot
Ci1mdW5jdGlvbiB0ZW1wUGF0aEJhc2UoKQotewotICAgIHJldHVybiBzeXNfZ2V0X3RlbXBfZGly
KCkgLiAiLyIgLiAkX0dFVFsndGVzdCddOwotfQotCi1mdW5jdGlvbiBzZXRTdGF0ZSgkbmV3U3Rh
dGUsICRmaWxlKQotewotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlLCAkbmV3U3RhdGUpOwot
fQotCi1mdW5jdGlvbiBnZXRTdGF0ZSgkZmlsZSkKLXsKLSAgICBpZiAoIWZpbGVfZXhpc3RzKCRm
aWxlKSkgewotICAgICAgICByZXR1cm4gIlVuaW5pdGlhbGl6ZWQiOwotICAgIH0KLSAgICByZXR1
cm4gZmlsZV9nZXRfY29udGVudHMoJGZpbGUpOwotfQotCi1mdW5jdGlvbiBjb250ZW50VHlwZSgk
cGF0aCkKLXsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wuaHRtbCQvIiwgJHBhdGgpKQotICAgICAg
ICByZXR1cm4gInRleHQvaHRtbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLm1hbmlmZXN0JC8i
LCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9jYWNoZS1tYW5pZmVzdCI7Ci0gICAgaWYg
KHByZWdfbWF0Y2goIi9cLmpzJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9qYXZh
c2NyaXB0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueG1sJC8iLCAkcGF0aCkpCi0gICAgICAg
IHJldHVybiAiYXBwbGljYXRpb24veG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueGh0bWwk
LyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNhdGlvbi94aHRtbCt4bWwiOwotICAg
IGlmIChwcmVnX21hdGNoKCIvXC5zdmckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBs
aWNhdGlvbi9zdmcreG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueHNsJC8iLCAkcGF0aCkp
Ci0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veHNsdCt4bWwiOwotICAgIGlmIChwcmVnX21h
dGNoKCIvXC5naWYkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJpbWFnZS9naWYiOwotICAg
IGlmIChwcmVnX21hdGNoKCIvXC5qcGckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJpbWFn
ZS9qcGVnIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wucG5nJC8iLCAkcGF0aCkpCi0gICAgICAg
IHJldHVybiAiaW1hZ2UvcG5nIjsKLSAgICByZXR1cm4gInRleHQvcGxhaW4iOwotfQotCi1mdW5j
dGlvbiBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCkKLXsKLSAgICBoZWFkZXIoIkV4cGlyZXM6
IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250
cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRlcigi
UHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRo
KQotewotICAgIGdsb2JhbCAkc3RhdGVGaWxlOwotICAgICRzdGF0ZSA9IGdldFN0YXRlKCRzdGF0
ZUZpbGUpOwotICAgIGlmICgkc3RhdGUgPT0gIk9mZmxpbmUiKSB7Ci0gICAgICAgICMgU2ltdWxh
dGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4K
LSAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSAzMDcgVGVtcG9yYXJ5IFJlZGlyZWN0Jyk7Ci0gICAg
ICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX1NFUlZFUlsnUkVRVUVTVF9VUkknXSk7ICMgUmVk
aXJlY3QgdG8gc2VsZi4KLSAgICAgICAgaGVhZGVyKCdDb250ZW50LUxlbmd0aDogMScpOwotICAg
ICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiA1JywgZmFsc2UpOyAjIE11bHRpcGxlIGNvbnRl
bnQtbGVuZ3RoIGhlYWRlcnMsIHNvbWUgbmV0d29yayBzdGFja3MgY2FuIGRldGVjdCB0aGlzIGNv
bmRpdGlvbiBmYXN0ZXIuCi0gICAgICAgIGVjaG8gIkludGVudGlvbmFsbHkgaW5jb3JyZWN0IHJl
c3BvbnNlLiI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8gQSBsaXR0bGUgc2VjdXJ1dHkgY2hl
Y2tpbmcgY2FuJ3QgaHVydC4KLSAgICAgICAgaWYgKHN0cnN0cigkcGF0aCwgIi4uIikpCi0gICAg
ICAgICAgICBleGl0OwotCi0gICAgICAgIGlmICgkcGF0aFswXSA9PSAnLycpCi0gICAgICAgICAg
ICAkcGF0aCA9ICcuLicgLiAkcGF0aDsKLQotICAgICAgICBpZiAoISRfR0VUWydhbGxvdy1jYWNo
aW5nJ10pCi0gICAgICAgICAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0KLSAgICAg
ICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgewotICAgICAgICAgICAgaGVhZGVyKCJMYXN0LU1v
ZGlmaWVkOiAiIC4gZ21kYXRlKCJELCBkIE0gWSBIOmk6cyBUIiwgZmlsZW10aW1lKCRwYXRoKSkp
OwotICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LVR5cGU6ICIgLiBjb250ZW50VHlwZSgkcGF0
aCkpOwotICAgICAgICAKLSAgICAgICAgICAgIHByaW50IGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRo
KTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGhlYWRlcignSFRUUC8xLjEgNDA0IE5v
dCBGb3VuZCcpOwotICAgICAgICB9Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVJbmNyZWFz
ZVJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewotICAgICRyZXNvdXJjZUNvdW50RmlsZSA9
IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAgJHJlc291cmNlQ291bnQgPSBnZXRTdGF0
ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVjZXMgPSBleHBsb2RlKCIgIiwgJHJlc291
cmNlQ291bnQpOwotICAgICRjb3VudCA9IDA7Ci0gICAgaWYgKGNvdW50KCRwaWVjZXMpID09IDIg
JiYgJHBpZWNlc1swXSA9PSAkcGF0aCkgewotICAgICAgICAkY291bnQgPSAxICsgJHBpZWNlc1sx
XTsKLSAgICB9IGVsc2UgewotICAgICAgICAkY291bnQgPSAxOwotICAgIH0KLSAgICBmaWxlX3B1
dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsICRwYXRoIC4gIiAiIC4gJGNvdW50KTsKLSAg
ICBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKTsKLX0KLQotZnVuY3Rpb24gaGFuZGxlUmVzZXRSZXNv
dXJjZUNvdW50Q29tbWFuZCgpCi17Ci0gICAgJHJlc291cmNlQ291bnRGaWxlID0gdGVtcFBhdGhC
YXNlKCkgLiAiLWNvdW50IjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZp
bGUsIDApOwotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoJ0hU
VFAvMS4xIDIwMCBPSycpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVHZXRSZXNvdXJjZUNvdW50Q29t
bWFuZCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAu
ICItY291bnQiOwotICAgICRyZXNvdXJjZUNvdW50ID0gZ2V0U3RhdGUoJHJlc291cmNlQ291bnRG
aWxlKTsKLSAgICAkcGllY2VzID0gZXhwbG9kZSgiICIsICRyZXNvdXJjZUNvdW50KTsKLSAgICBn
ZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMSAyMDAgT0sn
KTsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2VzWzBdID09ICRwYXRoKSB7
Ci0gICAgICAgIGVjaG8gJHBpZWNlc1sxXTsKLSAgICB9IGVsc2UgewotICAgICAgICBlY2hvIDA7
Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVTdGFydFJlc291cmNlUmVxdWVzdHNMb2coKQot
ewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBm
aWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAgIiIpOwotfQotCi1mdW5jdGlvbiBo
YW5kbGVDbGVhclJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUg
PSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3Vy
Y2VMb2dGaWxlLCAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJlc291cmNlUmVxdWVzdHNM
b2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsK
LQotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoIkNvbnRlbnQt
VHlwZTogdGV4dC9wbGFpbiIpOwotCi0gICAgcHJpbnQgZmlsZV9nZXRfY29udGVudHMoJHJlc291
cmNlTG9nRmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUxvZ1Jlc291cmNlUmVxdWVzdCgkcGF0
aCkKLXsKLSAgICAkcmVzb3VyY2VMb2dGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLWxvZyI7Ci0g
ICAgCi0gICAgJG5ld0RhdGEgPSAiXG4iLiRwYXRoOwotICAgIC8vIERvY3VtZW50YXRpb24gc2F5
cyB0aGF0IGFwcGVuZHMgYXJlIGF0b21pYy4KLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3Vy
Y2VMb2dGaWxlLCAkbmV3RGF0YSwgRklMRV9BUFBFTkQpOwotfQotCi0kc3RhdGVGaWxlID0gdGVt
cFBhdGhCYXNlKCkgLiAiLXN0YXRlIjsKLSRjb21tYW5kID0gJF9HRVRbJ2NvbW1hbmQnXTsKLWlm
ICgkY29tbWFuZCkgewotICAgIGlmICgkY29tbWFuZCA9PSAiY29ubmVjdCIpCi0gICAgICAgIHNl
dFN0YXRlKCJPbmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAi
ZGlzY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJPZmZsaW5lIiwgJHN0YXRlRmlsZSk7Ci0g
ICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImluY3JlYXNlLXJlc291cmNlLWNvdW50IikKLSAgICAg
ICAgaGFuZGxlSW5jcmVhc2VSZXNvdXJjZUNvdW50Q29tbWFuZCgkX0dFVFsncGF0aCddKTsKLSAg
ICBlbHNlIGlmICgkY29tbWFuZCA9PSAicmVzZXQtcmVzb3VyY2UtY291bnQiKQotICAgICAgICBo
YW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5kKCk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQg
PT0gImdldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZUdldFJlc291cmNlQ291bnRD
b21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJzdGFydC1y
ZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZVN0YXJ0UmVzb3VyY2VSZXF1ZXN0
c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJjbGVhci1yZXNvdXJjZS1yZXF1ZXN0
LWxvZyIpCi0gICAgICAgIGhhbmRsZUNsZWFyUmVzb3VyY2VSZXF1ZXN0c0xvZygpOwotICAgIGVs
c2UgaWYgKCRjb21tYW5kID09ICJnZXQtcmVzb3VyY2UtcmVxdWVzdC1sb2ciKQotICAgICAgICBo
YW5kbGVHZXRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0g
ImxvZy1yZXNvdXJjZS1yZXF1ZXN0IikKLSAgICAgICAgaGFuZGxlTG9nUmVzb3VyY2VSZXF1ZXN0
KCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UKLSAgICAgICAgZWNobyAiVW5rbm93biBjb21tYW5k
OiAiIC4gJGNvbW1hbmQgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHJlcXVlc3RlZFBhdGgg
PSAkX0dFVFsncGF0aCddOwotZ2VuZXJhdGVSZXNwb25zZSgkcmVxdWVzdGVkUGF0aCk7Ci0/PgpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwx
NzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworIyBUaGlzIHNjcmlwdCBhY3RzIGFzIGEg
c3RhdGVmdWwgcHJveHkgZm9yIHJldHJpZXZpbmcgZmlsZXMuIFdoZW4gdGhlIHN0YXRlIGlzIHNl
dCB0bworIyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVycm9yIHdpdGggYSBub25z
ZW5zZSByZXNwb25zZS4KKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGVtcGZpbGUK
K2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCitmcm9tIHBvcnRhYmlsaXR5TGF5ZXIgaW1w
b3J0IGdldF9zdGF0ZSwgc2V0X3N0YXRlCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2Vf
cXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycp
LCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQordGVzdCA9IHF1ZXJ5LmdldCgndGVzdCcsIFtOb25l
XSlbMF0KK2NvbW1hbmQgPSBxdWVyeS5nZXQoJ2NvbW1hbmQnLCBbTm9uZV0pWzBdCisKK2lmIHRl
c3QgaXMgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAnc3RhdHVzOiA1MDBc
clxuJworICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAg
J3Rlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVc
bicKKyAgICApCisgICAgc3lzLmV4aXQoMCkKKworCitkZWYgdGVtcF9wYXRoX2Jhc2UoKToKKyAg
ICByZXR1cm4gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgdGVzdCkKKworCitz
dGF0ZV9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctc3RhdGUnCisKKworZGVmIGdlbmVyYXRl
X25vX2NhY2hlX2h0dHBfaGVhZGVyKCk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAg
J0V4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UXHJcbicKKyAgICAgICAgJ0Nh
Y2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlXHJcbicKKyAg
ICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAgICkKKworCitkZWYgY29udGVudF90eXBl
KHBhdGgpOgorICAgIHJldHVybiB7CisgICAgICAgICdodG1sJzogJ3RleHQvaHRtbCcsCisgICAg
ICAgICdtYW5pZmVzdCc6ICd0ZXh0L2NhY2hlLW1hbmlmZXN0JywKKyAgICAgICAgJ2pzJzogJ3Rl
eHQvamF2YXNjcmlwdCcsCisgICAgICAgICd4bWwnOiAnYXBwbGljYXRpb24veG1sJywKKyAgICAg
ICAgJ3hodG1sJzogJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsCisgICAgICAgICdzdmcnOiAnYXBw
bGljYXRpb24vc3ZnK3htbCcsCisgICAgICAgICd4c2wnOiAnYXBwbGljYXRpb24veHNsdCt4bWwn
LAorICAgICAgICAnZ2lmJzogJ2ltYWdlL2dpZicsCisgICAgICAgICdqcGcnOiAnaW1hZ2UvanBl
ZycsCisgICAgICAgICdwbmcnOiAnaW1hZ2UvcG5nJworICAgIH0uZ2V0KHBhdGguc3BsaXQoJy4n
KVstMV0sICd0ZXh0L3BsYWluJykKKworCitkZWYgZ2VuZXJhdGVfcmVzcG9uc2UocGF0aCk6Cisg
ICAgc3RhdGUgPSBnZXRfc3RhdGUoc3RhdGVfZmlsZSkKKyAgICBpZiBzdGF0ZSA9PSAnT2ZmbGlu
ZSc6CisgICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGgg
YSBub25zZW5zZSByZXNwb25zZS4KKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAg
ICAgICdzdGF0dXM6IDMwN1xyXG4nCisgICAgICAgICAgICAnTG9jYXRpb246IHt9XHJcblxyXG4n
ICAjIFJlZGlyZWN0IHRvIHNlbGYuCisgICAgICAgICAgICAnSW50ZW50aW9uYWxseSBpbmNvcnJl
Y3QgcmVzcG9uc2UuJy5mb3JtYXQob3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfVVJJJywgJycpKQor
ICAgICAgICApCisgICAgZWxzZToKKyAgICAgICAgIyBBIGxpdHRsZSBzZWN1cnV0eSBjaGVja2lu
ZyBjYW4ndCBodXJ0LgorICAgICAgICBpZiAnLi4nIGluIHBhdGg6CisgICAgICAgICAgICBzeXMu
c3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKyAgICAgICAg
ICAgIHN5cy5leGl0KDApCisKKyAgICAgICAgaWYgbGVuKHBhdGgpID4gMCBhbmQgcGF0aFswXSA9
PSAnLyc6CisgICAgICAgICAgICBwYXRoID0gJy4uJyArIHBhdGgKKworICAgICAgICBpZiAnYWxs
b3ctY2FjaGluZycgbm90IGluIHF1ZXJ5LmtleXMoKToKKyAgICAgICAgICAgIGdlbmVyYXRlX25v
X2NhY2hlX2h0dHBfaGVhZGVyKCkKKworICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShwYXRoKToK
KyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAgICAgICAgJ0xhc3QtTW9k
aWZpZWQ6IHt9IEdNVFxyXG4nCisgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZToge31cclxu
XHJcbicuZm9ybWF0KGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAob3Muc3RhdChwYXRoKS5zdF9t
dGltZSkuc3RyZnRpbWUoJyVhLCAlZCAlYiAlWSAlSDolTTolUycpLCBjb250ZW50X3R5cGUocGF0
aCkpCisgICAgICAgICAgICApCisKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAncmInKSBh
cyBvcGVuX2ZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisgICAgICAg
ICAgICAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxlLnJlYWQoKSkKKyAgICAg
ICAgZWxzZToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogNDA0XHJcblxy
XG4nKQorCisKK2RlZiBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291bnRfY29tbWFuZChwYXRo
KToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctY291bnQn
CisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSkKKyAg
ICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAgY291bnQgPSAwCisgICAg
aWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBdID09IHBhdGg6CisgICAgICAgIGNvdW50
ID0gMSArIGludChwaWVjZXNbMV0pCisgICAgZWxzZToKKyAgICAgICAgY291bnQgPSAxCisKKyAg
ICBzZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSwgJ3t9IHt9Jy5mb3JtYXQocGF0aCwgY291
bnQpKQorICAgIGdlbmVyYXRlX3Jlc3BvbnNlKHBhdGgpCisKKworZGVmIGhhbmRsZV9yZXNldF9y
ZXNvdXJjZV9jb3VudF9jb21tYW5kKCk6CisgICAgcmVzb3VyY2VfY291bnRfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHNldF9zdGF0ZShyZXNvdXJjZV9jb3VudF9maWxl
LCAnMCcpCisgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIoKQorICAgIHN5cy5zdGRv
dXQud3JpdGUoJ3N0YXR1czogMjAwXHJcblxyXG4nKQorCisKK2RlZiBoYW5kbGVfZ2V0X3Jlc291
cmNlX2NvdW50X2NvbW1hbmQocGF0aCk6CisgICAgcmVzb3VyY2VfY291bnRfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHJlc291cmNlX2NvdW50ID0gZ2V0X3N0YXRlKHJl
c291cmNlX2NvdW50X2ZpbGUpCisgICAgcGllY2VzID0gcmVzb3VyY2VfY291bnQuc3BsaXQoJyAn
KQorICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKyAgICBzeXMuc3Rkb3V0Lndy
aXRlKCdzdGF0dXM6IDIwMFxyXG5cclxuJykKKworICAgIGlmIGxlbihwaWVjZXMpID09IDIgYW5k
IHBpZWNlc1swXSA9PSBwYXRoOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKHN0cihwaWVjZXNb
MV0pKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJzAnKQorCisKK2RlZiBo
YW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCk6CisgICAgcmVzb3VyY2VfbG9nX2Zp
bGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1sb2cnCisgICAgc2V0X3N0YXRlKHJlc291cmNlX2xv
Z19maWxlLCAnJykKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRt
bFxyXG5cclxuJykKKworCitkZWYgaGFuZGxlX2dldF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKToK
KyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWxvZycKKyAgICBn
ZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29u
dGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKKyAgICB3aXRoIG9wZW4ocmVzb3VyY2Vf
bG9nX2ZpbGUsICdyJykgYXMgb3Blbl9maWxlOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKG9w
ZW5fZmlsZS5yZWFkKCkpCisKKworZGVmIGhhbmRsZV9sb2dfcmVzb3VyY2VfcmVxdWVzdChwYXRo
KToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWxvZycKKyAg
ICBuZXdfZGF0YSA9ICdcbicgKyBwYXRoCisKKyAgICB3aXRoIG9wZW4ocmVzb3VyY2VfbG9nX2Zp
bGUsICdhJykgYXMgb3Blbl9maWxlOgorICAgICAgICBvcGVuX2ZpbGUud3JpdGUobmV3X2RhdGEp
CisKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxu
JykKKworCitpZiBjb21tYW5kIGlzIG5vdCBOb25lOgorICAgIGlmIGNvbW1hbmQgPT0gJ2Nvbm5l
Y3QnOgorICAgICAgICBzZXRfc3RhdGUoc3RhdGVfZmlsZSwgJ09ubGluZScpCisgICAgICAgIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgIGVs
aWYgY29tbWFuZCA9PSAnZGlzY29ubmVjdCc6CisgICAgICAgIHNldF9zdGF0ZShzdGF0ZV9maWxl
LCAnT2ZmbGluZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnaW5jcmVhc2UtcmVzb3VyY2Ut
Y291bnQnOgorICAgICAgICBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291bnRfY29tbWFuZChx
dWVyeS5nZXQoJ3BhdGgnLCBbJyddKVswXSkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ3Jlc2V0LXJl
c291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX3Jlc2V0X3Jlc291cmNlX2NvdW50X2NvbW1h
bmQoKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLWNvdW50JzoKKyAgICAgICAg
aGFuZGxlX2dldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10p
WzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAnc3RhcnQtcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgor
ICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNv
bW1hbmQgPT0gJ2xlYXItcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgorICAgICAgICBoYW5kbGVfc3Rh
cnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2dldC1yZXNv
dXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNf
bG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xvZy1yZXNvdXJjZS1yZXF1ZXN0JzoKKyAgICAg
ICAgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBd
KQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAgICAnQ29u
dGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAgICAgICdVbmtub3duIGNvbW1h
bmQ6IHt9XG4nLmZvcm1hdChjb21tYW5kKQorICAgICAgICApCisgICAgICAgIHN5cy5leGl0KDAp
CitlbHNlOgorICAgIHJlcXVlc3RfcGF0aCA9IHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBdCisg
ICAgZ2VuZXJhdGVfcmVzcG9uc2UocmVxdWVzdF9wYXRoKQoKUHJvcGVydHkgY2hhbmdlcyBvbjog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9wb3J0YWJpbGl0eUxheWVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHJldmlzaW9uIDI3NjAyNCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHdv
cmtpbmcgY29weSkKQEAgLTcyLDcgKzcyLDcgQEAgZGVmIGdldF9zdGF0ZShmaWxlLCBkZWZhdWx0
PSdVbmluaXRpYWxpegogICAgICAgICByZXR1cm4gZmlsZS5yZWFkKCkKIAogCi1kZWYgc2V0X3N0
YXRlKHN0YXRlLCBmaWxlKToKK2RlZiBzZXRfc3RhdGUoZmlsZSwgc3RhdGUpOgogICAgIHdpdGgg
b3BlbihmaWxlLCAndycpIGFzIG9wZW5fZmlsZToKICAgICAgICAgb3Blbl9maWxlLndyaXRlKHN0
YXRlKQogICAgIHJldHVybiBzdGF0ZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShub25leGlzdGVudCkKQEAg
LTEsMTAgKzAsMCBAQAotPD9waHAKLWlmIChzdHJwb3MoJF9TRVJWRVJbJ0hUVFBfQUNDRVBUJ10s
ICd2aWRlby8qJykgIT09IGZhbHNlKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMSAzMDEgTW92ZWQg
UGVybWFuZW50bHknKTsKLSAgICBoZWFkZXIoJ0xvY2F0aW9uOiAnIC4gJF9HRVRbJ3ZpZGVvJ10p
OwotICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG11c3QtcmV2YWxpZGF0ZScp
OwotICAgIHJldHVybjsKLX0KLQotaGVhZGVyKCdIVFRQLzEuMSA0MDAgQmFkIFJlcXVlc3QnKTsK
LT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12
aWRlby1pZi1hY2NlcHRlZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQkobm9uZXhpc3RlbnQp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1p
Zi1hY2NlcHRlZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE5IEBACisjIS91c3IvYmlu
L2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSB1cmxsaWIucGFyc2Ug
aW1wb3J0IHBhcnNlX3FzCisKK3ZpZGVvID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZ
X1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCd2aWRlbycsIFsnJ10p
WzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicpCisK
K2lmICd2aWRlby8qJyBpbiBvcy5lbnZpcm9uLmdldCgnSFRUUF9BQ0NFUFQnLCAnJyk6CisgICAg
c3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ3N0YXR1czogMzAxXHJcbicKKyAgICAgICAgJ0xv
Y2F0aW9uOiB7fVxyXG4nCisgICAgICAgICdDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbXVzdC1y
ZXZhbGlkYXRlXHJcblxyXG4nLmZvcm1hdCh2aWRlbykKKyAgICApCisgICAgc3lzLmV4aXQoMCkK
Kworc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDBcclxuXHJcbicpCgpQcm9wZXJ0eSBjaGFu
Z2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRl
by1pZi1hY2NlcHRlZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCww
ICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAko
cmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVz
ZXQtdGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi1y
ZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBf
ZGlyKCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwot
ICAgIGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAk
X0dFVFsnZmlsZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1dF9jb250ZW50cygkdG1wRmlsZSwgInRl
c3QiKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiAiIC4gJHRt
cEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLWlmICghdW5saW5rKCR0bXBGaWxlKSkgewot
ICAgIGVjaG8gIkZBSUw6IFVuYWJsZSB0byBkZWxldGUgZmlsZTogIiAuICR0bXBGaWxlIC4gIlxu
IjsKLSAgICBleGl0KCk7Ci19Ci0/PgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocApfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkRlbGV0
ZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0xICswLDAgIyMKLSoKXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1p
bWFnZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
c2xvdy1pbWFnZS5waHAJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwCShub25leGlzdGVudCkKQEAgLTEsNyArMCwwIEBA
Ci08P3BocAotdXNsZWVwKDQwMDAwMCk7Ci1oZWFkZXIoIkNvbnRlbnQtVHlwZTogaW1hZ2UvcG5n
Iik7Ci1AcmVhZGZpbGUoInNxdWFyZTEwMC5wbmciKTsKLT8+Ci0KLQpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnB5CShub25leGlzdGVudCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwxMiBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBv
cnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCisKK3RpbWUuc2xlZXAoMC40KQorCitzeXMu
c3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IGltYWdlL3BuZ1xyXG5cclxuJykKK3dpdGggb3Bl
bignc3F1YXJlMTAwLnBuZycsICdyYicpIGFzIG9wZW5fZmlsZToKKyAgICBzeXMuc3Rkb3V0LmZs
dXNoKCkKKyAgICBzeXMuc3Rkb3V0LmJ1ZmZlci53cml0ZShvcGVuX2ZpbGUucmVhZCgpKQoKUHJv
cGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1p
bWFnZS5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisq
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwCShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlm
eS1kb25lLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDggKzAsMCBAQAotPD9waHAKLXVzbGVlcCgx
MDAwMDApOwotPz4KLURPTkUhCi08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucHkJKG5vbmV4
aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnkt
ZG9uZS5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEzIEBACisjIS91c3IvYmluL2VudiBw
eXRob24zCisKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCisKK3RpbWUuc2xlZXAoMC4xKQorCitz
eXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKK3ByaW50
KCcnJ0RPTkUhCis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworPC9zY3JpcHQ+JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocAkobm9uZXhp
c3RlbnQpCkBAIC0xLDIyICswLDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5
TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBlY2hvICJGQUlM
OiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHRtcEZp
bGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmlsZW5hbWUnXTsKLQotJHN0
YXQgPSBzdGF0KCR0bXBGaWxlKTsKLWlmICghJHN0YXQpIHsKLSAgICBlY2hvICJGQUlMOiBzdGF0
KCkgY2FsbCBmYWlsZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJG10aW1lID0gJHN0YXRbJ210
aW1lJ10gKyAxOwotCi1pZiAoIXRvdWNoKCR0bXBGaWxlLCAkbXRpbWUpKSB7Ci0gICAgZWNobyAi
RkFJTDogdG91Y2goKSBjYWxsIGZhaWxlZC5cbiI7Ci19Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnBocAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1wLWZpbGUucGhwCShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10
ZW1wLWZpbGUucGhwCShub25leGlzdGVudCkKQEAgLTEsMTcgKzAsMCBAQAotPD9waHAKLXJlcXVp
cmVfb25jZSAncG9ydGFiaWxpdHlMYXllci5waHAnOwotCi1pZiAoIXN5c19nZXRfdGVtcF9kaXIo
KSkgewotICAgIGVjaG8gIkZBSUw6IE5vIHRlbXAgZGlyIHdhcyByZXR1cm5lZC5cbiI7Ci0gICAg
ZXhpdCgpOwotfQotCi0kdG1wRmlsZSA9IHN5c19nZXRfdGVtcF9kaXIoKSAuICIvIiAuICRfR0VU
WydmaWxlbmFtZSddOwotCi1pZiAoIWZpbGVfcHV0X2NvbnRlbnRzKCR0bXBGaWxlLCAkX0dFVFsn
ZGF0YSddKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiAiIC4g
JHRtcEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLQotZWNobyAkdG1wRmlsZTsKLT8+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFt
ZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9w
dGlvbnMtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93Lmh0bWwJKHJldmlzaW9uIDI3NjAyNCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1l
LW9wdGlvbnMtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93Lmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEwLDYgKzEwLDYgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiA8L3NjcmlwdD4KIDwv
aGVhZD4KIDxoZWFkPgotPGlmcmFtZSBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvZWNoby1pZnJhbWUtc3JjLnBocD9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9zZWN1
cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtZnJhbWUtYW5jZXN0
b3JzLXNhbWUtb3JpZ2luLWFsbG93LmNnaSI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0Ev
LzEyNy4wLjAuMSUzQTgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFt
ZS1vcHRpb25zLWZyYW1lLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5jZ2kiPjwvaWZyYW1l
PgogPC9oZWFkPgogPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9z
d2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24uaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRz
dGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFuZGluZy1sb2Fk
LWNhbmNlbGxhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1MSw3IEBAIHdpbmRv
dy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBk
b2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGlzRmlyc3RQYWdlKCkgPyAiZmlyc3QiIDogIjxpZnJh
bWUgc3JjPScvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwJz4iOworICAgIGRvY3VtZW50LmJvZHku
aW5uZXJIVE1MID0gaXNGaXJzdFBhZ2UoKSA/ICJmaXJzdCIgOiAiPGlmcmFtZSBzcmM9Jy9yZXNv
dXJjZXMvc2xvdy1pbWFnZS5weSc+IjsKIAogICAgIGlmIChpc0ZpcnN0UGFnZSgpKSB7CiAgICAg
ICAgIGlmIChoYXNJbml0aWFsaXplZFN3aXBlVGVzdCgpKSB7CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3IuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRl
LWFmdGVyLW5ldHdvcmstZXJyb3IuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAgZnVuY3Rpb24gbG9nKG1lc3NhZ2Up
CiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3
IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVy
cm9yJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNl
KTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yJmNvbW1hbmQ9IiAr
IChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2Vu
ZCgiIik7CiB9CiAKQEAgLTM0LDcgKzM0LDcgQEAgZnVuY3Rpb24gb25SZWFkeVN0YXRlQ2hhbmdl
KCkKIHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVl
c3QoKTsKIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBvblJlYWR5U3RhdGVDaGFuZ2U7Ci14aHIu
b3BlbignR0VUJywgJy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9eG1saHR0
cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZwYXRoPS8nLCB0cnVlKTsKK3hoci5v
cGVuKCdHRVQnLCAnL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PXhtbGh0dHBy
ZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3ImcGF0aD0vJywgdHJ1ZSk7CiB4aHIuc2Vu
ZChudWxsKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUt
aW52YWxpZGF0aW9uLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1s
aHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNo
ZS1pbnZhbGlkYXRpb24ucHkJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZs
aWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkJKHdvcmtpbmcgY29weSkKQEAgLTM2LDcgKzM2LDcg
QEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250
cm9sLU1heC1BZ2U6IDEwXHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAg
ICAgIHNldF9zdGF0ZSgnT3B0aW9uc1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0
ZShzdGF0ZUZpbGUsICdPcHRpb25zU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAK
QEAgLTQ4LDcgKzQ4LDcgQEAgZWxpZiBzdGF0ZSA9PSAnT3B0aW9uc1NlbnQnOgogICAgICAgICAg
ICAgJ1xyXG4nCiAgICAgICAgICAgICAnUEFTUzogRmlyc3QgUFVUIHJlcXVlc3QuJwogICAgICAg
ICApCi0gICAgICAgIHNldF9zdGF0ZSgnRmlyc3RQVVRTZW50Jywgc3RhdGVGaWxlKQorICAgICAg
ICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRmlyc3RQVVRTZW50JykKICAgICBlbHNlOgogICAgICAg
ICBmYWlsKCkKIApAQCAtNjEsNyArNjEsNyBAQCBlbGlmIHN0YXRlID09ICdGaXJzdFBVVFNlbnQn
OgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LUhlYWRlcnM6IHgtd2Via2l0LXRl
c3RcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRl
KCdTZWNvbmRPUFRJT05TU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRl
RmlsZSwgJ1NlY29uZE9QVElPTlNTZW50JykKICAgICBlbGlmIG9zLmVudmlyb24uZ2V0KCdSRVFV
RVNUX01FVEhPRCcpID09ICdQVVQnOgogICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKAogICAgICAg
ICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbjogaHR0cDovLzEyNy4wLjAuMTo4MDAw
XHJcbicKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS10aW1lb3V0LnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2Vz
L2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS10aW1lb3V0LnB5CShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291
cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weQkod29y
a2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQCBpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6
CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMVxyXG4nCiAgICAgICAgICAg
ICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ09wdGlvbnNTZW50Jywgc3Rh
dGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnT3B0aW9uc1NlbnQnKQogICAg
IGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OSw3ICs0OSw3IEBAIGVsaWYgc3RhdGUgPT0g
J09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgJ1BBU1M6IEZp
cnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0ZpcnN0UFVU
U2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0UFVU
U2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTYzLDcgKzYzLDcgQEAgZWxp
ZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1N
YXgtQWdlOiAxXHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNl
dF9zdGF0ZSgnU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0
ZShzdGF0ZUZpbGUsICdTZWNvbmRPUFRJT05TU2VudCcpCiAgICAgZWxpZiBvcy5lbnZpcm9uLmdl
dCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnUFVUJzoKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgK
ICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46IGh0dHA6Ly8xMjcuMC4w
LjE6ODAwMFxyXG4nCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMv
YWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5CShyZXZpc2lvbiAyNzYwMjQp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nl
c3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTM3
LDcgKzM3LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAgJ0Fj
Y2Vzcy1Db250cm9sLU1heC1BZ2U6IDEwXHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAg
ICApCi0gICAgICAgIHNldF9zdGF0ZSgnT3B0aW9uc1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAg
IHNldF9zdGF0ZShzdGF0ZUZpbGUsICdPcHRpb25zU2VudCcpCiAgICAgZWxzZToKICAgICAgICAg
ZmFpbCgpCiAKQEAgLTQ5LDcgKzQ5LDcgQEAgZWxpZiBzdGF0ZSA9PSAnT3B0aW9uc1NlbnQnOgog
ICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAnUEFTUzogRmlyc3QgUFVUIHJlcXVlc3Qu
JwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRmlyc3RQVVRTZW50Jywgc3RhdGVGaWxl
KQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRmlyc3RQVVRTZW50JykKICAgICBlbHNl
OgogICAgICAgICBmYWlsKCkKIApAQCAtNjksNyArNjksNyBAQCBlbGlmIHN0YXRlID09ICdGaXJz
dFBVVFNlbnQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LUhlYWRlcnM6IHgt
d2Via2l0LXRlc3RcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAgICAg
c2V0X3N0YXRlKCdGQUlMU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNl
dF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMU2Vjb25kT1BUSU9OU1NlbnQnKQogICAgIGVsc2U6CiAg
ICAgICAgIGZhaWwoKQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1
ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVkLXhzcmYucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJj
ZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5CShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9h
Y2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVkLXhzcmYucHkJKHdvcmtpbmcgY29weSkKQEAg
LTUzLDcgKzUzLDcgQEAgZWxpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6CiAgICAgICAgICAg
ICAnXHJcbicKICAgICAgICAgICAgICdGQUlMOiBUaGlzIHJlcXVlc3Qgc2hvdWxkIG5vdCBiZSBk
aXNwbGF5ZWRcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0RlbmllZCcsIHN0YXRl
RmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0RlbmllZCcpCiAgICAgZWxzZToK
ICAgICAgICAgZmFpbChzdGF0ZSkKIApAQCAtNjcsNyArNjcsNyBAQCBlbGlmIHN0YXRlID09ICdE
ZW5pZWQnOgogICAgICAgICAgICAgJ1BBU1M6IFJlcXVlc3Qgc3VjY2Vzc2Z1bGx5IGJsb2NrZWQu
XG4nCiAgICAgICAgICkKICAgICBlbHNlOgotICAgICAgICBzZXRfc3RhdGUoJ0RlbnkgSWdub3Jl
ZCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0RlbnkgSWdub3Jl
ZCcpCiAgICAgICAgIGZhaWwoc3RhdGUpCiAKIGVsaWYgc3RhdGUgPT0gJ0RlbnkgSWdub3JlZCc6
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9u
by1jdXN0b20taGVhZGVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWN1c3RvbS1oZWFkZXIucHkJKHJldmlzaW9uIDI3
NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2Vz
L25vLWN1c3RvbS1oZWFkZXIucHkJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkgKzIzLDkgQEAgc3Rh
dGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbQogCiBpZiBvcy5lbnZpcm9uLmdl
dCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnT1BUSU9OUyc6CiAgICAgaWYgb3MuZW52aXJvbi5nZXQo
J0hUVFBfWF9DVVNUT01fSEVBREVSJyk6Ci0gICAgICAgIHNldF9zdGF0ZSgnRkFJTCcsIHN0YXRl
RmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwnKQogICAgIGVsc2U6Ci0g
ICAgICAgIHNldF9zdGF0ZSgnUEFTUycsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0
YXRlRmlsZSwgJ1BBU1MnKQogZWxzZToKICAgICBpZiBvcy5lbnZpcm9uLmdldCgnSFRUUF9YX0NV
U1RPTV9IRUFERVInKToKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZShnZXRfc3RhdGUoc3RhdGVG
aWxlLCBkZWZhdWx0PSdGQUlMJykpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tdHJpcG1pbmUucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJj
ZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5CShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVj
dC1jcm9zcy1vcmlnaW4tdHJpcG1pbmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTM3LDEzICszNywx
MyBAQCBpZiBtZXRob2QgPT0gJ09QVElPTlMnOgogCiAjIE9ubHkgYWxsb3cgc2ltcGxlIGNyb3Nz
LXNpdGUgcmVxdWVzdHMgLSBzaW5jZSB3ZSBkaWQgbm90IGFsbG93IHByZWZsaWdodCwgdGhpcyBp
cyBhbGwgd2Ugc2hvdWxkIGV2ZXIgZ2V0LgogaWYgbWV0aG9kIG5vdCBpbiBbJ0dFVCcsICdIRUFE
JywgJ1BPU1QnXToKLSAgICBzZXRfc3RhdGUoJ0ZBSUwuIE5vbi1zaW1wbGUgbWV0aG9kIHt9Licu
Zm9ybWF0KG1ldGhvZCksIHN0YXRlRmlsZSkKKyAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJ
TC4gTm9uLXNpbXBsZSBtZXRob2Qge30uJy5mb3JtYXQobWV0aG9kKSkKICAgICBzeXMuZXhpdCgw
KQogCiBpZiBjb250ZW50IGFuZCBub3QgcmUubWF0Y2gocideYXBwbGljYXRpb25cL3hcLXd3d1wt
Zm9ybVwtdXJsZW5jb2RlZCg7LispPyQnLCBjb250ZW50VHlwZSkgXAogICAgIGFuZCBub3QgcmUu
bWF0Y2gocidebXVsdGlwYXJ0XC9mb3JtXC1kYXRhKDsuKyk/JCcsIGNvbnRlbnRUeXBlKSBcCiAg
ICAgYW5kIG5vdCByZS5tYXRjaChyJ150ZXh0XC9wbGFpbig7LispPyQnLCBjb250ZW50VHlwZSk6
Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBOb24tc2ltcGxlIGNvbnRlbnQgdHlwZToge30uJy5mb3Jt
YXQoY29udGVudFR5cGUpLCBzdGF0ZUZpbGUpCisgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZB
SUwuIE5vbi1zaW1wbGUgY29udGVudCB0eXBlOiB7fS4nLmZvcm1hdChjb250ZW50VHlwZSkpCiAK
IGlmIG9zLmVudmlyb24uZ2V0KCdIVFRQX1hfV0VCS0lUX1RFU1QnKToKLSAgICBzZXRfc3RhdGUo
J0ZBSUwuIEN1c3RvbSBoZWFkZXIgc2VudCB3aXRoIGEgc2ltcGxlIHJlcXVlc3QuJywgc3RhdGVG
aWxlKQorICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMLiBDdXN0b20gaGVhZGVyIHNlbnQg
d2l0aCBhIHNpbXBsZSByZXF1ZXN0LicpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQtZmFpbHVy
ZXMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9yZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1cmVzLnB5CShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jl
c291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQtZmFpbHVyZXMucHkJKHdvcmtpbmcg
Y29weSkKQEAgLTM2LDcgKzM2LDcgQEAgaWYgY29tbWFuZDoKICAgICBpZiBjb21tYW5kID09ICdz
dGF0dXMnOgogICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRl
ZmF1bHQ9JzAnKSkKICAgICBlbGlmIGNvbW1hbmQgPT0gJ3Jlc2V0JzoKLSAgICAgICAgc3lzLnN0
ZG91dC53cml0ZShzZXRfc3RhdGUoJzAnLCBzdGF0ZUZpbGUpKQorICAgICAgICBzeXMuc3Rkb3V0
LndyaXRlKHNldF9zdGF0ZShzdGF0ZUZpbGUsICcwJykpCiAgICAgc3lzLmV4aXQoMCkKIAogY3Jl
ZGVudGlhbHMgPSBiYXNlNjQuYjY0ZGVjb2RlKG9zLmVudmlyb24uZ2V0KCdIVFRQX0FVVEhPUkla
QVRJT04nLCAnIE9nPT0nKS5zcGxpdCgnICcpWzFdKS5kZWNvZGUoKS5zcGxpdCgnOicpCkBAIC01
Nyw0ICs1Nyw0IEBAIGVsc2U6CiAgICAgICAgICdBdXRoZW50aWNhdGlvbiBjYW5jZWxlZCcKICAg
ICApCiAgICAgaWYgdXNlcm5hbWU6Ci0gICAgICAgIHNldF9zdGF0ZShzdHIoaW50KGdldF9zdGF0
ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkgKyAxKSwgc3RhdGVGaWxlKQorICAgICAgICBzZXRf
c3RhdGUoc3RhdGVGaWxlLCBzdHIoaW50KGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAn
KSkgKyAxKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426145</attachid>
            <date>2021-04-15 15:47:16 -0700</date>
            <delta_ts>2021-04-16 09:30:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210415174714.patch</filename>
            <type>text/plain</type>
            <size>145490</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjA3OSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzOCBAQAorMjAyMS0wNC0xNSAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICBXaWxsIGFk
ZCByYWRhciB3aGVuIGltcG9ydGVkIGFmdGVyIHIrICh0YWtpbmcgc29tZSB0aW1lIHRvIGF0dGF0
Y2ggdGhlIHJhZGFyIG9uIHRoZSBidWcpCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1u
ZXR3b3JrLWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9t
YWluLXJlc291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hl
L211bHRpLWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24t
aHRtbC54aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNz
Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0y
LnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBk
YXRlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNr
Lm1hbmlmZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4t
cmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNo
ZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1m
cmFtZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxp
bmUtYWNjZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAv
dGVzdHMvY2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAg
ICAgICogaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2
YWxpZGF0aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNv
dXJjZS1mcmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29r
aWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmln
aW4tcGFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0
Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNy
b3NzLW9yaWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUt
c2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nz
cy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250
LWZhY2Utc3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWlt
YWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1h
c2staW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNl
cy9yZXF1ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1h
bmQpOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFm
dGVyLWltYWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxv
YWQtMy1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFs
aWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQu
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1h
ZnRlci1pbWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1y
ZXNwb25zZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdo
aWxlLWZldGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3Jz
LXdpdGgtcmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5n
LXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVy
ZW50LW9wdGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25z
ZS1ib2R5LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9k
ZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9h
ZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9m
aWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxz
LmpzOgorICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6
CisgICAgICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5n
Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAgICAg
ICAqIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQu
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtf
cHJlbG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3Zl
cnkuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxv
YWRfYXRfb25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMt
YXV0aC5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0
LWF1dGg6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQt
anNvbi13aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA6IFJl
bW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weTog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhw
OiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAg
ICAoZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBl
KToKKyAgICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0
ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJj
ZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29t
bWFuZCk6CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAg
ICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRs
ZV9sb2dfcmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMv
cG9ydGFiaWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0
cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlm
LWFjY2VwdGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNl
dC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Jlc2V0LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93
LWltYWdlLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93
LWltYWdlLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9z
bG93LW5vdGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
cy90b3VjaC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVz
b3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
cy93cml0ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVz
b3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxv
dy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvc3dpcGUvc3dpcGUtYmFjay13aXRoLW91dHN0
YW5kaW5nLWxvYWQtY2FuY2VsbGF0aW9uLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hl
LWludmFsaWRhdGlvbi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jl
c291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weToK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29u
dHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3Jm
LnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWN1
c3RvbS1oZWFkZXIucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5OgorICAgICAgICAqIGh0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlbWVtYmVyLWJhZC1wYXNzd29yZC9jb3Vu
dC1mYWlsdXJlcy5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRl
LWFmdGVyLW5ldHdvcmstZXJyb3IuaHRtbDoKKwogMjAyMS0wNC0xNSAgSWFuIEdpbGJlcnQgIDxp
YW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBOdWxsIHBvaW50ZXIgZGVyZWZlcmVuY2Ugb24gTWVk
aWFTdHJlYW1BdWRpb1NvdXJjZU5vZGUgZGVzdHJ1Y3RvcgpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvZmFsbGJhY2suaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQog
ewogICAgIHRyeSB7CiAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
ICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1mYWxsYmFjayZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlz
Y29ubmVjdCIpLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChz
dGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICAgICAgcmVxLnNl
bmQoIiIpOwogICAgIH0gY2F0Y2ggKGV4KSB7CiAgICAgICAgIGxvZygiQ2Fubm90IGFjY2VzcyBu
ZXR3b3JrIHNpbXVsYXRvciBVUkwiKTsKQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rpb24gbG9hZCh1
cmwpCiAgICAgfQogfQogCi12YXIgdGVzdFVSTCA9ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9u
b3QtaW4tY2FjaGUudHh0IjsKK3ZhciB0ZXN0VVJMID0gIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1mYWxsYmFjayZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMv
bm90LWluLWNhY2hlLnR4dCI7CiB2YXIgbm9uZXhpc3RlbnRVUkwgPSAicmVzb3VyY2VzL2RvZXMt
bm90LWV4aXN0IjsKIHZhciByZWRpcmVjdFVSTCA9ICJyZXNvdXJjZXMvZmFsbGJhY2stcmVkaXJl
Y3QucHkiOwogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtZmFsbGJhY2st
Zm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3
b3JrLWVycm9yLWNyYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsNyArNSw3IEBACiA8ZGl2
PiAgICAgICAgQmVmb3JlIHlvdSBjbGljayB0aGUgbGluayB0aGF0IHRlc3RzIHRoZSBhcHBjYWNo
ZSBmYWxsYmFjaywgcGxlYXNlIG1ha2Ugc3VyZSB0aGUgc2VydmVyIGlzIGRvd24gb3IgZGlzY29u
bmVjdCB5b3VyIGRldmljZSBmcm9tIGFueSBkYXRhIGNvbm5lY3Rpb24gc28gdGhlIGNvbm5lY3Rp
b24gcmVxdWVzdCB0byB0aGUgc2VydmVyIHdpbGwgZmFpbC4KIDwvZGl2PgogCi08YSBpZD0gIkxp
bmsiIGhyZWY9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUt
bWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRvZXMt
bm90LWV4aXN0IiA+IGNsaWNrIHRoaXMgbGluayB3aGVuIHRoZSBzZXJ2ZXIgaXMgZG93biBvciB0
aGUgY2xpZW50IGRldmljZSBkb2Vzbid0IGhhdmUgYSBkYXRhIGNvbm5lY3Rpb24sIHRoaXMgd2ls
bCB2ZXJpZnkgaWYgdGhlIGZhbGxiYWNrIHdpbGwgY2F1c2UgdGhlIGNyYXNoLiA8L2E+Cis8YSBp
ZD0gIkxpbmsiIGhyZWY9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBj
YWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9
ZG9lcy1ub3QtZXhpc3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhlIHNlcnZlciBpcyBkb3du
IG9yIHRoZSBjbGllbnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEgY29ubmVjdGlvbiwgdGhp
cyB3aWxsIHZlcmlmeSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0aGUgY3Jhc2guIDwvYT4K
IAogCiA8c2NyaXB0PgpAQCAtMTMsNyArMTMsNyBAQAogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJs
ZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEu
b3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5k
PSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVx
Lm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5k
PSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVx
LnNlbmQoIiIpOwogfQogCkBAIC0yNiw3ICsyNiw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogewog
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChm
YWxzZSk7Ci0gICAgICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiOworICAgICAgICB3aW5kb3cubG9jYXRp
b249Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhp
c3QiOwogICAgIH0KIH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9t
YWluLXJlc291cmNlLWhhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xOCw3ICsxOCw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQog
ZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhh
c2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2Up
OworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJmNvbW1hbmQ9IiAr
IChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2Vu
ZCgiIik7CiB9CiAKQEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gZnJhbWVDcmVhdGVkKCkKICAg
ICAgICAgc3RhZ2UgPSAxOwogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7CiAgICAg
ICAgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICAgICAg
aWZyLnNldEF0dHJpYnV0ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhhc2gmcGF0aD0vYXBw
Y2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5odG1sI2JhciIpOworICAg
ICAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNiYXIiKTsK
ICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIGxvZygiU1VDQ0VTUyIpOwpAQCAtNDMsNyArNDMsNyBAQCB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcigibWVzc2FnZSIsIGZyYW1lCiB2YXIgc3RhZ2UgPSAwOwogc2V0TmV0d29ya0VuYWJs
ZWQodHJ1ZSk7CiB2YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Ci1p
ZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZyYW1lLmh0bWwjZm9vIik7CitpZnIu
c2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNmb28iKTsKIGRvY3VtZW50
LmJvZHkuYXBwZW5kQ2hpbGQoaWZyKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJl
Y3QuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9tYWluLXJlc291cmNlLXJlZGlyZWN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcg
KzExLDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiBmdW5jdGlvbiBzZXROZXR3b3JrRW5h
YmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJl
cS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFuZD0iICsgKHN0
YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJH
RVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4t
cmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tdWx0aS1mYWxs
YmFjay5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcg
QEAgZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAg
ICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIs
ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW11bHRpLWZh
bGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZh
bHNlKTsKKyAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8g
ImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgiIik7
CiAgICAgfSBjYXRjaCAoZXgpIHsKICAgICAgICAgbG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsg
c2ltdWxhdG9yIFVSTCwgZXggPSAiICsgZXgpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9hcHBjYWNoZS9ub24taHRtbC54aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDUgKzEsNSBAQAogPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiCi0gICAgICBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1s
Lm1hbmlmZXN0Ij4KKyAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9u
b24taHRtbC5tYW5pZmVzdCI+CiA8aGVhZD48dGl0bGUvPjwvaGVhZD4KIDxib2R5PgogPHA+VGVz
dCB0aGF0IG5vbi1IVE1MIG1haW4gcmVzb3VyY2VzIHdvcmsgd2l0aCBhcHBsaWNhdGlvbiBjYWNo
ZSBjb3JyZWN0bHkuPC9wPgpAQCAtMTksMTQgKzE5LDE0IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdl
KQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5l
dyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO2NvbW1hbmQ9IiArIChz
dGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24t
aHRtbCZhbXA7Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwg
ZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQog
ewogICAgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBp
ZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5w
bmciKTsKKyAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNv
dXJjZXMvYWJlLnBuZyIpOwogICAgIGlmci5vbmxvYWQgPSBmcmFtZUNyZWF0ZWQ7CiAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogfQpAQCAtNDMsNyArNDMsNyBAQCBmdW5jdGlv
biBjYWNoZWQoKQogICAgIC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGRvZXMgbm90IGV4aXN0IGlu
IHRoZSBjYWNoZS4KICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0KCk7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3Vy
Y2VzL25vdC1pbi1jYWNoZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFt
cDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKICAg
ICAgICAgcmVxLnNlbmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGlmIChlLmNvZGUg
PT0gRE9NRXhjZXB0aW9uLk5FVFdPUktfRVJSKQpAQCAtNTgsNyArNTgsNyBAQCBmdW5jdGlvbiBj
YWNoZWQoKQogICAgIC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGV4aXN0cyBpbiB0aGUgY2FjaGUu
CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAg
ICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUu
dHh0IiwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUv
cmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKCk7CiAgICAg
fSBjYXRjaCAoZSkgewogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0Jyku
aW5uZXJIVE1MID0gIkZBSUxVUkU6IENvdWxkIG5vdCBsb2FkIGRhdGEgZnJvbSBjYWNoZSIKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNj
ZXNzLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTgsMTQgKzE4LDE0
IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3Rh
dGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2Zm
bGluZS1hY2Nlc3MmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3Qi
KSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJmNvbW1hbmQ9IiArIChzdGF0ZSA/
ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9
CiAKIGZ1bmN0aW9uIGNyZWF0ZUZyYW1lKCkKIHsKICAgICB2YXIgaWZyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiaWZyYW1lIik7Ci0gICAgaWZyLnNldEF0dHJpYnV0ZSgic3JjIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKKyAg
ICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sIik7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChpZnIpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3JlbW92
ZS1jYWNoZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVtb3ZlLWNhY2hlLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvYXBwY2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTkx
LDcgKzkxLDcgQEAgZnVuY3Rpb24gdGVzdDUoKQogZnVuY3Rpb24gcmVzZXRNYW5pZmVzdCgpCiB7
CiAgICAgaWYgKGFwcGxpY2F0aW9uQ2FjaGUuc3RhdHVzICE9IGFwcGxpY2F0aW9uQ2FjaGUuVU5D
QUNIRUQgJiYgYXBwbGljYXRpb25DYWNoZS5zdGF0dXMgIT0gYXBwbGljYXRpb25DYWNoZS5PQlNP
TEVURSkgewotICAgICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZlc3QsIDEw
MCk7CisgICAgICAgIHRpbWVvdXRJZCA9IHNldFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgNDAwKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTA0LDcgKzEwNCw3IEBAIGFwcGxpY2F0aW9u
Q2FjaGUub25ub3VwZGF0ZSA9IHRlc3Q7CiBhcHBsaWNhdGlvbkNhY2hlLm9uY2FjaGVkID0gdGVz
dDsKIAogLy8gSWYgdGhlIG1hbmlmZXN0IHNjcmlwdCBoYXBwZW5lZCB0byBiZSBpbiBhIHdyb25n
IHN0YXRlLCByZXNldCBpdC4KLXZhciB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZl
c3QsIDEwMCk7Cit2YXIgdGltZW91dElkID0gc2V0VGltZW91dChyZXNldE1hbmlmZXN0LCA0MDAp
OwogCiA8L3NjcmlwdD4KIDwvYm9keT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLTIucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQko
cmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNyBA
QCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAgICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVs
aWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmls
ZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdEZWxldGVkJykKICAgICBzeXMuc3Rkb3V0Lndy
aXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1Vu
aW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQud3JpdGUoCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVw
ZGF0ZS5weQkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcg
KzI4LDcgQEAgaWYgY29tbWFuZCA9PSAncmVzZXQnOgogICAgICAgICBvcy5yZW1vdmUodG1wX2Zp
bGUpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJc
bicpCiBlbGlmIGNvbW1hbmQgPT0gJ2RlbGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxldGVkJywg
dG1wX2ZpbGUpCisgICAgc2V0X3N0YXRlKHRtcF9maWxlLCAnRGVsZXRlZCcpCiAgICAgc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIHN0YXRl
ID09ICdVbmluaXRpYWxpemVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZlc3QKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFs
bGJhY2subWFuaWZlc3QJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBA
IC0xLDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/IHNpbXBsZS50eHQKIGZhbGxiYWNrLXJlZGlyZWN0IHNpbXBsZS50eHQKIGRvZXMtbm90
LWV4aXN0IHNpbXBsZS50eHQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGly
ZWN0LWZyYW1lLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHJldmlzaW9uIDI3
NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4t
cmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHdvcmtpbmcgY29weSkKQEAgLTQsNiArNCw2IEBA
IGltcG9ydCBzeXMKIAogc3lzLnN0ZG91dC53cml0ZSgKICAgICAnc3RhdHVzOiAzMDJcclxuJwot
ICAgICdMb2NhdGlvbjogaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJh
bWUtMi5odG1sXHJcbicKKyAgICAnTG9jYXRpb246IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1h
aW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sXHJcbicKICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0
bWxcclxuXHJcbicKICkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0
Lm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHJldmlzaW9uIDI3NjAy
NCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiBD
QUNIRSBNQU5JRkVTVAotaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJh
bWUtMi5odG1sCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIu
aHRtbAogTkVUV09SSzoKLWh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJl
ZGlyZWN0JmNvbW1hbmQKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmY29tbWFuZApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QJKHJl
dmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL211bHRpLWZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBA
QAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/IHNpbXBs
ZS50eHQKIGRvZXMtbm90IGVtcHR5LnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxlLnR4dApJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFu
aWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbm9uLWh0bWwubWFuaWZlc3QJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDggKzEsOCBAQAogQ0FDSEUgTUFOSUZFU1QKIC9hcHBjYWNoZS9ub24taHRt
bC54aHRtbAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1u
b24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvYWJlLnBuZwotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFu
aWZlc3QKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24t
aHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAorL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9hYmUucG5nCisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBw
Y2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0
CiBORVRXT1JLOgogL2Zhdmljb24uaWNvCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmNvbW1hbmQ9CisvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJj
ZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sIG1hbmlmZXN0PSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNz
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdCI+Cis8aHRt
bCBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5t
YW5pZmVzdCI+CiA8ZGl2IGlkPXJlc3VsdD48L2Rpdj4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2co
bWVzc2FnZSkKQEAgLTExLDcgKzExLDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbnByb2dyZXNzID0g
ZnVuY3Rpb24oKQogYXBwbGljYXRpb25DYWNoZS5vbnVwZGF0ZXJlYWR5ID0gZnVuY3Rpb24oKSB7
IGxvZygidXBkYXRlcmVhZHkiKSB9CiBhcHBsaWNhdGlvbkNhY2hlLm9ub2Jzb2xldGUgPSBmdW5j
dGlvbigpIHsgbG9nKCJvYnNvbGV0ZSIpIH0KIDwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUt
b2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQ+CiAKIGFwcGxpY2F0aW9uQ2FjaGUub25jYWNoZWQgPSBmdW5j
dGlvbigpIHsgbG9nKCJjYWNoZWQiKTsgdGVzdCgpIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNz
LmpzCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwkod29ya2luZyBjb3B5KQpAQCAtNiw3ICs2LDcg
QEAgZnVuY3Rpb24gdGVzdCgpCiAKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0OwotICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUt
YWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0IiwgZmFsc2UpOwogICAg
ICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgaWYgKHJlcS5yZXNwb25zZVRleHQgPT0gIkhl
bGxvLCBXb3JsZCEiKQogICAgICAgICAgICAgcGFyZW50LnBvc3RNZXNzYWdlKCJkb25lIiwgIioi
KTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxp
bmUtYWNjZXNzLm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5l
LWFjY2Vzcy5tYW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIENBQ0hFIE1B
TklGRVNUCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9m
ZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFt
ZS5odG1sCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9m
ZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5p
ZmVzdAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZs
aW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKKy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAorL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAorL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9zaW1wbGUudHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUt
YWNjZXNzLmpzCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9yZW1vdmUtY2FjaGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5CShyZXZpc2lvbiAyNzYwMjQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkJ
KHdvcmtpbmcgY29weSkKQEAgLTI4LDE0ICsyOCwxNCBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6
CiAgICAgICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250
ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoK
LSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2Zp
bGUsICdEZWxldGVkJykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5z
dGRvdXQud3JpdGUoCiAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQvY2FjaGUtbWFuaWZlc3Rc
clxuXHJcbicKICAgICAgICAgJ0NBQ0hFIE1BTklGRVNUXG4nCiAgICAgICAgICdORVRXT1JLOlxu
JwotICAgICAgICAncmVtb3ZlLWNhY2hlLnB5P2NvbW1hbmQ9XG4iJworICAgICAgICAncmVtb3Zl
LWNhY2hlLnB5P2NvbW1hbmQ9XG4nCiAgICAgKQogZWxpZiBzdGF0ZSA9PSAnRGVsZXRlZCc6CiAg
ICAgc3lzLnN0ZG91dC53cml0ZSgKQEAgLTQzLDQgKzQzLDQgQEAgZWxpZiBzdGF0ZSA9PSAnRGVs
ZXRlZCc6CiAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJwogICAgICkK
IGVsc2U6Ci0gICAgc3lzLnN0b2R1dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorICAgIHN5cy5zdG9kdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYWNoZS9uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVy
aW5nLXJldmFsaWRhdGlvbi5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVk
KHN0YXRlKQogewogICAgIGxvZyhzdGF0ZSA/ICJFbmFibGluZyBuZXR3b3JrIiA6ICJEaXNhYmxp
bmcgbmV0d29yayIpOwogICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVx
Lm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hl
LW5ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbiZjb21tYW5kPSIgKyAoc3RhdGUgPyAi
Y29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1k
dXJpbmctcmV2YWxpZGF0aW9uJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNj
b25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllci5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2Ut
ZnJhZ21lbnQtaWRlbnRpZmllci5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhY2hlL3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICB0
cnkgewogICAgICAgICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
ICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50
LWlkZW50aWZpZXImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21t
YW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAg
ICAgICAgICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgIH0gY2F0
Y2ggKGV4KSB7CkBAIC00MSwxOCArNDEsMTggQEAKICAgCiAgICAgPHN0eWxlPgogICAgICAgICBk
aXYgewotICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291
cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PWJnX3BhdHRlcm4uanBnI2RpdicpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CiAgICAgICAgIH0KICAgICAg
ICAgcCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVz
b3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9YmdfcGF0dGVybi5qcGcjcCcpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjcCcpOwogICAgICAgICB9CiAgICAgPC9z
dHlsZT4KIAogPC9oZWFkPgogPGJvZHk+CiAgICAgPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyI+PC9kaXY+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2Ut
ZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ymdf
cGF0dGVybi5qcGcjaW1nMSI+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJh
Z21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0
dGVybi5qcGcjaW1nMiI+CisgICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVu
dC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJu
LmpwZyNpbWcxIj4KKyAgICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlk
ZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBn
I2ltZzIiPgogICAgIAogICBUZXN0IHRoYXQgcmVzb3VyY2VzIHdpdGggZnJhZ21lbnQgaWRlbnRp
ZmllcnMgYXJlIGxvYWRlZCBvbmx5IG9uY2UuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFt
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3Vy
Y2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9uZXR3
b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMSArMSBAQAotPGltZyBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVz
b3VyY2VzL2NvbXBhc3MuanBnJmFsbG93LWNhY2hpbmc9MSI+Cis8aW1nIHNyYz0iL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3ItZHVyaW5nLXJl
dmFsaWRhdGlvbiZwYXRoPS9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyZhbGxvdy1jYWNoaW5n
PTEiPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRj
aC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gt
YWZ0ZXItbmF2aWdhdGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkocmV2aXNp
b24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQog
ICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjYiLCB7IlNhbWVTaXRlIjog
bnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2ll
KCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjYiLCB7IlNhbWVTaXRl
IjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBz
ZXRDb29raWUoImxheCIsICI2IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwg
InBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4w
LjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5w
eSUzRmhyZWYlM0RmZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4t
cGFnZS5weSI7CisgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUz
QTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhy
ZWYlM0RmZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5w
eSI7CiB9CiBydW5UZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5p
dGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10
b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2lu
LXBhZ2UuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
b29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMTEsNyArMTEsNyBAQCBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBhd2FpdCBzZXRD
b29raWUoImltcGxpY2l0LXN0cmljdCIsICI0IiwgeyJTYW1lU2l0ZSI6IG51bGwsICJNYXgtQWdl
IjogMTAwLCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgic3RyaWN0LWJlY2F1
c2UtaW52YWxpZC1TYW1lU2l0ZS12YWx1ZSIsICI0IiwgeyJTYW1lU2l0ZSI6ICJpbnZhbGlkIiwg
Ik1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJsYXgi
LCAiNCIsIHsiU2FtZVNpdGUiOiAiTGF4IiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7
Ci0gICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291
cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nv
b2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0
Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNy
b3NzLW9yaWdpbi1wYWdlLnB5JTI2dGFyZ2V0JTNEX3RvcCI7CisgICAgd2luZG93LmxvY2F0aW9u
LmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMu
cHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3Vy
Y2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2
aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0
YXJnZXQlM0RfdG9wIjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZy
YW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjAy
NCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4t
Y3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBA
IGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQt
c3RyaWN0IiwgIjMiLCB7IlNhbWVTaXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjog
Ii8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVT
aXRlLXZhbHVlIiwgIjMiLCB7IlNhbWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwg
InBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoImxheCIsICIzIiwgeyJTYW1lU2l0
ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9j
YXRpb24uaHJlZiA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1l
LXNyYy5waHA/c3JjPWh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNv
dXJjZXMvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sIjsKKyAgICB3aW5kb3cubG9j
YXRpb24uaHJlZiA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1l
LXNyYy5weT9zcmM9aHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nvb2tpZXMvc2FtZS1zaXRlL3Jlc291
cmNlcy9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwiOwogfQogcnVuVGVzdCgpOwog
PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3JkZXItaW1hZ2Ut
bG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Jv
cmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAg
ICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAx
MCBzdHJldGNoOworICAgICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJl
dGNoOwogICAgIH0KICAgICAKICAgICAuYm9yZGVyZWQgewotICAgICAgLXdlYmtpdC1ib3JkZXIt
aW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtYm9y
ZGVyLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRl
cjIuanBnIikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKKyAgICAgIC13ZWJraXQtYm9yZGVyLWltYWdl
OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtYm9yZGVyLWlt
YWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBn
IikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0bWwJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMjYgKzksMjYgQEAKICAgICAuYm94
IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICBiYWNr
Z3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1i
YWNrZ3JvdW5kMS5qcGciKTsKKyAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDEuanBnIik7CiAgICAgfQogICAg
IAogICAgIC5iYWNrZ3JvdW5kIHsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOworICAgICAg
YmFja2dyb3VuZC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1iYWNrZ3JvdW5kMi5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLmNvbnRlbnQgewotICAgICAg
Y29udGVudDogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVu
dC1pbWFnZTEuanBnIik7CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UxLmpwZyIpOwogICAgIH0KIAogICAgIC50ZXN0
IHsKLSAgICAgIGNvbnRlbnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPWNvbnRlbnQtaW1hZ2UyLmpwZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTMuanBnIik7CisgICAgICBjb250ZW50OiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxv
YWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UyLmpw
ZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3Nz
LWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250
ZW50LWltYWdlMy5qcGciKTsKICAgICB9CiAgICAgCiAgICAgdWwgewotICAgICAgbGlzdC1zdHls
ZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1p
bWFnZTEuanBnIik7CisgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UxLmpwZyIpOwogICAgIH0KICAgICAubGlz
dCB7Ci0gICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1saXN0LWltYWdlMi5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6
IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTIuanBn
Iik7CiAgICAgfQogICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1zaGFwZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbAkocmV2aXNpb24g
Mjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1z
aGFwZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICAgICAgICBmbG9hdDog
bGVmdDsKICAgICAgICAgd2lkdGg6IDIwMHB4OwogICAgICAgICBoZWlnaHQ6IDIwMHB4OwotICAg
ICAgICAtd2Via2l0LXNoYXBlLW91dHNpZGU6IHVybCgiL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5waHA/bmFtZT1zcXVhcmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZvcj0xIik7CisgICAgICAg
IC13ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCIvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5
P25hbWU9c3F1YXJlMTAwLnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MSIpOwogICAgIH0KIDwvc3R5
bGU+CiA8L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9mb250LWZhY2Utc3JjLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jc3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDcgKzI2LDcgQEAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewogICAgICAgICBp
ZiAoeGhyLnJlYWR5U3RhdGUgPT0geGhyLkRPTkUpCiAgICAgICAgICAgICBmb3JjZVN0eWxlU2Vs
ZWN0b3JSZWNyZWF0aW9uKCk7CiAgICAgfTsKLSAgICB4aHIub3BlbignR0VUJywgJy9yZXNvdXJj
ZXMvcmVzZXQtdGVtcC1maWxlLnBocD8nICsgZmlsZW5hbWUsIHRydWUpOworICAgIHhoci5vcGVu
KCdHRVQnLCAnL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucHk/JyArIGZpbGVuYW1lLCB0cnVl
KTsKICAgICB4aHIuc2VuZCgpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAw
cHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBnIik7Cisg
ICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tYXNrMS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLm1hc2tlZCB7Ci0g
ICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CisgICAgICAtd2Via2l0LW1hc2stYm94LWltYWdl
OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFn
ZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsK
ICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9yZWZsZWN0aW9uLW1hc2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rp
b24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzksMTEg
QEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRp
bmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOworICAgICAg
LXdlYmtpdC1ib3gtcmVmbGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAgICAKICAg
ICAucmVmbGVjdGVkIHsKLSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEwcHggdXJs
KCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNpdG9uLW1h
c2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIu
anBnIik7CisgICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CiAg
ICAgfQogICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3Mv
dmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24t
YmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjAy
NCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtMi1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDcg
KzksNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0
YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdl
KCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2Vs
aW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5o
dG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0
aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMTUsNyArMTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0
aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2Fs
LWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLTMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAK
IDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAi
OworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRl
ci1pbWFnZS1sb2FkLTMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAkocmV2
aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxp
Z24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1
LDcgKzE1LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1i
YXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1h
Z2UtbG9hZC1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4
cGVjdGVkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAg
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0
dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsK
ICAgICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFs
aWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXIt
aW1hZ2UtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0
PgogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAg
ICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5IjsKICAgICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9nZ2luZy5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVzdC1sb2dn
aW5nLmpzCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9y
ZXNvdXJjZXMvcmVxdWVzdC1sb2dnaW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBA
QCB2YXIgUmVzb3VyY2VMb2dnaW5nID0gewogICAgIHsKICAgICAgICAgdHJ5IHsKICAgICAgICAg
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9IiArIHRoaXMudGVz
dE5hbWUgKyAiJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICAgcmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9IiArIHRoaXMudGVz
dE5hbWUgKyAiJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgcmVxLnNlbmQo
bnVsbCk7CiAgICAgICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgfSBj
YXRjaCAoZXgpIHsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVz
cG9uc2UtYm9keS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvbmUtcmVzcG9uc2UtYm9keS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJvZHkuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMzQsNyArMzQsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogCiBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgIHZhciBjbG9uZTsKLSAgICByZXR1cm4gZmV0Y2go
Jy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxh
eT0xMDAnKS50aGVuKGZ1bmN0aW9uKHJlcykgeworICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJykudGhl
bihmdW5jdGlvbihyZXMpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXMuc3RhdHVzLCAyMDAp
OwogICAgICAgICAvLyBBbGwgZGF0YSBzaG91bGQgbm90IGJlIGVucXVldWVkIHlldC4KICAgICAg
ICAgY2xvbmUgPSByZXMuY2xvbmUoKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvZmV0Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCShyZXZpc2lvbiAy
NzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb3Npbmctd2hpbGUtZmV0
Y2hpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgICAgICAKIHZh
ciB0ZXN0ID0gYXN5bmNfdGVzdCgiRW5zdXJpbmcgdGhhdCBmZXRjaCByZXNwb25zZSBib2R5IHBy
b21pc2UgaXMgbm90IGZ1bGZpbGxlZCB3aGVuIHdpbmRvdyBpcyBjbG9zZWQiKTsKIHRlc3Quc3Rl
cChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0xMDAwIjsKKyAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTEw
MDAiOwogICAgIGZldGNoKHVybCkudGhlbih0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNwb25z
ZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKICAgICAg
ICAgcmVzcG9uc2UudGV4dCgpLnRoZW4odGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24oYnVmZmVyKSB7
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoLWNvcnMtd2l0aC1yZWZl
cnJlci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0
Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTksNyArOSw3IEBACiAgIDxib2R5PgogICAgIDxzY3JpcHQ+CiBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB1cmwgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAw
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0xJmRlbGF5
PTEmY29ycz10cnVlIjsKKyAgICB2YXIgdXJsID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29y
cz10cnVlIjsKICAgICByZXR1cm4gZmV0Y2godXJsLCB7Im1vZGUiOiAiY29ycyIsICJyZWZlcnJl
ciI6ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVmZXJyZXIifSkudGhlbigocmVzcG9uc2UpID0+
IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIpOwogICAgICAg
ICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZlcikgPT4gewpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNl
LXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZl
cmVudC1vcHRpb25zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50
LW9wdGlvbnMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDExICsxLDExIEBACiBD
T05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxs
b3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdF
OiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRy
dWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MSBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgor
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVs
YXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nlc3MgY29u
dHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNj
ZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgot
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRl
bGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiBkdWUgdG8gYWNjZXNzIGNv
bnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/
aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIGR1
ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ug
d2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMg
ZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhw
P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyBk
dWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hl
PXRydWUmdGVzdD0zIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NB
R0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdo
ZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNo
ZT10cnVlJnRlc3Q9NCBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNT
QUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9
dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3Mu
CiAKIFBBU1MgRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVs
IHRoZSBzYW1lIHJlc291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzCiBQQVNTIEVuc3VyZSBjb3Jz
IGNoZWNrcyB3b3JrIHdoZW4gbG9hZGluZyBzdWNjZXNzaXZlbHkgdGhlIHNhbWUgcmVzb3VyY2Ug
d2l0aCBkaWZmZXJlbnQgbW9kZXMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gv
ZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291
cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlm
ZmVyZW50LW9wdGlvbnMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw4ICs5LDggQEAKICAgPGJv
ZHk+CiAgICAgPHNjcmlwdD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVy
bDEgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgt
ZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVl
JnRlc3Q9MSI7Ci0gICAgdmFyIHVybDIgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3Jz
PXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiI7CisgICAgdmFyIHVybDEgPSAiaHR0cDovL2xv
Y2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKKyAgICB2
YXIgdXJsMiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTIiOwogICAgIHJldHVybiBQcm9taXNlLmFsbChbCiAgICAgICAgICAgICBmZXRj
aCh1cmwxLCB7Im1vZGUiOiAibm8tY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UudHlwZSwgIm9wYXF1ZSIpOwpAQCAtMzYs
OCArMzYsOCBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogfSwgJ0Vuc3VyZSBjb3JzIGNo
ZWNrcyB3b3JrIHdoZW4gbG9hZGluZyBpbiBwYXJhbGxlbCB0aGUgc2FtZSByZXNvdXJjZSB3aXRo
IGRpZmZlcmVudCBtb2RlcycpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZh
ciB1cmwzID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTMiOwotICAgIHZhciB1cmw0ID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAm
Y29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOworICAgIHZhciB1cmwzID0gImh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7Cisg
ICAgdmFyIHVybDQgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0Nh
Y2hlPXRydWUmdGVzdD00IjsKICAgICByZXR1cm4gZmV0Y2godXJsMywgeyJtb2RlIjogImNvcnMi
fSkudGhlbigocmVzcG9uc2UpID0+IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50
eXBlLCAiY29ycyIpOwogICAgICAgICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVu
KChhcnJheUJ1ZmZlcikgPT4gewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9n
ZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0
bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZ2V0
LXJlc3BvbnNlLWJvZHktd2hpbGUtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3
ICsxMyw3IEBACiAgICAgPHNjcmlwdD4KIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAg
IHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJh
dGlvbj01JmRlbGF5PTIwMCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5weT9pdGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5n
RmxhZyA9IGZhbHNlOwogICAgIHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9u
c2UpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBAIC0y
Nyw3ICsyNyw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNhbGxp
bmcgUmVzcG9uc2UudGV4dCgpIHdoZW4gc3RpbGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0g
Ii9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5
PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVy
bCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3Bv
bnNlLnN0YXR1cywgMjAwKTsKQEAgLTQxLDcgKzQxLDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9u
KCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS5hcnJheUJ1ZmZlcigpIHdoZW4gc3Rp
bGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFy
IHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9u
PTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFn
ID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkg
ewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKQEAgLTU1LDcg
KzU1LDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBS
ZXNwb25zZS5ibG9iKCkgd2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVz
dChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAw
IjsKICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50
aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uu
c3RhdHVzLCAyMDApOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVjb2Rl
LXNsb3ctbG9hZC1zdGF0aWMtaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCShyZXZp
c2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xv
dy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQAog
ICAgIDxkaXY+PC9kaXY+CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWRJ
bWFnZVNvdXJjZVVSTCgpIHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAgICAgICByZXR1cm4gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiCiAgICAgICAg
ICAgICAgICAgICsgIj9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy8xMDB4MTAw
LXJlZC5wc2QiIAogICAgICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZ2bmQuYWRv
YmUucGhvdG9zaG9wIgogICAgICAgICAgICAgICAgICArICImc3RhbGxBdD0xMDI0IjsKQEAgLTEz
LDcgKzEzLDcgQEAKICAgICAgICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHJlc29sdmVkSW1hZ2VT
b3VyY2VVUkwoKSB7Ci0gICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIgorICAgICAgICAgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IgogICAgICAgICAgICAg
ICAgICArICI/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQw
MC5wbmciIAogICAgICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAg
ICAgICAgICAgICAgICsgIiZzdGFsbEF0PTEwMjQiOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RyYXctcGF0dGVybi1zbG93
LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9pbWFnZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIC8vIFRoZSBtYXhpbXVt
IGJ1ZmZlcmluZyBpbnRlcnZhbCBmb3IgSW1hZ2VSZXNvdXJjZSBpcyA1MDBtcy4gQ2hvb3NlIHN0
YWxsRm9yCiAgICAgICAgIC8vIHN1Y2ggdGhhdCB0aGUgaW1hZ2UgYnVmZmVyaW5nIGlzIGRpc2Fi
bGVkIGluIHRoZSBuZXR3b3JrIHByb2Nlc3MuCiAgICAgICAgIGZ1bmN0aW9uIHNsb3dMYXJnZUlt
YWdlU291cmNlVVJMKCkgewotICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCIKKyAgICAgICAgICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSIKICAgICAgICAg
ICAgICAgICAgKyAiP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQw
MHg0MDAucG5nIiAKICAgICAgICAgICAgICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGcG5nIgog
ICAgICAgICAgICAgICAgICArICImc3RhbGxBdD01MTIiCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJl
dmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9n
cmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBAIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIGdpZkltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRtbAkocmV2
aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3Vw
cG9ydHMtdmlkZW8uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDYgQEAKIDxwaWN0dXJl
PgotICAgIDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFj
Y2VwdGVkLnBocD92aWRlbz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KLSAgICA8c291cmNl
IHNyY3NldD0iL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHA/dmlk
ZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5tcDQiIHR5
cGU9InZpZGVvL21wNCI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJlY3Qt
dG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+
CiAgICAgPGltZyBzcmM9Ii9yZXNvdXJjZXMvc3F1YXJlMTAwLnBuZyI+CiA8L3BpY3R1cmU+CiA8
YnI+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBhcnRpYWwtbG9h
ZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2pwZWct
cGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL2pwZWctcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcs
NyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3Rh
bGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIGpwZWdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1h
Z2UtYm9yZGVyLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2UtYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQs
NyArNCw3IEBACiAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VC
b3JkZXJFbmFibGVkKHRydWUpOwogCiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewot
ICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocD9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVl
bi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAw
IjsKKyAgICAgICAgICAgIGltZy5zcmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weT9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9n
cmVlbi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9
MTAwIjsKIAogICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgICAgIH0s
IDApOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1u
by1ib3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0SW5jb21wbGV0ZUltYWdlQm9yZGVyRW5hYmxlZChmYWxzZSk7CiAKICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9p
bWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0
YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFz
dC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5n
JnN0YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKICAgICAgICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEzLDcgKzEzLDcgQEAKIAogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFs
bCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAKICAgICBmdW5jdGlv
biBtcDRJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFy
dGlhbC1sb2FkLW5vLWFscGhhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC1uby1hbHBoYS5odG1sCShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5v
LWFscGhhLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7
CiB9CiAKIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAK
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rp
b24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBy
b2dyZXNzaXZlLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXBh
cnRpYWwtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBs
b2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFn
ZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZl
LWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93
ZWJwLXByb2dyZXNzaXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlv
biBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJlbG9hZC1pbWct
dGVzdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvbG9hZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTYsNyArNiw3IEBACiAgIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVxID0gbmV3
IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1h
bmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29t
bWFuZD0iICsgY21kLCBmYWxzZSk7CiAgICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAg
ICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICB9IGNhdGNoIChleCkgewpAQCAt
NDksNyArNDksNyBAQAogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuL3Jl
c291cmNlcy9lbXB0eS5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InRlc3Qo
KSI+Ci0gIDxpbWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9aW5jcmVhc2Ut
cmVzb3VyY2UtY291bnQmcGF0aD0vbG9hZGluZy9yZXNvdXJjZXMvcHJlbG9hZC10ZXN0LmpwZyIg
b25lcnJvcj0iaW1nX2Vycm9yKCkiIG9ubG9hZD0ic2V0VGltZW91dChjaGVja0FjY2Vzc0NvdW50
LCAzMDAwKSI+CisgIDxpbWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD1pbmNy
ZWFzZS1yZXNvdXJjZS1jb3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNlcy9wcmVsb2FkLXRlc3Qu
anBnIiBvbmVycm9yPSJpbWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1lb3V0KGNoZWNrQWNjZXNz
Q291bnQsIDMwMDApIj4KICAgPHA+VGhpcyB0ZXN0IGlzIHRvIHRlc3Qgd2hldGhlciBwcmVsb2Fk
IGltYWdlIHdpbGwgcmVxdWlyZSAyIG1vcmUgcmVxdWVzdHMgb3Igbm90LjwvcD4KICAgPHNwYW4g
aWQ9Im91dHB1dFBhbmVsIj5QQVNTRUQ8L3NwYW4+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICB7CiAgICAgIHRyeSB7
CiAgICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgcmVxLm9w
ZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBjbWQsIGZh
bHNlKTsKICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNw
b25zZVRleHQ7CiAgICAgIH0gY2F0Y2ggKGV4KSB7CkBAIC00MywzNSArNDMsMzUgQEAKICAgPC9z
Y3JpcHQ+CiAgIAogICA8IS0tIFRoaXMgd2lsbCB0cmlnZ2VyIHRoZSBwcmVsb2FkIHNjYW5uZXIg
LS0+Ci0gIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIt
cHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3Nj
cmlwdD4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9z
Y3JpcHQ+CiAKLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW5vLW1lZGlhLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxs
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4u
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1z
dWNjZXNzLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3Jl
ZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3Mi
PgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAx
MDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJl
bG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5
LWZhaWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1i
cmFpbGxlLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS10di5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHktMi5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYWxsLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHku
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJz
Y3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1l
ZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4g
YW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWFsbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJw
cmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWJyYWlsbGUtc2NyZWVuLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNj
cmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5Pgot
ICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxzY3JpcHQg
c3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2NyaXB0PgorICA8aW1n
IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC0yLmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0eWxl
c2hlZXQgbG9hZCBzY2hlZHVsaW5nIHdpdGggcHJlbG9hZCBzY2FubmVyLiBSZXNvdXJjZSBsb2Fk
cyBmb3Igc2NyZWVuIHN0eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVy
cyBzaG91bGQgYmUgc2NoZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLmh0
bWwJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQs
NyBAQAogICAgIHsKICAgICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJl
cXVlc3Q7Ci0gICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD0iICsg
Y21kLCBmYWxzZSk7CiAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgIHJldHVybiBy
ZXEucmVzcG9uc2VUZXh0OwogICAgICB9IGNhdGNoIChleCkgewpAQCAtNDIsMzMgKzQyLDMzIEBA
CiAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBlbmRUZXN0LCBmYWxzZSk7CiAg
IDwvc2NyaXB0PgogCi0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bm8tbWVkaWEuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1z
Y3JlZW4tcXVlcnktc3VjY2Vzcy5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZh
aWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLWF1cmFsLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJicmFpbGxlIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVj
dGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcm9qZWN0aW9uLmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS10di5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW5vLW1lZGlhLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXByaW50LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4g
YW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3Jl
ZW4tcXVlcnktZmFpbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYXVyYWwi
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0iYnJhaWxsZSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWFuLWhhbmRoZWxkLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJwcm9qZWN0aW9uIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgor
ICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtdHR5LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1wcmludC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3Jl
ZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9h
ZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1n
IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1pbWFnZS5qcGciPgotICA8c2NyaXB0IHNyYz0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1zY3JpcHQuanMiPjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdl
LmpwZyI+CisgIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4K
IAogICBUZXN0IHN0eWxlc2hlZXQgbG9hZCBzY2hlZHVsaW5nLiBSZXNvdXJjZSBsb2FkcyBmb3Ig
c2NyZWVuIHN0eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91
bGQgYmUgc2NoZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9j
YWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3Qt
bW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLXVzaW5n
LW9wZW4tcGFuZWwuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYsNyBAQCBqc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKIGZ1bmN0aW9uIG9uRmlsZUNoYW5nZShmaWxlLCBmaWxlUGF0aCkKIHsK
ICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIkdFVCIs
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHA/
cGF0aD0uLi9sb2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOworICAgIHhoci5vcGVu
KCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZp
ZWQucHk/cGF0aD0uLi9sb2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOwogICAgIHho
ci5zZW5kKCk7CiAgICAgdmFyIGV4cGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHBhcnNlSW50KHhoci5y
ZXNwb25zZVRleHQpICogMTAwMCk7CiAgICAgdmFyIGFjdHVhbERhdGUgPSBmaWxlLmxhc3RNb2Rp
ZmllZDsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxh
c3QtbW9kaWZpZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xv
Y2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQCBkZXNjcmlwdGlvbigiVGVzdCBG
aWxlLmxhc3RNb2RpZmllZERhdGUuCiBmdW5jdGlvbiBvbkZpbGVEcm9wKGZpbGUsIGZpbGVQYXRo
KQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3Blbigi
R0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVk
LnBocD9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CisgICAgeGhy
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1t
b2RpZmllZC5weT9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CiAg
ICAgeGhyLnNlbmQoKTsKICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3IERhdGUocGFyc2VJbnQo
eGhyLnJlc3BvbnNlVGV4dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFsRGF0ZSA9IGZpbGUubGFz
dE1vZGlmaWVkOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jl
c291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHJldmlz
aW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNv
dXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDcgKzEsNyBAQAog
ZnVuY3Rpb24gY3JlYXRlVGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYXRhKQogewogICAgIHZhciB4
aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiAr
IGZpbGVOYW1lICsgIiZkYXRhPSIgKyBmaWxlRGF0YSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQ
T1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5
P2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSArICImZGF0YT0iICsgZmlsZURhdGEsIGZhbHNlKTsKICAg
ICB4aHIuc2VuZCgpOwogICAgIGlmICh4aHIuc3RhdHVzICE9IDIwMCkgewogICAgICAgICB0ZXN0
RmFpbGVkKCJVbmV4cGVjdGVkIHJlc3BvbnNlIHN0YXR1cyByZWNlaXZlZDogIiArIHhoci5zdGF0
dXMpOwpAQCAtMjAsMTMgKzIwLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGaWxlKGZpbGVOYW1l
LCBmaWxlRGEKIGZ1bmN0aW9uIHRvdWNoVGVtcEZpbGUoZmlsZU5hbWUpCiB7CiAgICAgdmFyIHho
ciA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocD9maWxlbmFtZT0iICsg
ZmlsZU5hbWUsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5hbWUs
IGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogfQogCiBmdW5jdGlvbiByZW1vdmVUZW1wRmlsZShm
aWxlTmFtZSkKIHsKICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhy
Lm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwP2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQ
T1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5
P2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxv
YWRpbmctMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEv
dHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwJKHJldmlzaW9uIDI3NjAyNCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ct
bG9hZGluZy0yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0Pgog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biB2dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3Ry
YWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkocmV2
aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFj
ay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBA
CiA8c2NyaXB0PgogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwog
fQogCiBmdW5jdGlvbiB2dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2MvbGFzdC1tb2RpZmllZC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sCShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5n
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTQgKzUsMTQgQEAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CiB9CiAKIGZ1bmN0aW9uIHRlc3QodGV4dCkgewotICAgIGRvY3VtZW50LndyaXRlKCc8
aWZyYW1lIHNyYz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhwP2RhdGU9JyArIGVzY2Fw
ZSh0ZXh0KSArICciPjwvaWZyYW1lPicpOworICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNy
Yz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHk/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsg
JyI+PC9pZnJhbWU+Jyk7CiB9CiAKIHRlc3QoJ01vbiwgMjEgTm92IDIwMDggMDE6MDM6MzMgR01U
Jyk7Ci10ZXN0KCdUdWVzZGF5LCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKLXRlc3QoJ01v
biwgMjEgTm92IDk3IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMS1Ob3YtMjAwOCAwMTow
MzozMyBHTVQnKTsKLXRlc3QoJ01vbiwgMjEtRmViLTIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0
KCdNb24sIDAzLUZlYi0yMDA4IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAzLU1hci0yMDA4
IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnVHVlLCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsK
K3Rlc3QoJ01vbiwgMjEgTm92IDE5OTcgMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDIxIE5v
diAyMDA4IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnTW9uLCAyMSBGZWIgMjAwOCAwMTowMzozMyBH
TVQnKTsKK3Rlc3QoJ01vbiwgMDMgRmViIDIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24s
IDAzIE1hciAyMDA4IDAxOjAzOjMzIEdNVCcpOwogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2Mvbm8tbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9u
IDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7
Ci0gICAgZG9jdW1lbnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2Rp
ZmllZC5waHA/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9j
dW1lbnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9k
YXRlPScgKyBlc2NhcGUodGV4dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnJyk7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNh
bmNlbC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTIgKzUsMTIg
QEAgdmFyIHJlcGVhdENvdW50ID0gMDsKIAogZnVuY3Rpb24gc2VuZFJlcXVlc3QoKSB7CiAgICAg
dmFyIGZpcnN0UmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgZmlyc3RSZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249
MTAwJmRlbGF5PTEiKTsKKyAgICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwMCZkZWxheT0xIik7CiAKICAgICBm
aXJzdFJlcS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKGZp
cnN0UmVxLnJlYWR5U3RhdGUgPT0gZmlyc3RSZXEuSEVBREVSU19SRUNFSVZFRCkgewogICAgICAg
ICAgICAgdmFyIHNlY29uZFJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICAgICAg
c2Vjb25kUmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5waHA/aXRlcmF0aW9uPTEwJmRlbGF5PTAiKTsKKyAgICAgICAgICAgIHNlY29uZFJlcS5vcGVu
KCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9u
PTEwJmRlbGF5PTAiKTsKIAogICAgICAgICAgICAgc2Vjb25kUmVxLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgewogICAgICAgICAgICAgICAgIGlmIChyZXBlYXRDb3VudCsrIDwgNDApCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNz
ZXJ0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9u
L3BlbmRpbmctbG9jYXRpb24tY2hhbmdlLWFzc2VydC5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFu
Z2UtYXNzZXJ0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOwogfQotd2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291cmNlcy9z
bG93LW5vdGlmeS1kb25lLnBocCI7Cit3aW5kb3cubG9jYXRpb24gPSAiLi4vcmVzb3VyY2VzL3Ns
b3ctbm90aWZ5LWRvbmUucHkiOwogPC9zY3JpcHQ+PHNjcmlwdD4KIGFsZXJ0KCdGQUlMIDEgb2Yg
MycpOwogPC9zY3JpcHQ+PHNjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJl
bG9hZC9kZWxheWluZ19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWlu
Z19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCShyZXZpc2lv
biAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25s
b2FkX2xpbmtfcHJlbG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNyw3ICs3LDcgQEAKICAgICB2YXIgZmluaXNoZWRJbWFnZSA9IGZhbHNlOwogPC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgotPGxpbmsgcmVsPXByZWxvYWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwIiBh
cz1pbWFnZSBvbmxvYWQ9ImZpbmlzaGVkSW1hZ2UgPSB0cnVlOyI+Cis8bGluayByZWw9cHJlbG9h
ZCBocmVmPSIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5p
c2hlZEltYWdlID0gdHJ1ZTsiPgogPGJvZHk+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgIH0pOwogICAgIHZhciBpbWcgPSBuZXcgSW1h
Z2UoKTsKLSAgICBpbWcuc3JjID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCI7CisgICAg
aW1nLnNyYyA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSI7CiAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChpbWcpOwogPC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3Zl
X3ByZWxvYWRfaHJlZi5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTgsMTQgKzgsMTQgQEAKICAgICBsaW5rLmFzID0gImltYWdlIjsKICAgICBsaW5r
LnJlbCA9ICJwcmVsb2FkIjsKICAgICAvLyBDYWNoZS1idXN0aW5nIGlzIG5lZWRlZCBmb3Igc2xv
dyByZXNvdXJjZXMuCi0gICAgbGluay5ocmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBo
cD9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOworICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMv
c2xvdy1pbWFnZS5weT9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIHZhciBkb3dubG9hZGVk
SW1hZ2UgPSBmYWxzZTsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspOwogICAg
IGxpbmsuaHJlZiA9ICIiOwogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVu
Y3Rpb24oKSB7CiAgICAgICAgIHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgicmVzb3VyY2UiKTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRyaWVzLmxl
bmd0aDsgKytpKSB7Ci0gICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNs
b3ctaW1hZ2UucGhwIikgIT0gLTEpCisgICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmlu
ZGV4T2YoInNsb3ctaW1hZ2UucHkiKSAhPSAtMSkKICAgICAgICAgICAgICAgICBkb3dubG9hZGVk
SW1hZ2UgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAgIHNob3VsZEJlRmFsc2UoImRvd25sb2Fk
ZWRJbWFnZSIpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxh
eWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRf
YmVmb3JlX2Rpc2NvdmVyeS5odG1sCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2Nv
dmVyeS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgLy8gVGhlIHJh
bmQgdmFsdWUgaXMgbmVjZXNzYXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCiAgICAg
dmFyIHJhbmQgPSBNYXRoLnJhbmRvbSgpOwogICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9
cHJlbG9hZCBocmVmPScuLi9yZXNvdXJjZXMvc2xvdy1zY3JpcHQucGw/ZGVsYXk9MjAwO3JhbmQ9
IiArIHJhbmQgKyAiJyBhcz1zY3JpcHQgb25sb2FkPSd3aW5kb3cuZmluaXNoZWRTY3JpcHQgPSB0
cnVlOyB0ZXN0KCk7Jz4iKTsKLSAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQg
aHJlZj0nLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1p
bWFnZSBvbmxvYWQ9J3dpbmRvdy5maW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7Cisg
ICAgZG9jdW1lbnQud3JpdGUoIjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9z
bG93LWltYWdlLnB5P3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRvdy5m
aW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CiA8L3NjcmlwdD4KIDxib2R5PgogPHNj
cmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3Rpbmdf
cHJlbG9hZF9hdF9vbmxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHJldmlzaW9u
IDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3Rpbmdf
cHJlbG9hZF9hdF9vbmxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAKIDxz
Y3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0PgogICAgIC8vIFRoZSByYW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNs
b3cgcmVzb3VyY2VzLgotICAgIHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgdmFy
IGltYWdlVVJMID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5w
eT9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAg
IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeU5hbWUoaW1hZ2VVUkwpLmxlbmd0aDsKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCShyZXZpc2lvbiAy
NzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBo
cAkobm9uZXhpc3RlbnQpCkBAIC0xLDEwICswLDAgQEAKLTw/cGhwCi0gIGlmICghaXNzZXQoJF9T
RVJWRVJbJ1BIUF9BVVRIX1VTRVInXSkgfHwgIWlzc2V0KCRfUkVRVUVTVFsndWlkJ10pIHx8ICgk
X1JFUVVFU1RbJ3VpZCddICE9ICRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pKSB7Ci0gICBoZWFk
ZXIoJ1dXVy1BdXRoZW50aWNhdGU6IEJhc2ljIHJlYWxtPSJXZWJLaXQgVGVzdCBSZWFsbSInKTsK
LSAgIGhlYWRlcignSFRUUC8xLjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgZWNobyAnQXV0aGVu
dGljYXRpb24gY2FuY2VsZWQnOwotICAgZXhpdDsKLSAgfSBlbHNlIHsKLSAgIGVjaG8gIlVzZXI6
IHskX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddfSwgcGFzc3dvcmQ6IHskX1NFUlZFUlsnUEhQX0FV
VEhfUFcnXX0uIjsKLSAgfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2RpZ2VzdC1hdXRoL2F1dGhvcml6ZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkocmV2aXNpb24g
Mjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgv
YXV0aG9yaXplLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi0KLXJl
cXVpcmVfb25jZSAiZGlnZXN0LnBocCI7Ci0KLWlmIChlbXB0eSgkX1NFUlZFUlsnUEhQX0FVVEhf
RElHRVNUJ10pKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0g
ICAgaGVhZGVyKCJXV1ctQXV0aGVudGljYXRlOiBEaWdlc3QgcmVhbG09XCJ7JHJlYWxtfVwiLHFv
cD1cImF1dGhcIixub25jZT1cInskbm9uY2V9XCIsb3BhcXVlPVwieyRvcGFxdWV9XCIiKTsKLQot
ICAgIGVjaG8gIjxoMT5Zb3UgYXJlIG5vdCBhbGxvd2VkIHRvIHNlZSB0aGlzIHNlY3JldC48L2gx
PiI7Ci19IGVsc2VpZiAoISgkZGF0YSA9IGh0dHBfZGlnZXN0X3BhcnNlKCRfU0VSVkVSWydQSFBf
QVVUSF9ESUdFU1QnXSkpKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVk
Jyk7Ci0gICAgZWNobyAiPGgxPkludmFsaWQgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNlaWYg
KCEoJHVzZXJuYW1lID0gdmFsaWRhdGVfZGlnZXN0KCRkYXRhKSkpIHsKLSAgICBoZWFkZXIoJ0hU
VFAvMS4wIDQwMSBVbmF1dGhvcml6ZWQnKTsKLSAgICBlY2hvICI8aDE+V3JvbmcgY3JlZGVudGlh
bHMuPC9oMT4iOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFp
bicpOwotICAgIGVjaG8gJ1VzZXI6ICcgLiAkdXNlcm5hbWUgLiAiXG4iOwotfQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9k
aWdlc3QucGhwCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kaWdlc3QtYXV0aC9kaWdlc3QucGhwCShub25leGlzdGVudCkKQEAgLTEsNTIgKzAs
MCBAQAotPD9waHAKLQotJHJlYWxtID0gJ0RpZ2VzdCBBdXRoIFByb3RlY3RlZCBBcmVhJzsKLSRu
b25jZSA9IHVuaXFpZCgpOwotJG9wYXF1ZSA9IG1kNSgkcmVhbG0pOwotCi0kdXNlcm5hbWUgPSAn
ZXZlcnlib2R5JzsKLSRwYXNzd29yZCA9ICdsb3Zlc2JlZXInOwotCi1mdW5jdGlvbiBodHRwX2Rp
Z2VzdF9wYXJzZSgkdHh0KQotewotICAgIC8vIHByb3RlY3QgYWdhaW5zdCBtaXNzaW5nIGRhdGEK
LSAgICAkbmVlZGVkX3BhcnRzID0gWwotICAgICAgICAnbm9uY2UnID0+IDEsCi0gICAgICAgICdu
YycgPT4gMSwKLSAgICAgICAgJ2Nub25jZScgPT4gMSwKLSAgICAgICAgJ3FvcCcgPT4gMSwKLSAg
ICAgICAgJ3VzZXJuYW1lJyA9PiAxLAotICAgICAgICAndXJpJyA9PiAxLAotICAgICAgICAncmVz
cG9uc2UnID0+IDEKLSAgICBdOwotICAgICRkYXRhID0gW107Ci0gICAgJGtleXMgPSBpbXBsb2Rl
KCd8JywgYXJyYXlfa2V5cygkbmVlZGVkX3BhcnRzKSk7Ci0KLSAgICBwcmVnX21hdGNoX2FsbCgn
QCgnIC4gJGtleXMgLiAnKT0oPzooW1wnIl0pKFteXDJdKz8pXDJ8KFteXHMsXSspKUAnLCAkdHh0
LCAkbWF0Y2hlcywgUFJFR19TRVRfT1JERVIpOwotCi0gICAgZm9yZWFjaCAoJG1hdGNoZXMgYXMg
JG0pIHsKLSAgICAgICAgJGRhdGFbJG1bMV1dID0gJG1bM10gPyAkbVszXSA6ICRtWzRdOwotICAg
ICAgICB1bnNldCgkbmVlZGVkX3BhcnRzWyRtWzFdXSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICRu
ZWVkZWRfcGFydHMgPyBmYWxzZSA6ICRkYXRhOwotfQotCi1mdW5jdGlvbiB2YWxpZGF0ZV9kaWdl
c3QoJGRhdGEpCi17Ci0gICAgZ2xvYmFsICRyZWFsbSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQ7Ci0K
LSAgICBpZiAoJGRhdGFbJ3VzZXJuYW1lJ10gIT09ICR1c2VybmFtZSkKLSAgICAgICAgcmV0dXJu
IGZhbHNlOwotCi0gICAgJEExID0gZ2V0X21kNV9vZigkZGF0YVsndXNlcm5hbWUnXSwgJHJlYWxt
LCAkcGFzc3dvcmQpOwotICAgICRBMiA9IGdldF9tZDVfb2YoJF9TRVJWRVJbJ1JFUVVFU1RfTUVU
SE9EJ10sICRkYXRhWyd1cmknXSk7Ci0gICAgJHZhbGlkX3Jlc3BvbnNlID0gZ2V0X21kNV9vZigk
QTEsICRkYXRhWydub25jZSddLCAkZGF0YVsnbmMnXSwgJGRhdGFbJ2Nub25jZSddLCAkZGF0YVsn
cW9wJ10sICRBMik7Ci0KLSAgICByZXR1cm4gJGRhdGFbJ3Jlc3BvbnNlJ10gPT0gJHZhbGlkX3Jl
c3BvbnNlID8gJHVzZXJuYW1lIDogbnVsbDsKLX0KLQotZnVuY3Rpb24gZ2V0X21kNV9vZiguLi4k
aXRlbXMpCi17Ci0gICAgcmV0dXJuIG1kNShpbXBsb2RlKCc6JywgJGl0ZW1zKSk7Ci19ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShy
ZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShub25leGlzdGVudCkKQEAgLTEsMjkgKzAsMCBAQAot
PD9waHAKLWhlYWRlcigiRXhwaXJlczogVGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVQiKTsK
LQotaWYgKCRfR0VUWydhbGxvd0NhY2hlJ10pIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTog
YXBwbGljYXRpb24vanNvbiIpOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTog
YXBwbGljYXRpb24veC1uby1idWZmZXJpbmctcGxlYXNlIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1D
b250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRl
cigiUHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1pZiAoJF9HRVRbJ2NvcnMnXSkgewotICAgIGhl
YWRlcigiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiAqIik7Ci19Ci0KLSRpdGVyYXRpb24g
PSAkX0dFVFsnaXRlcmF0aW9uJ107Ci0kZGVsYXkgPSAkX0dFVFsnZGVsYXknXTsKLQotZWNobyAi
WyRpdGVyYXRpb24sICRkZWxheSAiOwotCi1mb3IgKCRpID0gMTsgJGkgPD0gJGl0ZXJhdGlvbjsg
KyskaSkgewotICAgIGVjaG8gIiwgJGksIFwiZm9vYmFyXCIiOwotICAgIC8vIEZvcmNlIGNvbnRl
bnQgdG8gYmUgc2VudCB0byB0aGUgYnJvd3NlciBhcyBpcy4KLSAgICBvYl9mbHVzaCgpOwotICAg
IGZsdXNoKCk7Ci0gICAgdXNsZWVwKCRkZWxheSAqIDEwMDApOwotfQotZWNobyAiXSI7Ci0/PgpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwzOCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBv
cnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQg
cGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5H
JywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQorYWxsb3dfY2FjaGUgPSBxdWVyeS5nZXQo
J2FsbG93Q2FjaGUnLCBbTm9uZV0pWzBdCitjb3JzID0gcXVlcnkuZ2V0KCdjb3JzJywgW05vbmVd
KVswXQorCitzeXMuc3Rkb3V0LndyaXRlKCdFeHBpcmVzOiBUaHUsIDAxIERlYyAyMDAzIDE2OjAw
OjAwIEdNVFxyXG4nKQorCitpZiBhbGxvd19jYWNoZSBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rk
b3V0LndyaXRlKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cclxuJykKK2Vsc2U6Cisg
ICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24v
eC1uby1idWZmZXJpbmctcGxlYXNlXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNh
Y2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8t
Y2FjaGVcclxuJworICAgICkKKworaWYgY29ycyBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0
LndyaXRlKCdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJykKKworc3lzLnN0ZG91
dC53cml0ZSgnXHJcbicpCisKK2l0ZXJhdGlvbiA9IGludChxdWVyeS5nZXQoJ2l0ZXJhdGlvbics
IFswXSlbMF0pCitkZWxheSA9IGludChxdWVyeS5nZXQoJ2RlbGF5JywgWzBdKVswXSkKKworc3lz
LnN0ZG91dC53cml0ZSgnW3t9LCB7fSAnLmZvcm1hdChpdGVyYXRpb24sIGRlbGF5KSkKKworZm9y
IGkgaW4gcmFuZ2UoMSwgaXRlcmF0aW9uICsgMSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnLCB7
fSwgImZvb2JhciInLmZvcm1hdChpKSkKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICB0aW1l
LnNsZWVwKGRlbGF5IC8gMTAwMCkKKworc3lzLnN0ZG91dC53cml0ZSgnXScpCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCAr
MSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKHJl
dmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8t
aWZyYW1lLXNyYy5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNSArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRG
cmFtZXNBc1RleHQoKTsKLSAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLX0KLTwvc2Ny
aXB0PgotPC9oZWFkPgotPGJvZHk+Ci08aWZyYW1lIHNyYz0iPD9waHAgZWNobyAkX0dFVFsnc3Jj
J107ID8+Ij48L2lmcmFtZT4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKG5vbmV4aXN0
ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3Jj
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjUgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhv
bjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFy
c2VfcXMKKworc3JjID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcn
KSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdzcmMnLCBbJyddKVswXQorCitzeXMuc3Rk
b3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworcHJpbnQoJycn
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikge3sKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVy
LmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworfX0KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0ie30iPjwvaWZy
YW1lPgorPC9ib2R5PgorPC9odG1sPicnJy5mb3JtYXQoc3JjKSkKClByb3BlcnR5IGNoYW5nZXMg
b246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2
MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlm
aWVkLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLWRhdGVfZGVmYXVs
dF90aW1lem9uZV9zZXQoJ1VUQycpOwotJGZpbGVQYXRoID0gJF9HRVRbJ3BhdGgnXTsKLWlmIChm
aWxlX2V4aXN0cygkZmlsZVBhdGgpKSB7Ci0gICAgZWNobyBkYXRlKCJVIiwgZmlsZW10aW1lKCRm
aWxlUGF0aCkpOwotfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2ZpbGUtbGFzdC1tb2RpZmllZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1w
b3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKwor
cGF0aCA9IG9zLnBhdGguYWJzcGF0aChwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RS
SU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3BhdGgnLCBbX19maWxlX19d
KVswXSkKKworc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJc
bicpCisKK2lmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgIHN5cy5zdGRvdXQud3JpdGUoc3Ry
KG9zLnN0YXQocGF0aCkuc3RfbXRpbWUpLnNwbGl0KCcuJylbMF0pCgpQcm9wZXJ0eSBjaGFuZ2Vz
IG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQu
cHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHAJKG5v
bmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi0gICAgJGRhdGUgPSAkX0dFVFsnZGF0
ZSddOwotICAgIGhlYWRlcigiTGFzdC1Nb2RpZmllZDogJGRhdGUiKTsKLT8+Ci08c2NyaXB0Pgot
ZG9jdW1lbnQud3JpdGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3Ry
aW5nKCkpOwotPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9sYXN0LW1vZGlmaWVkLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDIwIEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0
IHN5cworZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK2RhdGUgPSBwYXJzZV9x
cyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1U
cnVlKS5nZXQoJ2RhdGUnLCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKAorICAgICdBY2Nl
c3MtQ29udHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJworICAgICdFVGFnOiBmb29cclxuJworICAg
ICdMYXN0LU1vZGlmaWVkOiB7fVxyXG4nCisgICAgJ0NhY2hlLUNvbnRyb2w6IG1heC1hZ2U9MFxy
XG4nCisgICAgJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicKKyAgICAnQ29udGVudC1MZW5n
dGg6IDg0XHJcblxyXG4nLmZvcm1hdChkYXRlKQorKQorCitwcmludCgnJyc8c2NyaXB0PgorZG9j
dW1lbnQud3JpdGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5n
KCkpOworPC9zY3JpcHQ+JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46
ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVy
dHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDUwICsw
LDAgQEAKLTw/cGhwCi0kbmFtZSA9ICRfR0VUWyduYW1lJ107Ci0kc3RhbGxBdCA9ICRfR0VUWydz
dGFsbEF0J107Ci0kc3RhbGxGb3IgPSAkX0dFVFsnc3RhbGxGb3InXTsKLSRzdGFsbFJlcGVhdCA9
ICRfR0VUWydzdGFsbFJlcGVhdCddOwotJG1pbWVUeXBlID0gJF9HRVRbJ21pbWVUeXBlJ107Ci0K
LSRmaWxlID0gZm9wZW4oJG5hbWUsICJyYiIpOwotaWYgKCEkZmlsZSkKLSAgICBkaWUoIkNhbm5v
dCBvcGVuIGZpbGUuIik7Ci0KLWhlYWRlcigiQ29udGVudC1UeXBlOiAiIC4gJG1pbWVUeXBlKTsK
LWhlYWRlcigiQ29udGVudC1MZW5ndGg6ICIgLiBmaWxlc2l6ZSgkbmFtZSkpOwotCi1pZiAoaXNz
ZXQoJHN0YWxsQXQpICYmIGlzc2V0KCRzdGFsbEZvcikpIHsKLSAgICAkc3RhbGxBdCA9IChpbnQp
JHN0YWxsQXQ7Ci0gICAgaWYgKCRzdGFsbEF0ID4gZmlsZXNpemUoJG5hbWUpKQotICAgICAgICBk
aWUoIkluY29ycmVjdCB2YWx1ZSBmb3Igc3RhbGxBdC4iKTsKLQotICAgICR3cml0dGVuVG90YWwg
PSAwOwotICAgICRmaWxlU2l6ZSA9IGZpbGVzaXplKCRuYW1lKTsKLQotICAgIHdoaWxlICgkd3Jp
dHRlblRvdGFsIDwgJGZpbGVTaXplKSB7Ci0gICAgICAgICRzdGFsbEF0ID0gbWluKCRzdGFsbEF0
LCAkZmlsZVNpemUgLSAkd3JpdHRlblRvdGFsKTsKLSAgICAgICAgJHdyaXR0ZW4gPSAwOwotCi0g
ICAgICAgIHdoaWxlICgkd3JpdHRlbiA8ICRzdGFsbEF0KSB7Ci0gICAgICAgICAgICAkd3JpdGUg
PSBtaW4oMTAyNCwgJHN0YWxsQXQgLSAkd3JpdHRlbik7Ci0gICAgICAgICAgICBlY2hvKGZyZWFk
KCRmaWxlLCAkd3JpdGUpKTsKLSAgICAgICAgICAgICR3cml0dGVuICs9ICR3cml0ZTsKLSAgICAg
ICAgICAgIGZsdXNoKCk7Ci0gICAgICAgICAgICBvYl9mbHVzaCgpOwotICAgICAgICB9Ci0KLSAg
ICAgICAgJHdyaXR0ZW5Ub3RhbCArPSAkd3JpdHRlbjsKLSAgICAgICAgJHJlbWFpbmluZyA9ICRm
aWxlU2l6ZSAtICR3cml0dGVuVG90YWw7Ci0gICAgICAgIGlmICghJHJlbWFpbmluZykKLSAgICAg
ICAgICAgIGJyZWFrOwotCi0gICAgICAgIHVzbGVlcCgkc3RhbGxGb3IgKiAxMDAwMDAwKTsKLSAg
ICAgICAgaWYgKCFpc3NldCgkc3RhbGxSZXBlYXQpIHx8ICEkc3RhbGxSZXBlYXQpCi0gICAgICAg
ICAgICAkc3RhbGxBdCA9ICRyZW1haW5pbmc7Ci0gICAgfQotfSBlbHNlIHsKLSAgICBlY2hvKGZy
ZWFkKCRmaWxlLCBmaWxlc2l6ZSgkbmFtZSkpKTsKLSAgICBmbHVzaCgpOwotICAgIG9iX2ZsdXNo
KCk7Ci19Ci1mY2xvc2UoJGZpbGUpOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CShub25leGlzdGVudCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsNjYgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0
IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBh
cnNlX3FzCisKK3F1ZXJ5ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycs
ICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkKK25hbWUgPSBxdWVyeS5nZXQoJ25hbWUnLCBb
JyddKVswXQorc3RhbGxfYXQgPSBxdWVyeS5nZXQoJ3N0YWxsQXQnLCBbTm9uZV0pWzBdCitzdGFs
bF9mb3IgPSBxdWVyeS5nZXQoJ3N0YWxsRm9yJywgW05vbmVdKVswXQorc3RhbGxfcmVwZWF0ID0g
cXVlcnkuZ2V0KCdzdGFsbFJlcGVhdCcsIFtOb25lXSlbMF0KK21pbWVfdHlwZSA9IHF1ZXJ5Lmdl
dCgnbWltZVR5cGUnLCBbJyddKVswXQorCitpZiBub3Qgb3MucGF0aC5pc2ZpbGUobmFtZSk6Cisg
ICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisg
ICAgc3lzLmV4aXQoMCkKKworbmFtZSA9IG9zLnBhdGguYWJzcGF0aChuYW1lKQorCitvcGVuX2Zp
bGUgPSBvcGVuKG5hbWUsICdyYicpCitmaWxlX3NpemUgPSBvcy5wYXRoLmdldHNpemUobmFtZSkK
K2NvbnRlbnQgPSBvcGVuX2ZpbGUucmVhZCgpCisKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0Nv
bnRlbnQtVHlwZToge31cclxuJworICAgICdDb250ZW50LUxlbmd0aDoge31cclxuXHJcbicuZm9y
bWF0KG1pbWVfdHlwZSwgZmlsZV9zaXplKQorKQorCitpZiBzdGFsbF9hdCBpcyBub3QgTm9uZSBh
bmQgc3RhbGxfZm9yIGlzIG5vdCBOb25lOgorICAgIHN0YWxsX2F0ID0gaW50KHN0YWxsX2F0KQor
ICAgIHN0YWxsX2ZvciA9IGZsb2F0KHN0YWxsX2ZvcikKKworICAgIGlmIHN0YWxsX2F0ID4gZmls
ZV9zaXplOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdJbmNvcnJlY3QgdmFsdWUgZm9yIHN0
YWxsQXQuJykKKyAgICAgICAgc3lzLmV4aXQoMCkKKworICAgIHdyaXR0ZW5fdG90YWwgPSAwCisg
ICAgd2hpbGUgd3JpdHRlbl90b3RhbCA8IGZpbGVfc2l6ZToKKyAgICAgICAgc3RhbGxfYXQgPSBt
aW4oc3RhbGxfYXQsIGZpbGVfc2l6ZSAtIHdyaXR0ZW5fdG90YWwpCisgICAgICAgIHdyaXR0ZW4g
PSAwCisKKyAgICAgICAgd2hpbGUgd3JpdHRlbiA8IHN0YWxsX2F0OgorICAgICAgICAgICAgd3Jp
dGUgPSBtaW4oMTAyNCwgc3RhbGxfYXQgLSB3cml0dGVuKQorCisgICAgICAgICAgICBzeXMuc3Rk
b3V0LmZsdXNoKCkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGNvbnRlbnRb
d3JpdHRlbl90b3RhbCArIHdyaXR0ZW46d3JpdHRlbl90b3RhbCArIHdyaXR0ZW4gKyB3cml0ZV0p
CisgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKworICAgICAgICAgICAgd3JpdHRlbiAr
PSB3cml0ZQorCisgICAgICAgIHdyaXR0ZW5fdG90YWwgKz0gd3JpdHRlbgorICAgICAgICByZW1h
aW5pbmcgPSBmaWxlX3NpemUgLSB3cml0dGVuX3RvdGFsCisKKyAgICAgICAgaWYgcmVtYWluaW5n
ID09IDA6CisgICAgICAgICAgICBicmVhaworCisgICAgICAgIHRpbWUuc2xlZXAoc3RhbGxfZm9y
KQorICAgICAgICBpZiBzdGFsbF9yZXBlYXQgaXMgTm9uZToKKyAgICAgICAgICAgIHN0YWxsX2F0
ID0gcmVtYWluaW5nCitlbHNlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5cy5zdGRv
dXQuYnVmZmVyLndyaXRlKGNvbnRlbnQpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisKK29wZW5f
ZmlsZS5jbG9zZSgpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0
YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHAJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5
OCArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0K
LS8vIFRoaXMgc2NyaXB0IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBmb3IgcmV0cmlldmluZyBm
aWxlcy4gV2hlbiB0aGUgc3RhdGUgaXMgc2V0IHRvCi0vLyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMg
YSBuZXR3b3JrIGVycm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KLQotaWYgKCFzeXNfZ2V0
X3RlbXBfZGlyKCkpIHsKLSAgICBoZWFkZXIoIkhUVFAvMS4xIDUwMCBJbnRlcm5hbCBTZXJ2ZXIg
RXJyb3IiKTsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwot
ICAgIGV4aXQoKTsKLX0KLQotaWYgKCFpc3NldCgkX0dFVFsndGVzdCddKSkgewotICAgIGhlYWRl
cigiSFRUUC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gInRlc3Qg
cGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVcbiI7Ci0g
ICAgZXhpdCgpOwotfQotCi1mdW5jdGlvbiB0ZW1wUGF0aEJhc2UoKQotewotICAgIHJldHVybiBz
eXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsndGVzdCddOwotfQotCi1mdW5jdGlvbiBz
ZXRTdGF0ZSgkbmV3U3RhdGUsICRmaWxlKQotewotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxl
LCAkbmV3U3RhdGUpOwotfQotCi1mdW5jdGlvbiBnZXRTdGF0ZSgkZmlsZSkKLXsKLSAgICBpZiAo
IWZpbGVfZXhpc3RzKCRmaWxlKSkgewotICAgICAgICByZXR1cm4gIlVuaW5pdGlhbGl6ZWQiOwot
ICAgIH0KLSAgICByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoJGZpbGUpOwotfQotCi1mdW5jdGlv
biBjb250ZW50VHlwZSgkcGF0aCkKLXsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wuaHRtbCQvIiwg
JHBhdGgpKQotICAgICAgICByZXR1cm4gInRleHQvaHRtbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2go
Ii9cLm1hbmlmZXN0JC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9jYWNoZS1tYW5p
ZmVzdCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLmpzJC8iLCAkcGF0aCkpCi0gICAgICAgIHJl
dHVybiAidGV4dC9qYXZhc2NyaXB0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueG1sJC8iLCAk
cGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veG1sIjsKLSAgICBpZiAocHJlZ19t
YXRjaCgiL1wueGh0bWwkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNhdGlvbi94
aHRtbCt4bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5zdmckLyIsICRwYXRoKSkKLSAgICAg
ICAgcmV0dXJuICJhcHBsaWNhdGlvbi9zdmcreG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
eHNsJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veHNsdCt4bWwiOwot
ICAgIGlmIChwcmVnX21hdGNoKCIvXC5naWYkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJp
bWFnZS9naWYiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5qcGckLyIsICRwYXRoKSkKLSAgICAg
ICAgcmV0dXJuICJpbWFnZS9qcGVnIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wucG5nJC8iLCAk
cGF0aCkpCi0gICAgICAgIHJldHVybiAiaW1hZ2UvcG5nIjsKLSAgICByZXR1cm4gInRleHQvcGxh
aW4iOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCkKLXsKLSAgICBo
ZWFkZXIoIkV4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UIik7Ci0gICAgaGVh
ZGVyKCJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIp
OwotICAgIGhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0
ZVJlc3BvbnNlKCRwYXRoKQotewotICAgIGdsb2JhbCAkc3RhdGVGaWxlOwotICAgICRzdGF0ZSA9
IGdldFN0YXRlKCRzdGF0ZUZpbGUpOwotICAgIGlmICgkc3RhdGUgPT0gIk9mZmxpbmUiKSB7Ci0g
ICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGggYSBub25z
ZW5zZSByZXNwb25zZS4KLSAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSAzMDcgVGVtcG9yYXJ5IFJl
ZGlyZWN0Jyk7Ci0gICAgICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX1NFUlZFUlsnUkVRVUVT
VF9VUkknXSk7ICMgUmVkaXJlY3QgdG8gc2VsZi4KLSAgICAgICAgaGVhZGVyKCdDb250ZW50LUxl
bmd0aDogMScpOwotICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiA1JywgZmFsc2UpOyAj
IE11bHRpcGxlIGNvbnRlbnQtbGVuZ3RoIGhlYWRlcnMsIHNvbWUgbmV0d29yayBzdGFja3MgY2Fu
IGRldGVjdCB0aGlzIGNvbmRpdGlvbiBmYXN0ZXIuCi0gICAgICAgIGVjaG8gIkludGVudGlvbmFs
bHkgaW5jb3JyZWN0IHJlc3BvbnNlLiI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8gQSBsaXR0
bGUgc2VjdXJ1dHkgY2hlY2tpbmcgY2FuJ3QgaHVydC4KLSAgICAgICAgaWYgKHN0cnN0cigkcGF0
aCwgIi4uIikpCi0gICAgICAgICAgICBleGl0OwotCi0gICAgICAgIGlmICgkcGF0aFswXSA9PSAn
LycpCi0gICAgICAgICAgICAkcGF0aCA9ICcuLicgLiAkcGF0aDsKLQotICAgICAgICBpZiAoISRf
R0VUWydhbGxvdy1jYWNoaW5nJ10pCi0gICAgICAgICAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVh
ZGVyKCk7Ci0KLSAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgewotICAgICAgICAgICAg
aGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAiIC4gZ21kYXRlKCJELCBkIE0gWSBIOmk6cyBUIiwgZmls
ZW10aW1lKCRwYXRoKSkpOwotICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LVR5cGU6ICIgLiBj
b250ZW50VHlwZSgkcGF0aCkpOwotICAgICAgICAKLSAgICAgICAgICAgIHByaW50IGZpbGVfZ2V0
X2NvbnRlbnRzKCRwYXRoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGhlYWRlcign
SFRUUC8xLjEgNDA0IE5vdCBGb3VuZCcpOwotICAgICAgICB9Ci0gICAgfQotfQotCi1mdW5jdGlv
biBoYW5kbGVJbmNyZWFzZVJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewotICAgICRyZXNv
dXJjZUNvdW50RmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAgJHJlc291cmNl
Q291bnQgPSBnZXRTdGF0ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVjZXMgPSBleHBs
b2RlKCIgIiwgJHJlc291cmNlQ291bnQpOwotICAgICRjb3VudCA9IDA7Ci0gICAgaWYgKGNvdW50
KCRwaWVjZXMpID09IDIgJiYgJHBpZWNlc1swXSA9PSAkcGF0aCkgewotICAgICAgICAkY291bnQg
PSAxICsgJHBpZWNlc1sxXTsKLSAgICB9IGVsc2UgewotICAgICAgICAkY291bnQgPSAxOwotICAg
IH0KLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsICRwYXRoIC4gIiAi
IC4gJGNvdW50KTsKLSAgICBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKTsKLX0KLQotZnVuY3Rpb24g
aGFuZGxlUmVzZXRSZXNvdXJjZUNvdW50Q29tbWFuZCgpCi17Ci0gICAgJHJlc291cmNlQ291bnRG
aWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLWNvdW50IjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygk
cmVzb3VyY2VDb3VudEZpbGUsIDApOwotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsK
LSAgICBoZWFkZXIoJ0hUVFAvMS4xIDIwMCBPSycpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVHZXRS
ZXNvdXJjZUNvdW50Q29tbWFuZCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0
ZW1wUGF0aEJhc2UoKSAuICItY291bnQiOwotICAgICRyZXNvdXJjZUNvdW50ID0gZ2V0U3RhdGUo
JHJlc291cmNlQ291bnRGaWxlKTsKLSAgICAkcGllY2VzID0gZXhwbG9kZSgiICIsICRyZXNvdXJj
ZUNvdW50KTsKLSAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0gICAgaGVhZGVyKCdI
VFRQLzEuMSAyMDAgT0snKTsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2Vz
WzBdID09ICRwYXRoKSB7Ci0gICAgICAgIGVjaG8gJHBpZWNlc1sxXTsKLSAgICB9IGVsc2Ugewot
ICAgICAgICBlY2hvIDA7Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVTdGFydFJlc291cmNl
UmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAu
ICItbG9nIjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAgIiIpOwot
fQotCi1mdW5jdGlvbiBoYW5kbGVDbGVhclJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRy
ZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBmaWxlX3B1dF9j
b250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJl
c291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJh
c2UoKSAuICItbG9nIjsKLQotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBo
ZWFkZXIoIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbiIpOwotCi0gICAgcHJpbnQgZmlsZV9nZXRf
Y29udGVudHMoJHJlc291cmNlTG9nRmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUxvZ1Jlc291
cmNlUmVxdWVzdCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VMb2dGaWxlID0gdGVtcFBhdGhCYXNl
KCkgLiAiLWxvZyI7Ci0gICAgCi0gICAgJG5ld0RhdGEgPSAiXG4iLiRwYXRoOwotICAgIC8vIERv
Y3VtZW50YXRpb24gc2F5cyB0aGF0IGFwcGVuZHMgYXJlIGF0b21pYy4KLSAgICBmaWxlX3B1dF9j
b250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAkbmV3RGF0YSwgRklMRV9BUFBFTkQpOwotfQotCi0k
c3RhdGVGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLXN0YXRlIjsKLSRjb21tYW5kID0gJF9HRVRb
J2NvbW1hbmQnXTsKLWlmICgkY29tbWFuZCkgewotICAgIGlmICgkY29tbWFuZCA9PSAiY29ubmVj
dCIpCi0gICAgICAgIHNldFN0YXRlKCJPbmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlm
ICgkY29tbWFuZCA9PSAiZGlzY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJPZmZsaW5lIiwg
JHN0YXRlRmlsZSk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImluY3JlYXNlLXJlc291cmNl
LWNvdW50IikKLSAgICAgICAgaGFuZGxlSW5jcmVhc2VSZXNvdXJjZUNvdW50Q29tbWFuZCgkX0dF
VFsncGF0aCddKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAicmVzZXQtcmVzb3VyY2UtY291
bnQiKQotICAgICAgICBoYW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5kKCk7Ci0gICAgZWxz
ZSBpZiAoJGNvbW1hbmQgPT0gImdldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZUdl
dFJlc291cmNlQ291bnRDb21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYgKCRjb21t
YW5kID09ICJzdGFydC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZVN0YXJ0
UmVzb3VyY2VSZXF1ZXN0c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJjbGVhci1y
ZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZUNsZWFyUmVzb3VyY2VSZXF1ZXN0
c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJnZXQtcmVzb3VyY2UtcmVxdWVzdC1s
b2ciKQotICAgICAgICBoYW5kbGVHZXRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBp
ZiAoJGNvbW1hbmQgPT0gImxvZy1yZXNvdXJjZS1yZXF1ZXN0IikKLSAgICAgICAgaGFuZGxlTG9n
UmVzb3VyY2VSZXF1ZXN0KCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UKLSAgICAgICAgZWNobyAi
VW5rbm93biBjb21tYW5kOiAiIC4gJGNvbW1hbmQgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLQot
JHJlcXVlc3RlZFBhdGggPSAkX0dFVFsncGF0aCddOwotZ2VuZXJhdGVSZXNwb25zZSgkcmVxdWVz
dGVkUGF0aCk7Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxNzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworIyBUaGlzIHNj
cmlwdCBhY3RzIGFzIGEgc3RhdGVmdWwgcHJveHkgZm9yIHJldHJpZXZpbmcgZmlsZXMuIFdoZW4g
dGhlIHN0YXRlIGlzIHNldCB0bworIyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVy
cm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitp
bXBvcnQgdGVtcGZpbGUKK2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCitmcm9tIHBvcnRh
YmlsaXR5TGF5ZXIgaW1wb3J0IGdldF9zdGF0ZSwgc2V0X3N0YXRlCitmcm9tIHVybGxpYi5wYXJz
ZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVF
UllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQordGVzdCA9IHF1ZXJ5Lmdl
dCgndGVzdCcsIFtOb25lXSlbMF0KK2NvbW1hbmQgPSBxdWVyeS5nZXQoJ2NvbW1hbmQnLCBbTm9u
ZV0pWzBdCisKK2lmIHRlc3QgaXMgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAg
ICAnc3RhdHVzOiA1MDBcclxuJworICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicKKyAgICAgICAgJ3Rlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVu
aXF1ZSB0ZXN0IG5hbWVcbicKKyAgICApCisgICAgc3lzLmV4aXQoMCkKKworCitkZWYgdGVtcF9w
YXRoX2Jhc2UoKToKKyAgICByZXR1cm4gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIo
KSwgdGVzdCkKKworCitzdGF0ZV9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctc3RhdGUnCisK
KworZGVmIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCk6CisgICAgc3lzLnN0ZG91dC53
cml0ZSgKKyAgICAgICAgJ0V4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UXHJc
bicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZh
bGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAgICkKKworCitk
ZWYgY29udGVudF90eXBlKHBhdGgpOgorICAgIHJldHVybiB7CisgICAgICAgICdodG1sJzogJ3Rl
eHQvaHRtbCcsCisgICAgICAgICdtYW5pZmVzdCc6ICd0ZXh0L2NhY2hlLW1hbmlmZXN0JywKKyAg
ICAgICAgJ2pzJzogJ3RleHQvamF2YXNjcmlwdCcsCisgICAgICAgICd4bWwnOiAnYXBwbGljYXRp
b24veG1sJywKKyAgICAgICAgJ3hodG1sJzogJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsCisgICAg
ICAgICdzdmcnOiAnYXBwbGljYXRpb24vc3ZnK3htbCcsCisgICAgICAgICd4c2wnOiAnYXBwbGlj
YXRpb24veHNsdCt4bWwnLAorICAgICAgICAnZ2lmJzogJ2ltYWdlL2dpZicsCisgICAgICAgICdq
cGcnOiAnaW1hZ2UvanBlZycsCisgICAgICAgICdwbmcnOiAnaW1hZ2UvcG5nJworICAgIH0uZ2V0
KHBhdGguc3BsaXQoJy4nKVstMV0sICd0ZXh0L3BsYWluJykKKworCitkZWYgZ2VuZXJhdGVfcmVz
cG9uc2UocGF0aCk6CisgICAgc3RhdGUgPSBnZXRfc3RhdGUoc3RhdGVfZmlsZSkKKyAgICBpZiBz
dGF0ZSA9PSAnT2ZmbGluZSc6CisgICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5
IHJlcGx5aW5nIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKyAgICAgICAgc3lzLnN0ZG91dC53
cml0ZSgKKyAgICAgICAgICAgICdzdGF0dXM6IDMwN1xyXG4nCisgICAgICAgICAgICAnTG9jYXRp
b246IHt9XHJcblxyXG4nICAjIFJlZGlyZWN0IHRvIHNlbGYuCisgICAgICAgICAgICAnSW50ZW50
aW9uYWxseSBpbmNvcnJlY3QgcmVzcG9uc2UuJy5mb3JtYXQob3MuZW52aXJvbi5nZXQoJ1JFUVVF
U1RfVVJJJywgJycpKQorICAgICAgICApCisgICAgZWxzZToKKyAgICAgICAgIyBBIGxpdHRsZSBz
ZWN1cnV0eSBjaGVja2luZyBjYW4ndCBodXJ0LgorICAgICAgICBpZiAnLi4nIGluIHBhdGg6Cisg
ICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5c
clxuJykKKyAgICAgICAgICAgIHN5cy5leGl0KDApCisKKyAgICAgICAgaWYgbGVuKHBhdGgpID4g
MCBhbmQgcGF0aFswXSA9PSAnLyc6CisgICAgICAgICAgICBwYXRoID0gJy4uJyArIHBhdGgKKwor
ICAgICAgICBpZiAnYWxsb3ctY2FjaGluZycgbm90IGluIHF1ZXJ5LmtleXMoKToKKyAgICAgICAg
ICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKworICAgICAgICBpZiBvcy5wYXRo
LmlzZmlsZShwYXRoKToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAg
ICAgICAgJ0xhc3QtTW9kaWZpZWQ6IHt9IEdNVFxyXG4nCisgICAgICAgICAgICAgICAgJ0NvbnRl
bnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAob3Mu
c3RhdChwYXRoKS5zdF9tdGltZSkuc3RyZnRpbWUoJyVhLCAlZCAlYiAlWSAlSDolTTolUycpLCBj
b250ZW50X3R5cGUocGF0aCkpCisgICAgICAgICAgICApCisKKyAgICAgICAgICAgIHdpdGggb3Bl
bihwYXRoLCAncmInKSBhcyBvcGVuX2ZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5m
bHVzaCgpCisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxl
LnJlYWQoKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0
YXR1czogNDA0XHJcblxyXG4nKQorCisKK2RlZiBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291
bnRfY29tbWFuZChwYXRoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jh
c2UoKSArICctY291bnQnCisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2Vf
Y291bnRfZmlsZSkKKyAgICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAg
Y291bnQgPSAwCisgICAgaWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBdID09IHBhdGg6
CisgICAgICAgIGNvdW50ID0gMSArIGludChwaWVjZXNbMV0pCisgICAgZWxzZToKKyAgICAgICAg
Y291bnQgPSAxCisKKyAgICBzZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSwgJ3t9IHt9Jy5m
b3JtYXQocGF0aCwgY291bnQpKQorICAgIGdlbmVyYXRlX3Jlc3BvbnNlKHBhdGgpCisKKworZGVm
IGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKCk6CisgICAgcmVzb3VyY2VfY291
bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHNldF9zdGF0ZShyZXNv
dXJjZV9jb3VudF9maWxlLCAnMCcpCisgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIo
KQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogMjAwXHJcblxyXG4nKQorCisKK2RlZiBo
YW5kbGVfZ2V0X3Jlc291cmNlX2NvdW50X2NvbW1hbmQocGF0aCk6CisgICAgcmVzb3VyY2VfY291
bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHJlc291cmNlX2NvdW50
ID0gZ2V0X3N0YXRlKHJlc291cmNlX2NvdW50X2ZpbGUpCisgICAgcGllY2VzID0gcmVzb3VyY2Vf
Y291bnQuc3BsaXQoJyAnKQorICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKyAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdzdGF0dXM6IDIwMFxyXG5cclxuJykKKworICAgIGlmIGxlbihw
aWVjZXMpID09IDIgYW5kIHBpZWNlc1swXSA9PSBwYXRoOgorICAgICAgICBzeXMuc3Rkb3V0Lndy
aXRlKHN0cihwaWVjZXNbMV0pKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUo
JzAnKQorCisKK2RlZiBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCk6CisgICAg
cmVzb3VyY2VfbG9nX2ZpbGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1sb2cnCisgICAgc2V0X3N0
YXRlKHJlc291cmNlX2xvZ19maWxlLCAnJykKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworCitkZWYgaGFuZGxlX2dldF9yZXNvdXJjZV9y
ZXF1ZXN0c19sb2coKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkg
KyAnLWxvZycKKyAgICBnZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKKyAgICB3aXRo
IG9wZW4ocmVzb3VyY2VfbG9nX2ZpbGUsICdyJykgYXMgb3Blbl9maWxlOgorICAgICAgICBzeXMu
c3Rkb3V0LndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCisKKworZGVmIGhhbmRsZV9sb2dfcmVzb3Vy
Y2VfcmVxdWVzdChwYXRoKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNl
KCkgKyAnLWxvZycKKyAgICBuZXdfZGF0YSA9ICdcbicgKyBwYXRoCisKKyAgICB3aXRoIG9wZW4o
cmVzb3VyY2VfbG9nX2ZpbGUsICdhJykgYXMgb3Blbl9maWxlOgorICAgICAgICBvcGVuX2ZpbGUu
d3JpdGUobmV3X2RhdGEpCisKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRl
eHQvaHRtbFxyXG5cclxuJykKKworCitpZiBjb21tYW5kIGlzIG5vdCBOb25lOgorICAgIGlmIGNv
bW1hbmQgPT0gJ2Nvbm5lY3QnOgorICAgICAgICBzZXRfc3RhdGUoc3RhdGVfZmlsZSwgJ09ubGlu
ZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJc
blxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZGlzY29ubmVjdCc6CisgICAgICAgIHNldF9z
dGF0ZShzdGF0ZV9maWxlLCAnT2ZmbGluZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0Nv
bnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnaW5j
cmVhc2UtcmVzb3VyY2UtY291bnQnOgorICAgICAgICBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2Vf
Y291bnRfY29tbWFuZChxdWVyeS5nZXQoJ3BhdGgnLCBbJyddKVswXSkKKyAgICBlbGlmIGNvbW1h
bmQgPT0gJ3Jlc2V0LXJlc291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX3Jlc2V0X3Jlc291
cmNlX2NvdW50X2NvbW1hbmQoKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLWNv
dW50JzoKKyAgICAgICAgaGFuZGxlX2dldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5Lmdl
dCgncGF0aCcsIFsnJ10pWzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAnc3RhcnQtcmVzb3VyY2Ut
cmVxdWVzdC1sb2cnOgorICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9n
KCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xlYXItcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgorICAg
ICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1h
bmQgPT0gJ2dldC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9nZXRfcmVz
b3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xvZy1yZXNvdXJjZS1y
ZXF1ZXN0JzoKKyAgICAgICAgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHF1ZXJ5LmdldCgn
cGF0aCcsIFsnJ10pWzBdKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisg
ICAgICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAgICAg
ICdVbmtub3duIGNvbW1hbmQ6IHt9XG4nLmZvcm1hdChjb21tYW5kKQorICAgICAgICApCisgICAg
ICAgIHN5cy5leGl0KDApCitlbHNlOgorICAgIHJlcXVlc3RfcGF0aCA9IHF1ZXJ5LmdldCgncGF0
aCcsIFsnJ10pWzBdCisgICAgZ2VuZXJhdGVfcmVzcG9uc2UocmVxdWVzdF9wYXRoKQoKUHJvcGVy
dHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAj
IworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9wb3J0YWJpbGl0eUxheWVyLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHJldmlz
aW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmls
aXR5TGF5ZXIucHkJKHdvcmtpbmcgY29weSkKQEAgLTcyLDcgKzcyLDcgQEAgZGVmIGdldF9zdGF0
ZShmaWxlLCBkZWZhdWx0PSdVbmluaXRpYWxpegogICAgICAgICByZXR1cm4gZmlsZS5yZWFkKCkK
IAogCi1kZWYgc2V0X3N0YXRlKHN0YXRlLCBmaWxlKToKK2RlZiBzZXRfc3RhdGUoZmlsZSwgc3Rh
dGUpOgogICAgIHdpdGggb3BlbihmaWxlLCAndycpIGFzIG9wZW5fZmlsZToKICAgICAgICAgb3Bl
bl9maWxlLndyaXRlKHN0YXRlKQogICAgIHJldHVybiBzdGF0ZQpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRv
LXZpZGVvLWlmLWFjY2VwdGVkLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShu
b25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotPD9waHAKLWlmIChzdHJwb3MoJF9TRVJWRVJb
J0hUVFBfQUNDRVBUJ10sICd2aWRlby8qJykgIT09IGZhbHNlKSB7Ci0gICAgaGVhZGVyKCdIVFRQ
LzEuMSAzMDEgTW92ZWQgUGVybWFuZW50bHknKTsKLSAgICBoZWFkZXIoJ0xvY2F0aW9uOiAnIC4g
JF9HRVRbJ3ZpZGVvJ10pOwotICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG11
c3QtcmV2YWxpZGF0ZScpOwotICAgIHJldHVybjsKLX0KLQotaGVhZGVyKCdIVFRQLzEuMSA0MDAg
QmFkIFJlcXVlc3QnKTsKLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5w
eQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRp
cmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE5
IEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJv
bSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK3ZpZGVvID0gcGFyc2VfcXMob3MuZW52
aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0
KCd2aWRlbycsIFsnJ10pWzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcbicpCisKK2lmICd2aWRlby8qJyBpbiBvcy5lbnZpcm9uLmdldCgnSFRUUF9BQ0NF
UFQnLCAnJyk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ3N0YXR1czogMzAxXHJc
bicKKyAgICAgICAgJ0xvY2F0aW9uOiB7fVxyXG4nCisgICAgICAgICdDYWNoZS1Db250cm9sOiBu
by1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlXHJcblxyXG4nLmZvcm1hdCh2aWRlbykKKyAgICApCisg
ICAgc3lzLmV4aXQoMCkKKworc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDBcclxuXHJcbicp
CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9y
ZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhl
Y3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5w
aHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQt
dGVtcC1maWxlLnBocAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICsw
LDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYg
KCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMg
cmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBf
ZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmlsZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1dF9jb250ZW50
cygkdG1wRmlsZSwgInRlc3QiKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0byB3cml0ZSB0
byBmaWxlOiAiIC4gJHRtcEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLWlmICghdW5saW5r
KCR0bXBGaWxlKSkgewotICAgIGVjaG8gIkZBSUw6IFVuYWJsZSB0byBkZWxldGUgZmlsZTogIiAu
ICR0bXBGaWxlIC4gIlxuIjsKLSAgICBleGl0KCk7Ci19Ci0/PgoKUHJvcGVydHkgY2hhbmdlcyBv
bjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocApf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCkRlbGV0ZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0xICswLDAgIyMKLSoKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5weQkocmV2aXNpb24gMjc2MDI0KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0yLDE3ICsyLDEyIEBACiBpbXBvcnQgb3MKIGltcG9ydCBzeXMKIGlt
cG9ydCB0ZW1wZmlsZQotCiBmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKIAotcXVl
cnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKQotc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRl
bXBkaXIoKSwgcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnc3RhdGUudHh0J10pWzBdKQorZmlsZW5h
bWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1lJywgWyc0MDQudHh0J10pWzBdCitzdGF0ZV9m
aWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiAKLXN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicpCi1zeXMuc3Rkb3V0
LndyaXRlKCdcclxuJykKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1s
XHJcblxyXG4nKQogCi10cnk6Ci0gICAgaWYgb3MucGF0aC5leGlzdHMoc3RhdGVGaWxlKToKLSAg
ICAgICAgb3MucmVtb3ZlKHN0YXRlRmlsZSkKLWV4Y2VwdCBPU0Vycm9yOgotICAgIHByaW50KCdG
QUlMOiB1bmFibGUgdG8gd3JpdGUgdG8gZmlsZToge30nLmZvcm1hdChzdGF0ZUZpbGUpKQoraWYg
b3MucGF0aC5leGlzdHMoc3RhdGVfZmlsZSk6CisgICAgb3MucmVtb3ZlKHN0YXRlX2ZpbGUpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBocAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBo
cAkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
c2xvdy1pbWFnZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi11c2xl
ZXAoNDAwMDAwKTsKLWhlYWRlcigiQ29udGVudC1UeXBlOiBpbWFnZS9wbmciKTsKLUByZWFkZmls
ZSgic3F1YXJlMTAwLnBuZyIpOwotPz4KLQotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9zbG93LWltYWdlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDEyIEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0
IHN5cworaW1wb3J0IHRpbWUKKwordGltZS5zbGVlcCgwLjQpCisKK3N5cy5zdGRvdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogaW1hZ2UvcG5nXHJcblxyXG4nKQord2l0aCBvcGVuKCdzcXVhcmUxMDAu
cG5nJywgJ3JiJykgYXMgb3Blbl9maWxlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5
cy5zdGRvdXQuYnVmZmVyLndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCgpQcm9wZXJ0eSBjaGFuZ2Vz
IG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnB5Cl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvc2xvdy1ub3RpZnktZG9uZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5waHAJKHJldmlzaW9uIDI3NjAyNCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwCShu
b25leGlzdGVudCkKQEAgLTEsOCArMCwwIEBACi08P3BocAotdXNsZWVwKDEwMDAwMCk7Ci0/Pgot
RE9ORSEKLTxzY3JpcHQ+Ci1pZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7Ci08L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTMgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1w
b3J0IHN5cworaW1wb3J0IHRpbWUKKwordGltZS5zbGVlcCgwLjEpCisKK3N5cy5zdGRvdXQud3Jp
dGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorcHJpbnQoJycnRE9ORSEKKzxz
Y3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25l
KCk7Cis8L3NjcmlwdD4nJycpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5Cl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2
bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9w
ZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1m
aWxlLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90
b3VjaC10ZW1wLWZpbGUucGhwCShyZXZpc2lvbiAyNzYwMjQpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucGhwCShub25leGlzdGVudCkKQEAgLTEs
MjIgKzAsMCBAQAotPD9waHAKLXJlcXVpcmVfb25jZSAncG9ydGFiaWxpdHlMYXllci5waHAnOwot
Ci1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewotICAgIGVjaG8gIkZBSUw6IE5vIHRlbXAgZGly
IHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kdG1wRmlsZSA9IHN5c19nZXRf
dGVtcF9kaXIoKSAuICIvIiAuICRfR0VUWydmaWxlbmFtZSddOwotCi0kc3RhdCA9IHN0YXQoJHRt
cEZpbGUpOwotaWYgKCEkc3RhdCkgewotICAgIGVjaG8gIkZBSUw6IHN0YXQoKSBjYWxsIGZhaWxl
ZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kbXRpbWUgPSAkc3RhdFsnbXRpbWUnXSArIDE7Ci0K
LWlmICghdG91Y2goJHRtcEZpbGUsICRtdGltZSkpIHsKLSAgICBlY2hvICJGQUlMOiB0b3VjaCgp
IGNhbGwgZmFpbGVkLlxuIjsKLX0KLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnB5CShyZXZpc2lvbiAyNzYwMjQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkJKHdv
cmtpbmcgY29weSkKQEAgLTUsMTAgKzUsNyBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUK
IGZyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3Bs
aXQoJzovY3lnd2luJylbLTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5k
aXJuYW1lKG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQotZmlsZW5h
bWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2ZpbGVu
YW1lID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9i
bGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogdG1wRmls
ZVBhdGggPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKIAog
c3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1wLWZpbGUucGhwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAt
ZmlsZS5waHAJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNyArMCwwIEBA
Ci08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLWlmICghc3lz
X2dldF90ZW1wX2RpcigpKSB7Ci0gICAgZWNobyAiRkFJTDogTm8gdGVtcCBkaXIgd2FzIHJldHVy
bmVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSR0bXBGaWxlID0gc3lzX2dldF90ZW1wX2Rpcigp
IC4gIi8iIC4gJF9HRVRbJ2ZpbGVuYW1lJ107Ci0KLWlmICghZmlsZV9wdXRfY29udGVudHMoJHRt
cEZpbGUsICRfR0VUWydkYXRhJ10pKSB7Ci0gICAgZWNobyAiRkFJTDogdW5hYmxlIHRvIHdyaXRl
IHRvIGZpbGU6ICIgLiAkdG1wRmlsZSAuICJcbiI7Ci0gICAgZXhpdCgpOwotfQotCi1lY2hvICR0
bXBGaWxlOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRl
LXRlbXAtZmlsZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy93cml0ZS10ZW1wLWZpbGUucHkJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQkod29ya2luZyBjb3B5KQpA
QCAtNSwyMiArNSwxNCBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUKIGZyb20gdXJsbGli
LnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3BsaXQoJzovY3lnd2lu
JylbLTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBh
dGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQogcXVlcnkgPSBwYXJzZV9xcyhv
cy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVl
KQotZmlsZW5hbWUgPSBxdWVyeS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2Zp
bGVuYW1lID0gcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogZGF0YSA9IHF1
ZXJ5LmdldCgnZGF0YScsIFsnJ10pWzBdCiAKLXRtcEZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZp
bGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKK3RtcF9maWxlID0gb3MucGF0aC5qb2luKHRlbXBm
aWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIAotdHJ5OgotICAgIGZpbGUgPSBvcGVuKHRtcEZpbGUs
ICd3JykKLSAgICBmaWxlLndyaXRlKGRhdGEpCi0gICAgZmlsZS5jbG9zZSgpCi1leGNlcHQ6Ci0g
ICAgc3lzLnN0ZG91dC53cml0ZShmJ0ZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiB7dG1w
RmlsZX1cbicpCi0gICAgc3lzLmV4aXQoMCkKK3dpdGggb3Blbih0bXBfZmlsZSwgJ3cnKSBhcyBv
cGVuX2ZpbGU6CisgICAgb3Blbl9maWxlLndyaXRlKGRhdGEpCiAKLXN5cy5zdGRvdXQud3JpdGUo
Zid7dG1wRmlsZX1cbicpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorc3lzLnN0ZG91dC53
cml0ZSh0bXBfZmlsZSkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvWEZy
YW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93Lmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVP
cHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAko
cmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJh
bWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMTAsNiArMTAsNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIp
IHsKIDwvc2NyaXB0PgogPC9oZWFkPgogPGhlYWQ+Ci08aWZyYW1lIHNyYz0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcu
MC4wLjElM0E4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0
aW9ucy1mcmFtZS1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dpIj48L2lmcmFtZT4KKzxp
ZnJhbWUgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNy
Yy5weT9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25z
L3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtZnJhbWUtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFs
bG93LmNnaSI+PC9pZnJhbWU+CiA8L2hlYWQ+CiA8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFuZGluZy1sb2FkLWNhbmNlbGxh
dGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc3dpcGUvc3dp
cGUtYmFjay13aXRoLW91dHN0YW5kaW5nLWxvYWQtY2FuY2VsbGF0aW9uLmh0bWwJKHJldmlzaW9u
IDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc3dpcGUvc3dpcGUtYmFjay13aXRo
LW91dHN0YW5kaW5nLWxvYWQtY2FuY2VsbGF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUx
LDcgKzUxLDcgQEAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gaXNGaXJzdFBhZ2UoKSA/
ICJmaXJzdCIgOiAiPGlmcmFtZSBzcmM9Jy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHAnPiI7Cisg
ICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBpc0ZpcnN0UGFnZSgpID8gImZpcnN0IiA6ICI8
aWZyYW1lIHNyYz0nL3Jlc291cmNlcy9zbG93LWltYWdlLnB5Jz4iOwogCiAgICAgaWYgKGlzRmly
c3RQYWdlKCkpIHsKICAgICAgICAgaWYgKGhhc0luaXRpYWxpemVkU3dpcGVUZXN0KCkpIHsKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvc3RhdGUtYWZ0ZXItbmV0
d29yay1lcnJvci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1s
aHR0cHJlcXVlc3Qvc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvci5odG1sCShyZXZpc2lvbiAyNzYw
MjQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRlLWFmdGVy
LW5ldHdvcmstZXJyb3IuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTcsNyArMTcsNyBAQCBmdW5j
dGlvbiBsb2cobWVzc2FnZSkKIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewog
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRl
LWFmdGVyLW5ldHdvcmstZXJyb3ImY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRp
c2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmst
ZXJyb3ImY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApAQCAtMzQsNyArMzQsNyBAQCBmdW5jdGlvbiBv
blJlYWR5U3RhdGVDaGFuZ2UoKQogc2V0TmV0d29ya0VuYWJsZWQoZmFsc2UpOwogdmFyIHhociA9
IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwogeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IG9uUmVhZHlT
dGF0ZUNoYW5nZTsKLXhoci5vcGVuKCdHRVQnLCAnL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yJnBhdGg9
LycsIHRydWUpOworeGhyLm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZwYXRoPS8n
LCB0cnVlKTsKIHhoci5zZW5kKG51bGwpOwogCiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2lj
LXByZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFz
aWMtcHJlZmxpZ2h0LWNhY2hlLWludmFsaWRhdGlvbi5weQkocmV2aXNpb24gMjc2MDI0KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNv
bnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLWludmFsaWRhdGlvbi5weQkod29ya2luZyBjb3B5
KQpAQCAtMzYsNyArMzYsNyBAQCBpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6CiAgICAgICAg
ICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMTBcclxuJwogICAgICAgICAgICAgJ1xyXG4n
CiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdPcHRpb25zU2VudCcsIHN0YXRlRmlsZSkK
KyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ09wdGlvbnNTZW50JykKICAgICBlbHNlOgog
ICAgICAgICBmYWlsKCkKIApAQCAtNDgsNyArNDgsNyBAQCBlbGlmIHN0YXRlID09ICdPcHRpb25z
U2VudCc6CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdQQVNTOiBGaXJzdCBQVVQg
cmVxdWVzdC4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdGaXJzdFBVVFNlbnQnLCBz
dGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGaXJzdFBVVFNlbnQnKQog
ICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC02MSw3ICs2MSw3IEBAIGVsaWYgc3RhdGUg
PT0gJ0ZpcnN0UFVUU2VudCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVh
ZGVyczogeC13ZWJraXQtdGVzdFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQot
ICAgICAgICBzZXRfc3RhdGUoJ1NlY29uZE9QVElPTlNTZW50Jywgc3RhdGVGaWxlKQorICAgICAg
ICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnU2Vjb25kT1BUSU9OU1NlbnQnKQogICAgIGVsaWYgb3Mu
ZW52aXJvbi5nZXQoJ1JFUVVFU1RfTUVUSE9EJykgPT0gJ1BVVCc6CiAgICAgICAgIHN5cy5zdGRv
dXQud3JpdGUoCiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiBodHRw
Oi8vMTI3LjAuMC4xOjgwMDBcclxuJwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hl
LXRpbWVvdXQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRw
cmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRp
bWVvdXQucHkJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1s
aHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNo
ZS10aW1lb3V0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNyw3ICszNyw3IEBAIGlmIHN0YXRlID09
ICdVbmluaXRpYWxpemVkJzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAx
XHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgn
T3B0aW9uc1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdP
cHRpb25zU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTQ5LDcgKzQ5LDcg
QEAgZWxpZiBzdGF0ZSA9PSAnT3B0aW9uc1NlbnQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAg
ICAgICAgICAnUEFTUzogRmlyc3QgUFVUIHJlcXVlc3QuJwogICAgICAgICApCi0gICAgICAgIHNl
dF9zdGF0ZSgnRmlyc3RQVVRTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3Rh
dGVGaWxlLCAnRmlyc3RQVVRTZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAt
NjMsNyArNjMsNyBAQCBlbGlmIHN0YXRlID09ICdGaXJzdFBVVFNlbnQnOgogICAgICAgICAgICAg
J0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDFcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAg
ICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdTZWNvbmRPUFRJT05TU2VudCcsIHN0YXRlRmlsZSkK
KyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ1NlY29uZE9QVElPTlNTZW50JykKICAgICBl
bGlmIG9zLmVudmlyb24uZ2V0KCdSRVFVRVNUX01FVEhPRCcpID09ICdQVVQnOgogICAgICAgICBz
eXMuc3Rkb3V0LndyaXRlKAogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdp
bjogaHR0cDovLzEyNy4wLjAuMTo4MDAwXHJcbicKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdo
dC1jYWNoZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUucHkJ
KHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVl
c3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS5weQkod29y
a2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQCBpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6
CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMTBcclxuJwogICAgICAgICAg
ICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdPcHRpb25zU2VudCcsIHN0
YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ09wdGlvbnNTZW50JykKICAg
ICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNDksNyArNDksNyBAQCBlbGlmIHN0YXRlID09
ICdPcHRpb25zU2VudCc6CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdQQVNTOiBG
aXJzdCBQVVQgcmVxdWVzdC4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdGaXJzdFBV
VFNlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGaXJzdFBV
VFNlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC02OSw3ICs2OSw3IEBAIGVs
aWYgc3RhdGUgPT0gJ0ZpcnN0UFVUU2VudCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wt
QWxsb3ctSGVhZGVyczogeC13ZWJraXQtdGVzdFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAg
ICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0ZBSUxTZWNvbmRPUFRJT05TU2VudCcsIHN0YXRl
RmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUxTZWNvbmRPUFRJT05TU2Vu
dCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1k
ZW5pZWQteHNyZi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVkLXhzcmYu
cHkJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJl
cXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5weQko
d29ya2luZyBjb3B5KQpAQCAtNTMsNyArNTMsNyBAQCBlbGlmIHN0YXRlID09ICdVbmluaXRpYWxp
emVkJzoKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgJ0ZBSUw6IFRoaXMgcmVxdWVz
dCBzaG91bGQgbm90IGJlIGRpc3BsYXllZFxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0
ZSgnRGVuaWVkJywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRGVu
aWVkJykKICAgICBlbHNlOgogICAgICAgICBmYWlsKHN0YXRlKQogCkBAIC02Nyw3ICs2Nyw3IEBA
IGVsaWYgc3RhdGUgPT0gJ0RlbmllZCc6CiAgICAgICAgICAgICAnUEFTUzogUmVxdWVzdCBzdWNj
ZXNzZnVsbHkgYmxvY2tlZC5cbicKICAgICAgICAgKQogICAgIGVsc2U6Ci0gICAgICAgIHNldF9z
dGF0ZSgnRGVueSBJZ25vcmVkJywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVG
aWxlLCAnRGVueSBJZ25vcmVkJykKICAgICAgICAgZmFpbChzdGF0ZSkKIAogZWxpZiBzdGF0ZSA9
PSAnRGVueSBJZ25vcmVkJzoKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJl
cXVlc3QvcmVzb3VyY2VzL25vLWN1c3RvbS1oZWFkZXIucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8tY3VzdG9tLWhlYWRl
ci5weQkocmV2aXNpb24gMjc2MDI0KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRw
cmVxdWVzdC9yZXNvdXJjZXMvbm8tY3VzdG9tLWhlYWRlci5weQkod29ya2luZyBjb3B5KQpAQCAt
MjMsOSArMjMsOSBAQCBzdGF0ZUZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtCiAK
IGlmIG9zLmVudmlyb24uZ2V0KCdSRVFVRVNUX01FVEhPRCcpID09ICdPUFRJT05TJzoKICAgICBp
ZiBvcy5lbnZpcm9uLmdldCgnSFRUUF9YX0NVU1RPTV9IRUFERVInKToKLSAgICAgICAgc2V0X3N0
YXRlKCdGQUlMJywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJ
TCcpCiAgICAgZWxzZToKLSAgICAgICAgc2V0X3N0YXRlKCdQQVNTJywgc3RhdGVGaWxlKQorICAg
ICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnUEFTUycpCiBlbHNlOgogICAgIGlmIG9zLmVudmly
b24uZ2V0KCdIVFRQX1hfQ1VTVE9NX0hFQURFUicpOgogICAgICAgICBzeXMuc3Rkb3V0LndyaXRl
KGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9J0ZBSUwnKSkKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdp
bi10cmlwbWluZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tdHJpcG1pbmUucHkJKHJl
dmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
cmVzb3VyY2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weQkod29ya2luZyBjb3B5
KQpAQCAtMzcsMTMgKzM3LDEzIEBAIGlmIG1ldGhvZCA9PSAnT1BUSU9OUyc6CiAKICMgT25seSBh
bGxvdyBzaW1wbGUgY3Jvc3Mtc2l0ZSByZXF1ZXN0cyAtIHNpbmNlIHdlIGRpZCBub3QgYWxsb3cg
cHJlZmxpZ2h0LCB0aGlzIGlzIGFsbCB3ZSBzaG91bGQgZXZlciBnZXQuCiBpZiBtZXRob2Qgbm90
IGluIFsnR0VUJywgJ0hFQUQnLCAnUE9TVCddOgotICAgIHNldF9zdGF0ZSgnRkFJTC4gTm9uLXNp
bXBsZSBtZXRob2Qge30uJy5mb3JtYXQobWV0aG9kKSwgc3RhdGVGaWxlKQorICAgIHNldF9zdGF0
ZShzdGF0ZUZpbGUsICdGQUlMLiBOb24tc2ltcGxlIG1ldGhvZCB7fS4nLmZvcm1hdChtZXRob2Qp
KQogICAgIHN5cy5leGl0KDApCiAKIGlmIGNvbnRlbnQgYW5kIG5vdCByZS5tYXRjaChyJ15hcHBs
aWNhdGlvblwveFwtd3d3XC1mb3JtXC11cmxlbmNvZGVkKDsuKyk/JCcsIGNvbnRlbnRUeXBlKSBc
CiAgICAgYW5kIG5vdCByZS5tYXRjaChyJ15tdWx0aXBhcnRcL2Zvcm1cLWRhdGEoOy4rKT8kJywg
Y29udGVudFR5cGUpIFwKICAgICBhbmQgbm90IHJlLm1hdGNoKHInXnRleHRcL3BsYWluKDsuKyk/
JCcsIGNvbnRlbnRUeXBlKToKLSAgICBzZXRfc3RhdGUoJ0ZBSUwuIE5vbi1zaW1wbGUgY29udGVu
dCB0eXBlOiB7fS4nLmZvcm1hdChjb250ZW50VHlwZSksIHN0YXRlRmlsZSkKKyAgICBzZXRfc3Rh
dGUoc3RhdGVGaWxlLCAnRkFJTC4gTm9uLXNpbXBsZSBjb250ZW50IHR5cGU6IHt9LicuZm9ybWF0
KGNvbnRlbnRUeXBlKSkKIAogaWYgb3MuZW52aXJvbi5nZXQoJ0hUVFBfWF9XRUJLSVRfVEVTVCcp
OgotICAgIHNldF9zdGF0ZSgnRkFJTC4gQ3VzdG9tIGhlYWRlciBzZW50IHdpdGggYSBzaW1wbGUg
cmVxdWVzdC4nLCBzdGF0ZUZpbGUpCisgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwuIEN1
c3RvbSBoZWFkZXIgc2VudCB3aXRoIGEgc2ltcGxlIHJlcXVlc3QuJykKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlbWVtYmVyLWJhZC1wYXNz
d29yZC9jb3VudC1mYWlsdXJlcy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQt
ZmFpbHVyZXMucHkJKHJldmlzaW9uIDI3NjAyNCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlbWVtYmVyLWJhZC1wYXNzd29yZC9jb3VudC1mYWls
dXJlcy5weQkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNyBAQCBpZiBjb21tYW5kOgogICAg
IGlmIGNvbW1hbmQgPT0gJ3N0YXR1cyc6CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoZ2V0X3N0
YXRlKHN0YXRlRmlsZSwgZGVmYXVsdD0nMCcpKQogICAgIGVsaWYgY29tbWFuZCA9PSAncmVzZXQn
OgotICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKHNldF9zdGF0ZSgnMCcsIHN0YXRlRmlsZSkpCisg
ICAgICAgIHN5cy5zdGRvdXQud3JpdGUoc2V0X3N0YXRlKHN0YXRlRmlsZSwgJzAnKSkKICAgICBz
eXMuZXhpdCgwKQogCiBjcmVkZW50aWFscyA9IGJhc2U2NC5iNjRkZWNvZGUob3MuZW52aXJvbi5n
ZXQoJ0hUVFBfQVVUSE9SSVpBVElPTicsICcgT2c9PScpLnNwbGl0KCcgJylbMV0pLmRlY29kZSgp
LnNwbGl0KCc6JykKQEAgLTU3LDQgKzU3LDQgQEAgZWxzZToKICAgICAgICAgJ0F1dGhlbnRpY2F0
aW9uIGNhbmNlbGVkJwogICAgICkKICAgICBpZiB1c2VybmFtZToKLSAgICAgICAgc2V0X3N0YXRl
KHN0cihpbnQoZ2V0X3N0YXRlKHN0YXRlRmlsZSwgZGVmYXVsdD0nMCcpKSArIDEpLCBzdGF0ZUZp
bGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsIHN0cihpbnQoZ2V0X3N0YXRlKHN0YXRl
RmlsZSwgZGVmYXVsdD0nMCcpKSArIDEpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426237</attachid>
            <date>2021-04-16 09:30:51 -0700</date>
            <delta_ts>2021-04-19 11:31:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210416113049.patch</filename>
            <type>text/plain</type>
            <size>146185</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjEzOSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNC0xNiAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzY3MjcwNTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24taHRtbC54
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5
OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlm
ZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
Y2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1m
cmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFn
ZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0
ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1h
Z2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1
ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1hbmQpOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1l
eHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJh
c2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25z
ZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZl
dGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUt
cmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9w
dGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5
LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUt
c2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2Vz
L2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9pbWFn
ZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL3dl
YnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzOgor
ICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6CisgICAg
ICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9s
b2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9h
ZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRf
b25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMtYXV0aC5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGg6
IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
cmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA6IFJlbW92ZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weTogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAgICAoZ2Vu
ZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBlKToKKyAg
ICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0ZV9yZXNv
dXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3Vu
dF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCk6
CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAg
KGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRsZV9sb2df
cmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFi
aWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0
LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy90b3Vj
aC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy93cml0
ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlmLW9yaWdp
bi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFu
ZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1p
bnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHk6Cisg
ICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRy
b2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5w
eToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0
b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weToKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQt
ZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1h
ZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEtMDQtMTYgIFphbGFuIEJ1anRhcyAgPHph
bGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbSUZDXSBJbmNvcnJlY3QgYm94IGhlaWdodCB3aGVu
IHNjcm9sbGJhciB0YWtlcyBwYWRkaW5nIGJveCBzcGFjZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvZmFsbGJhY2suaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQog
ewogICAgIHRyeSB7CiAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
ICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1mYWxsYmFjayZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlz
Y29ubmVjdCIpLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChz
dGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICAgICAgcmVxLnNl
bmQoIiIpOwogICAgIH0gY2F0Y2ggKGV4KSB7CiAgICAgICAgIGxvZygiQ2Fubm90IGFjY2VzcyBu
ZXR3b3JrIHNpbXVsYXRvciBVUkwiKTsKQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rpb24gbG9hZCh1
cmwpCiAgICAgfQogfQogCi12YXIgdGVzdFVSTCA9ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9u
b3QtaW4tY2FjaGUudHh0IjsKK3ZhciB0ZXN0VVJMID0gIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1mYWxsYmFjayZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMv
bm90LWluLWNhY2hlLnR4dCI7CiB2YXIgbm9uZXhpc3RlbnRVUkwgPSAicmVzb3VyY2VzL2RvZXMt
bm90LWV4aXN0IjsKIHZhciByZWRpcmVjdFVSTCA9ICJyZXNvdXJjZXMvZmFsbGJhY2stcmVkaXJl
Y3QucHkiOwogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtZmFsbGJhY2st
Zm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3
b3JrLWVycm9yLWNyYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsNyArNSw3IEBACiA8ZGl2
PiAgICAgICAgQmVmb3JlIHlvdSBjbGljayB0aGUgbGluayB0aGF0IHRlc3RzIHRoZSBhcHBjYWNo
ZSBmYWxsYmFjaywgcGxlYXNlIG1ha2Ugc3VyZSB0aGUgc2VydmVyIGlzIGRvd24gb3IgZGlzY29u
bmVjdCB5b3VyIGRldmljZSBmcm9tIGFueSBkYXRhIGNvbm5lY3Rpb24gc28gdGhlIGNvbm5lY3Rp
b24gcmVxdWVzdCB0byB0aGUgc2VydmVyIHdpbGwgZmFpbC4KIDwvZGl2PgogCi08YSBpZD0gIkxp
bmsiIGhyZWY9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUt
bWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRvZXMt
bm90LWV4aXN0IiA+IGNsaWNrIHRoaXMgbGluayB3aGVuIHRoZSBzZXJ2ZXIgaXMgZG93biBvciB0
aGUgY2xpZW50IGRldmljZSBkb2Vzbid0IGhhdmUgYSBkYXRhIGNvbm5lY3Rpb24sIHRoaXMgd2ls
bCB2ZXJpZnkgaWYgdGhlIGZhbGxiYWNrIHdpbGwgY2F1c2UgdGhlIGNyYXNoLiA8L2E+Cis8YSBp
ZD0gIkxpbmsiIGhyZWY9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBj
YWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9
ZG9lcy1ub3QtZXhpc3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhlIHNlcnZlciBpcyBkb3du
IG9yIHRoZSBjbGllbnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEgY29ubmVjdGlvbiwgdGhp
cyB3aWxsIHZlcmlmeSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0aGUgY3Jhc2guIDwvYT4K
IAogCiA8c2NyaXB0PgpAQCAtMTMsNyArMTMsNyBAQAogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJs
ZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEu
b3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5k
PSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVx
Lm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5k
PSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVx
LnNlbmQoIiIpOwogfQogCkBAIC0yNiw3ICsyNiw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogewog
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChm
YWxzZSk7Ci0gICAgICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiOworICAgICAgICB3aW5kb3cubG9jYXRp
b249Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhp
c3QiOwogICAgIH0KIH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9t
YWluLXJlc291cmNlLWhhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xOCw3ICsxOCw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQog
ZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhh
c2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2Up
OworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJmNvbW1hbmQ9IiAr
IChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2Vu
ZCgiIik7CiB9CiAKQEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gZnJhbWVDcmVhdGVkKCkKICAg
ICAgICAgc3RhZ2UgPSAxOwogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7CiAgICAg
ICAgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICAgICAg
aWZyLnNldEF0dHJpYnV0ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhhc2gmcGF0aD0vYXBw
Y2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5odG1sI2JhciIpOworICAg
ICAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNiYXIiKTsK
ICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIGxvZygiU1VDQ0VTUyIpOwpAQCAtNDMsNyArNDMsNyBAQCB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcigibWVzc2FnZSIsIGZyYW1lCiB2YXIgc3RhZ2UgPSAwOwogc2V0TmV0d29ya0VuYWJs
ZWQodHJ1ZSk7CiB2YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Ci1p
ZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZyYW1lLmh0bWwjZm9vIik7CitpZnIu
c2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNmb28iKTsKIGRvY3VtZW50
LmJvZHkuYXBwZW5kQ2hpbGQoaWZyKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJl
Y3QuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9tYWluLXJlc291cmNlLXJlZGlyZWN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcg
KzExLDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiBmdW5jdGlvbiBzZXROZXR3b3JrRW5h
YmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJl
cS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFuZD0iICsgKHN0
YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJH
RVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4t
cmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tdWx0aS1mYWxs
YmFjay5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcg
QEAgZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAg
ICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIs
ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW11bHRpLWZh
bGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZh
bHNlKTsKKyAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8g
ImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgiIik7
CiAgICAgfSBjYXRjaCAoZXgpIHsKICAgICAgICAgbG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsg
c2ltdWxhdG9yIFVSTCwgZXggPSAiICsgZXgpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9hcHBjYWNoZS9ub24taHRtbC54aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDUgKzEsNSBAQAogPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiCi0gICAgICBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1s
Lm1hbmlmZXN0Ij4KKyAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9u
b24taHRtbC5tYW5pZmVzdCI+CiA8aGVhZD48dGl0bGUvPjwvaGVhZD4KIDxib2R5PgogPHA+VGVz
dCB0aGF0IG5vbi1IVE1MIG1haW4gcmVzb3VyY2VzIHdvcmsgd2l0aCBhcHBsaWNhdGlvbiBjYWNo
ZSBjb3JyZWN0bHkuPC9wPgpAQCAtMTksMTQgKzE5LDE0IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdl
KQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5l
dyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO2NvbW1hbmQ9IiArIChz
dGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24t
aHRtbCZhbXA7Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwg
ZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQog
ewogICAgIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBp
ZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5w
bmciKTsKKyAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNv
dXJjZXMvYWJlLnBuZyIpOwogICAgIGlmci5vbmxvYWQgPSBmcmFtZUNyZWF0ZWQ7CiAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogfQpAQCAtNDMsNyArNDMsNyBAQCBmdW5jdGlv
biBjYWNoZWQoKQogICAgIC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGRvZXMgbm90IGV4aXN0IGlu
IHRoZSBjYWNoZS4KICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0KCk7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3Vy
Y2VzL25vdC1pbi1jYWNoZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFt
cDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKICAg
ICAgICAgcmVxLnNlbmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGlmIChlLmNvZGUg
PT0gRE9NRXhjZXB0aW9uLk5FVFdPUktfRVJSKQpAQCAtNTgsNyArNTgsNyBAQCBmdW5jdGlvbiBj
YWNoZWQoKQogICAgIC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGV4aXN0cyBpbiB0aGUgY2FjaGUu
CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAg
ICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUu
dHh0IiwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUv
cmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKCk7CiAgICAg
fSBjYXRjaCAoZSkgewogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0Jyku
aW5uZXJIVE1MID0gIkZBSUxVUkU6IENvdWxkIG5vdCBsb2FkIGRhdGEgZnJvbSBjYWNoZSIKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNj
ZXNzLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTgsMTQgKzE4LDE0
IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3Rh
dGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2Zm
bGluZS1hY2Nlc3MmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3Qi
KSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJmNvbW1hbmQ9IiArIChzdGF0ZSA/
ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9
CiAKIGZ1bmN0aW9uIGNyZWF0ZUZyYW1lKCkKIHsKICAgICB2YXIgaWZyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiaWZyYW1lIik7Ci0gICAgaWZyLnNldEF0dHJpYnV0ZSgic3JjIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKKyAg
ICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sIik7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChpZnIpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3JlbW92
ZS1jYWNoZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVtb3ZlLWNhY2hlLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvYXBwY2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTkx
LDcgKzkxLDcgQEAgZnVuY3Rpb24gdGVzdDUoKQogZnVuY3Rpb24gcmVzZXRNYW5pZmVzdCgpCiB7
CiAgICAgaWYgKGFwcGxpY2F0aW9uQ2FjaGUuc3RhdHVzICE9IGFwcGxpY2F0aW9uQ2FjaGUuVU5D
QUNIRUQgJiYgYXBwbGljYXRpb25DYWNoZS5zdGF0dXMgIT0gYXBwbGljYXRpb25DYWNoZS5PQlNP
TEVURSkgewotICAgICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZlc3QsIDEw
MCk7CisgICAgICAgIHRpbWVvdXRJZCA9IHNldFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgNDAwKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTA0LDcgKzEwNCw3IEBAIGFwcGxpY2F0aW9u
Q2FjaGUub25ub3VwZGF0ZSA9IHRlc3Q7CiBhcHBsaWNhdGlvbkNhY2hlLm9uY2FjaGVkID0gdGVz
dDsKIAogLy8gSWYgdGhlIG1hbmlmZXN0IHNjcmlwdCBoYXBwZW5lZCB0byBiZSBpbiBhIHdyb25n
IHN0YXRlLCByZXNldCBpdC4KLXZhciB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZl
c3QsIDEwMCk7Cit2YXIgdGltZW91dElkID0gc2V0VGltZW91dChyZXNldE1hbmlmZXN0LCA0MDAp
OwogCiA8L3NjcmlwdD4KIDwvYm9keT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLTIucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQko
cmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNyBA
QCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAgICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVs
aWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmls
ZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdEZWxldGVkJykKICAgICBzeXMuc3Rkb3V0Lndy
aXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1Vu
aW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQud3JpdGUoCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVw
ZGF0ZS5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcg
KzI4LDcgQEAgaWYgY29tbWFuZCA9PSAncmVzZXQnOgogICAgICAgICBvcy5yZW1vdmUodG1wX2Zp
bGUpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJc
bicpCiBlbGlmIGNvbW1hbmQgPT0gJ2RlbGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxldGVkJywg
dG1wX2ZpbGUpCisgICAgc2V0X3N0YXRlKHRtcF9maWxlLCAnRGVsZXRlZCcpCiAgICAgc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIHN0YXRl
ID09ICdVbmluaXRpYWxpemVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZlc3QKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFs
bGJhY2subWFuaWZlc3QJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBA
IC0xLDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/IHNpbXBsZS50eHQKIGZhbGxiYWNrLXJlZGlyZWN0IHNpbXBsZS50eHQKIGRvZXMtbm90
LWV4aXN0IHNpbXBsZS50eHQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGly
ZWN0LWZyYW1lLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHJldmlzaW9uIDI3
NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4t
cmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHdvcmtpbmcgY29weSkKQEAgLTQsNiArNCw2IEBA
IGltcG9ydCBzeXMKIAogc3lzLnN0ZG91dC53cml0ZSgKICAgICAnc3RhdHVzOiAzMDJcclxuJwot
ICAgICdMb2NhdGlvbjogaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJh
bWUtMi5odG1sXHJcbicKKyAgICAnTG9jYXRpb246IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1h
aW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sXHJcbicKICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0
bWxcclxuXHJcbicKICkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0
Lm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHJldmlzaW9uIDI3NjEz
NykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiBD
QUNIRSBNQU5JRkVTVAotaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJh
bWUtMi5odG1sCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIu
aHRtbAogTkVUV09SSzoKLWh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJl
ZGlyZWN0JmNvbW1hbmQKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVk
aXJlY3QmY29tbWFuZApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QJKHJl
dmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL211bHRpLWZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBA
QAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/IHNpbXBs
ZS50eHQKIGRvZXMtbm90IGVtcHR5LnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxlLnR4dApJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFu
aWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbm9uLWh0bWwubWFuaWZlc3QJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0CSh3b3JraW5n
IGNvcHkpCkBAIC0xLDggKzEsOCBAQAogQ0FDSEUgTUFOSUZFU1QKIC9hcHBjYWNoZS9ub24taHRt
bC54aHRtbAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1u
b24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvYWJlLnBuZwotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFu
aWZlc3QKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24t
aHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAorL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9hYmUucG5nCisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBw
Y2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0
CiBORVRXT1JLOgogL2Zhdmljb24uaWNvCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmNvbW1hbmQ9CisvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJj
ZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sIG1hbmlmZXN0PSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNz
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdCI+Cis8aHRt
bCBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5t
YW5pZmVzdCI+CiA8ZGl2IGlkPXJlc3VsdD48L2Rpdj4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2co
bWVzc2FnZSkKQEAgLTExLDcgKzExLDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbnByb2dyZXNzID0g
ZnVuY3Rpb24oKQogYXBwbGljYXRpb25DYWNoZS5vbnVwZGF0ZXJlYWR5ID0gZnVuY3Rpb24oKSB7
IGxvZygidXBkYXRlcmVhZHkiKSB9CiBhcHBsaWNhdGlvbkNhY2hlLm9ub2Jzb2xldGUgPSBmdW5j
dGlvbigpIHsgbG9nKCJvYnNvbGV0ZSIpIH0KIDwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUt
b2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQ+CiAKIGFwcGxpY2F0aW9uQ2FjaGUub25jYWNoZWQgPSBmdW5j
dGlvbigpIHsgbG9nKCJjYWNoZWQiKTsgdGVzdCgpIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNz
LmpzCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwkod29ya2luZyBjb3B5KQpAQCAtNiw3ICs2LDcg
QEAgZnVuY3Rpb24gdGVzdCgpCiAKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0OwotICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUt
YWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0IiwgZmFsc2UpOwogICAg
ICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgaWYgKHJlcS5yZXNwb25zZVRleHQgPT0gIkhl
bGxvLCBXb3JsZCEiKQogICAgICAgICAgICAgcGFyZW50LnBvc3RNZXNzYWdlKCJkb25lIiwgIioi
KTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxp
bmUtYWNjZXNzLm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CShyZXZpc2lvbiAyNzYx
MzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5l
LWFjY2Vzcy5tYW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIENBQ0hFIE1B
TklGRVNUCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9m
ZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFt
ZS5odG1sCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9m
ZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5p
ZmVzdAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZs
aW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKKy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAorL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAorL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9zaW1wbGUudHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUt
YWNjZXNzLmpzCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9yZW1vdmUtY2FjaGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5CShyZXZpc2lvbiAyNzYxMzcpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkJ
KHdvcmtpbmcgY29weSkKQEAgLTI4LDE0ICsyOCwxNCBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6
CiAgICAgICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250
ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoK
LSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2Zp
bGUsICdEZWxldGVkJykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5z
dGRvdXQud3JpdGUoCiAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQvY2FjaGUtbWFuaWZlc3Rc
clxuXHJcbicKICAgICAgICAgJ0NBQ0hFIE1BTklGRVNUXG4nCiAgICAgICAgICdORVRXT1JLOlxu
JwotICAgICAgICAncmVtb3ZlLWNhY2hlLnB5P2NvbW1hbmQ9XG4iJworICAgICAgICAncmVtb3Zl
LWNhY2hlLnB5P2NvbW1hbmQ9XG4nCiAgICAgKQogZWxpZiBzdGF0ZSA9PSAnRGVsZXRlZCc6CiAg
ICAgc3lzLnN0ZG91dC53cml0ZSgKQEAgLTQzLDQgKzQzLDQgQEAgZWxpZiBzdGF0ZSA9PSAnRGVs
ZXRlZCc6CiAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJwogICAgICkK
IGVsc2U6Ci0gICAgc3lzLnN0b2R1dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorICAgIHN5cy5zdG9kdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYWNoZS9uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVy
aW5nLXJldmFsaWRhdGlvbi5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVk
KHN0YXRlKQogewogICAgIGxvZyhzdGF0ZSA/ICJFbmFibGluZyBuZXR3b3JrIiA6ICJEaXNhYmxp
bmcgbmV0d29yayIpOwogICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVx
Lm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hl
LW5ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbiZjb21tYW5kPSIgKyAoc3RhdGUgPyAi
Y29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1k
dXJpbmctcmV2YWxpZGF0aW9uJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNj
b25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllci5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2Ut
ZnJhZ21lbnQtaWRlbnRpZmllci5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhY2hlL3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICB0
cnkgewogICAgICAgICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
ICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50
LWlkZW50aWZpZXImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21t
YW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAg
ICAgICAgICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgIH0gY2F0
Y2ggKGV4KSB7CkBAIC00MSwxOCArNDEsMTggQEAKICAgCiAgICAgPHN0eWxlPgogICAgICAgICBk
aXYgewotICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291
cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PWJnX3BhdHRlcm4uanBnI2RpdicpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CiAgICAgICAgIH0KICAgICAg
ICAgcCB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVz
b3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9YmdfcGF0dGVybi5qcGcjcCcpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJs
KCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjcCcpOwogICAgICAgICB9CiAgICAgPC9z
dHlsZT4KIAogPC9oZWFkPgogPGJvZHk+CiAgICAgPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyI+PC9kaXY+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2Ut
ZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ymdf
cGF0dGVybi5qcGcjaW1nMSI+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJh
Z21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0
dGVybi5qcGcjaW1nMiI+CisgICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVu
dC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJu
LmpwZyNpbWcxIj4KKyAgICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlk
ZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBn
I2ltZzIiPgogICAgIAogICBUZXN0IHRoYXQgcmVzb3VyY2VzIHdpdGggZnJhZ21lbnQgaWRlbnRp
ZmllcnMgYXJlIGxvYWRlZCBvbmx5IG9uY2UuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFt
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3Vy
Y2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCShyZXZpc2lv
biAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9uZXR3
b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMSArMSBAQAotPGltZyBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVz
b3VyY2VzL2NvbXBhc3MuanBnJmFsbG93LWNhY2hpbmc9MSI+Cis8aW1nIHNyYz0iL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3ItZHVyaW5nLXJl
dmFsaWRhdGlvbiZwYXRoPS9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyZhbGxvdy1jYWNoaW5n
PTEiPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRj
aC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gt
YWZ0ZXItbmF2aWdhdGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkocmV2aXNp
b24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQog
ICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjYiLCB7IlNhbWVTaXRlIjog
bnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2ll
KCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjYiLCB7IlNhbWVTaXRl
IjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBz
ZXRDb29raWUoImxheCIsICI2IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwg
InBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4w
LjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5w
eSUzRmhyZWYlM0RmZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4t
cGFnZS5weSI7CisgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUz
QTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhy
ZWYlM0RmZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5w
eSI7CiB9CiBydW5UZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5p
dGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10
b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2lu
LXBhZ2UuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
b29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMTEsNyArMTEsNyBAQCBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBhd2FpdCBzZXRD
b29raWUoImltcGxpY2l0LXN0cmljdCIsICI0IiwgeyJTYW1lU2l0ZSI6IG51bGwsICJNYXgtQWdl
IjogMTAwLCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgic3RyaWN0LWJlY2F1
c2UtaW52YWxpZC1TYW1lU2l0ZS12YWx1ZSIsICI0IiwgeyJTYW1lU2l0ZSI6ICJpbnZhbGlkIiwg
Ik1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJsYXgi
LCAiNCIsIHsiU2FtZVNpdGUiOiAiTGF4IiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7
Ci0gICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291
cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nv
b2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0
Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNy
b3NzLW9yaWdpbi1wYWdlLnB5JTI2dGFyZ2V0JTNEX3RvcCI7CisgICAgd2luZG93LmxvY2F0aW9u
LmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMu
cHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3Vy
Y2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2
aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0
YXJnZXQlM0RfdG9wIjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZy
YW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjEz
NykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4t
Y3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBA
IGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQt
c3RyaWN0IiwgIjMiLCB7IlNhbWVTaXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjog
Ii8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVT
aXRlLXZhbHVlIiwgIjMiLCB7IlNhbWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwg
InBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoImxheCIsICIzIiwgeyJTYW1lU2l0
ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9j
YXRpb24uaHJlZiA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1l
LXNyYy5waHA/c3JjPWh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNv
dXJjZXMvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sIjsKKyAgICB3aW5kb3cubG9j
YXRpb24uaHJlZiA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1l
LXNyYy5weT9zcmM9aHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nvb2tpZXMvc2FtZS1zaXRlL3Jlc291
cmNlcy9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwiOwogfQogcnVuVGVzdCgpOwog
PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3JkZXItaW1hZ2Ut
bG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Jv
cmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAg
ICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAx
MCBzdHJldGNoOworICAgICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJl
dGNoOwogICAgIH0KICAgICAKICAgICAuYm9yZGVyZWQgewotICAgICAgLXdlYmtpdC1ib3JkZXIt
aW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtYm9y
ZGVyLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRl
cjIuanBnIikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKKyAgICAgIC13ZWJraXQtYm9yZGVyLWltYWdl
OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtYm9yZGVyLWlt
YWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBn
IikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0bWwJ
KHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMjYgKzksMjYgQEAKICAgICAuYm94
IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICBiYWNr
Z3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1i
YWNrZ3JvdW5kMS5qcGciKTsKKyAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDEuanBnIik7CiAgICAgfQogICAg
IAogICAgIC5iYWNrZ3JvdW5kIHsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOworICAgICAg
YmFja2dyb3VuZC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1iYWNrZ3JvdW5kMi5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLmNvbnRlbnQgewotICAgICAg
Y29udGVudDogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVu
dC1pbWFnZTEuanBnIik7CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UxLmpwZyIpOwogICAgIH0KIAogICAgIC50ZXN0
IHsKLSAgICAgIGNvbnRlbnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPWNvbnRlbnQtaW1hZ2UyLmpwZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTMuanBnIik7CisgICAgICBjb250ZW50OiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxv
YWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UyLmpw
ZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3Nz
LWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250
ZW50LWltYWdlMy5qcGciKTsKICAgICB9CiAgICAgCiAgICAgdWwgewotICAgICAgbGlzdC1zdHls
ZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1p
bWFnZTEuanBnIik7CisgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UxLmpwZyIpOwogICAgIH0KICAgICAubGlz
dCB7Ci0gICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1saXN0LWltYWdlMi5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6
IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTIuanBn
Iik7CiAgICAgfQogICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1zaGFwZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbAkocmV2aXNpb24g
Mjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1z
aGFwZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICAgICAgICBmbG9hdDog
bGVmdDsKICAgICAgICAgd2lkdGg6IDIwMHB4OwogICAgICAgICBoZWlnaHQ6IDIwMHB4OwotICAg
ICAgICAtd2Via2l0LXNoYXBlLW91dHNpZGU6IHVybCgiL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5waHA/bmFtZT1zcXVhcmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZvcj0xIik7CisgICAgICAg
IC13ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCIvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5
P25hbWU9c3F1YXJlMTAwLnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MSIpOwogICAgIH0KIDwvc3R5
bGU+CiA8L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9mb250LWZhY2Utc3JjLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jc3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDcgKzI2LDcgQEAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewogICAgICAgICBp
ZiAoeGhyLnJlYWR5U3RhdGUgPT0geGhyLkRPTkUpCiAgICAgICAgICAgICBmb3JjZVN0eWxlU2Vs
ZWN0b3JSZWNyZWF0aW9uKCk7CiAgICAgfTsKLSAgICB4aHIub3BlbignR0VUJywgJy9yZXNvdXJj
ZXMvcmVzZXQtdGVtcC1maWxlLnBocD8nICsgZmlsZW5hbWUsIHRydWUpOworICAgIHhoci5vcGVu
KCdHRVQnLCAnL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucHk/JyArIGZpbGVuYW1lLCB0cnVl
KTsKICAgICB4aHIuc2VuZCgpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAw
cHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBnIik7Cisg
ICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tYXNrMS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLm1hc2tlZCB7Ci0g
ICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CisgICAgICAtd2Via2l0LW1hc2stYm94LWltYWdl
OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFn
ZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsK
ICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9yZWZsZWN0aW9uLW1hc2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJ
KHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rp
b24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzksMTEg
QEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7
Ci0gICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRp
bmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOworICAgICAg
LXdlYmtpdC1ib3gtcmVmbGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAgICAKICAg
ICAucmVmbGVjdGVkIHsKLSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEwcHggdXJs
KCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNpdG9uLW1h
c2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIu
anBnIik7CisgICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CiAg
ICAgfQogICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3Mv
dmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24t
YmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjEz
NykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtMi1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDcg
KzksNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0
YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdl
KCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2Vs
aW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5o
dG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0
aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMTUsNyArMTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0
aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2Fs
LWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLTMtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAK
IDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAi
OworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRl
ci1pbWFnZS1sb2FkLTMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAkocmV2
aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxp
Z24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1
LDcgKzE1LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1i
YXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1h
Z2UtbG9hZC1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4
cGVjdGVkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAg
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0
dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsK
ICAgICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFs
aWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXIt
aW1hZ2UtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0
PgogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAg
ICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5IjsKICAgICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9nZ2luZy5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVzdC1sb2dn
aW5nLmpzCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9y
ZXNvdXJjZXMvcmVxdWVzdC1sb2dnaW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBA
QCB2YXIgUmVzb3VyY2VMb2dnaW5nID0gewogICAgIHsKICAgICAgICAgdHJ5IHsKICAgICAgICAg
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICByZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9IiArIHRoaXMudGVz
dE5hbWUgKyAiJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICAgcmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9IiArIHRoaXMudGVz
dE5hbWUgKyAiJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgcmVxLnNlbmQo
bnVsbCk7CiAgICAgICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgfSBj
YXRjaCAoZXgpIHsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVz
cG9uc2UtYm9keS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvbmUtcmVzcG9uc2UtYm9keS5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJvZHkuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMzQsNyArMzQsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogCiBwcm9t
aXNlX3Rlc3QoZnVuY3Rpb24odCkgewogICAgIHZhciBjbG9uZTsKLSAgICByZXR1cm4gZmV0Y2go
Jy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxh
eT0xMDAnKS50aGVuKGZ1bmN0aW9uKHJlcykgeworICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJykudGhl
bihmdW5jdGlvbihyZXMpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXMuc3RhdHVzLCAyMDAp
OwogICAgICAgICAvLyBBbGwgZGF0YSBzaG91bGQgbm90IGJlIGVucXVldWVkIHlldC4KICAgICAg
ICAgY2xvbmUgPSByZXMuY2xvbmUoKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvZmV0Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCShyZXZpc2lvbiAy
NzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb3Npbmctd2hpbGUtZmV0
Y2hpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgICAgICAKIHZh
ciB0ZXN0ID0gYXN5bmNfdGVzdCgiRW5zdXJpbmcgdGhhdCBmZXRjaCByZXNwb25zZSBib2R5IHBy
b21pc2UgaXMgbm90IGZ1bGZpbGxlZCB3aGVuIHdpbmRvdyBpcyBjbG9zZWQiKTsKIHRlc3Quc3Rl
cChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0xMDAwIjsKKyAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTEw
MDAiOwogICAgIGZldGNoKHVybCkudGhlbih0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNwb25z
ZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKICAgICAg
ICAgcmVzcG9uc2UudGV4dCgpLnRoZW4odGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24oYnVmZmVyKSB7
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoLWNvcnMtd2l0aC1yZWZl
cnJlci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0
Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTksNyArOSw3IEBACiAgIDxib2R5PgogICAgIDxzY3JpcHQ+CiBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB1cmwgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAw
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0xJmRlbGF5
PTEmY29ycz10cnVlIjsKKyAgICB2YXIgdXJsID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29y
cz10cnVlIjsKICAgICByZXR1cm4gZmV0Y2godXJsLCB7Im1vZGUiOiAiY29ycyIsICJyZWZlcnJl
ciI6ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVmZXJyZXIifSkudGhlbigocmVzcG9uc2UpID0+
IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIpOwogICAgICAg
ICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZlcikgPT4gewpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNl
LXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZl
cmVudC1vcHRpb25zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50
LW9wdGlvbnMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDExICsxLDExIEBACiBD
T05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxs
b3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdF
OiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRy
dWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MSBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgor
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVs
YXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nlc3MgY29u
dHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNj
ZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgot
Q09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4
MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRl
bGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiBkdWUgdG8gYWNjZXNzIGNv
bnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/
aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIGR1
ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ug
d2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMg
ZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhw
P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyBk
dWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hl
PXRydWUmdGVzdD0zIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NB
R0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdo
ZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNo
ZT10cnVlJnRlc3Q9NCBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNT
QUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9
dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3Mu
CiAKIFBBU1MgRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVs
IHRoZSBzYW1lIHJlc291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzCiBQQVNTIEVuc3VyZSBjb3Jz
IGNoZWNrcyB3b3JrIHdoZW4gbG9hZGluZyBzdWNjZXNzaXZlbHkgdGhlIHNhbWUgcmVzb3VyY2Ug
d2l0aCBkaWZmZXJlbnQgbW9kZXMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gv
ZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291
cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlm
ZmVyZW50LW9wdGlvbnMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw4ICs5LDggQEAKICAgPGJv
ZHk+CiAgICAgPHNjcmlwdD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVy
bDEgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgt
ZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVl
JnRlc3Q9MSI7Ci0gICAgdmFyIHVybDIgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3Jz
PXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiI7CisgICAgdmFyIHVybDEgPSAiaHR0cDovL2xv
Y2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKKyAgICB2
YXIgdXJsMiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTIiOwogICAgIHJldHVybiBQcm9taXNlLmFsbChbCiAgICAgICAgICAgICBmZXRj
aCh1cmwxLCB7Im1vZGUiOiAibm8tY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UudHlwZSwgIm9wYXF1ZSIpOwpAQCAtMzYs
OCArMzYsOCBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogfSwgJ0Vuc3VyZSBjb3JzIGNo
ZWNrcyB3b3JrIHdoZW4gbG9hZGluZyBpbiBwYXJhbGxlbCB0aGUgc2FtZSByZXNvdXJjZSB3aXRo
IGRpZmZlcmVudCBtb2RlcycpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZh
ciB1cmwzID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTMiOwotICAgIHZhciB1cmw0ID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAm
Y29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOworICAgIHZhciB1cmwzID0gImh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7Cisg
ICAgdmFyIHVybDQgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0Nh
Y2hlPXRydWUmdGVzdD00IjsKICAgICByZXR1cm4gZmV0Y2godXJsMywgeyJtb2RlIjogImNvcnMi
fSkudGhlbigocmVzcG9uc2UpID0+IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50
eXBlLCAiY29ycyIpOwogICAgICAgICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVu
KChhcnJheUJ1ZmZlcikgPT4gewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9n
ZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0
bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZ2V0
LXJlc3BvbnNlLWJvZHktd2hpbGUtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3
ICsxMyw3IEBACiAgICAgPHNjcmlwdD4KIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAg
IHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJh
dGlvbj01JmRlbGF5PTIwMCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5weT9pdGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5n
RmxhZyA9IGZhbHNlOwogICAgIHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9u
c2UpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBAIC0y
Nyw3ICsyNyw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNhbGxp
bmcgUmVzcG9uc2UudGV4dCgpIHdoZW4gc3RpbGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0g
Ii9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5
PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVy
bCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3Bv
bnNlLnN0YXR1cywgMjAwKTsKQEAgLTQxLDcgKzQxLDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9u
KCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS5hcnJheUJ1ZmZlcigpIHdoZW4gc3Rp
bGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFy
IHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9u
PTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFn
ID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkg
ewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKQEAgLTU1LDcg
KzU1LDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBS
ZXNwb25zZS5ibG9iKCkgd2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVz
dChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAw
IjsKICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50
aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uu
c3RhdHVzLCAyMDApOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVjb2Rl
LXNsb3ctbG9hZC1zdGF0aWMtaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCShyZXZp
c2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xv
dy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQAog
ICAgIDxkaXY+PC9kaXY+CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWRJ
bWFnZVNvdXJjZVVSTCgpIHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAgICAgICByZXR1cm4gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiCiAgICAgICAg
ICAgICAgICAgICsgIj9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy8xMDB4MTAw
LXJlZC5wc2QiIAogICAgICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZ2bmQuYWRv
YmUucGhvdG9zaG9wIgogICAgICAgICAgICAgICAgICArICImc3RhbGxBdD0xMDI0IjsKQEAgLTEz
LDcgKzEzLDcgQEAKICAgICAgICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHJlc29sdmVkSW1hZ2VT
b3VyY2VVUkwoKSB7Ci0gICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIgorICAgICAgICAgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IgogICAgICAgICAgICAg
ICAgICArICI/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQw
MC5wbmciIAogICAgICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAg
ICAgICAgICAgICAgICsgIiZzdGFsbEF0PTEwMjQiOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RyYXctcGF0dGVybi1zbG93
LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9pbWFnZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIC8vIFRoZSBtYXhpbXVt
IGJ1ZmZlcmluZyBpbnRlcnZhbCBmb3IgSW1hZ2VSZXNvdXJjZSBpcyA1MDBtcy4gQ2hvb3NlIHN0
YWxsRm9yCiAgICAgICAgIC8vIHN1Y2ggdGhhdCB0aGUgaW1hZ2UgYnVmZmVyaW5nIGlzIGRpc2Fi
bGVkIGluIHRoZSBuZXR3b3JrIHByb2Nlc3MuCiAgICAgICAgIGZ1bmN0aW9uIHNsb3dMYXJnZUlt
YWdlU291cmNlVVJMKCkgewotICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCIKKyAgICAgICAgICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSIKICAgICAgICAg
ICAgICAgICAgKyAiP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQw
MHg0MDAucG5nIiAKICAgICAgICAgICAgICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGcG5nIgog
ICAgICAgICAgICAgICAgICArICImc3RhbGxBdD01MTIiCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJl
dmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9n
cmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBAIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIGdpZkltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRtbAkocmV2
aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3Vw
cG9ydHMtdmlkZW8uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDYgQEAKIDxwaWN0dXJl
PgotICAgIDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFj
Y2VwdGVkLnBocD92aWRlbz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KLSAgICA8c291cmNl
IHNyY3NldD0iL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHA/dmlk
ZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5tcDQiIHR5
cGU9InZpZGVvL21wNCI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJlY3Qt
dG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+
CiAgICAgPGltZyBzcmM9Ii9yZXNvdXJjZXMvc3F1YXJlMTAwLnBuZyI+CiA8L3BpY3R1cmU+CiA8
YnI+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBhcnRpYWwtbG9h
ZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2pwZWct
cGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL2pwZWctcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcs
NyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3Rh
bGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIGpwZWdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1h
Z2UtYm9yZGVyLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2UtYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQs
NyArNCw3IEBACiAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VC
b3JkZXJFbmFibGVkKHRydWUpOwogCiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewot
ICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocD9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVl
bi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAw
IjsKKyAgICAgICAgICAgIGltZy5zcmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weT9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9n
cmVlbi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9
MTAwIjsKIAogICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgICAgIH0s
IDApOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1u
by1ib3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0SW5jb21wbGV0ZUltYWdlQm9yZGVyRW5hYmxlZChmYWxzZSk7CiAKICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9p
bWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0
YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFz
dC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5n
JnN0YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKICAgICAgICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEzLDcgKzEzLDcgQEAKIAogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFs
bCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAKICAgICBmdW5jdGlv
biBtcDRJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFy
dGlhbC1sb2FkLW5vLWFscGhhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC1uby1hbHBoYS5odG1sCShyZXZpc2lvbiAyNzYx
MzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5v
LWFscGhhLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7
CiB9CiAKIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjEzNykK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAK
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rp
b24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBy
b2dyZXNzaXZlLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXBh
cnRpYWwtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBs
b2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFn
ZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZl
LWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93
ZWJwLXByb2dyZXNzaXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlv
biBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJlbG9hZC1pbWct
dGVzdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvbG9hZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTYsNyArNiw3IEBACiAgIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVxID0gbmV3
IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1h
bmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29t
bWFuZD0iICsgY21kLCBmYWxzZSk7CiAgICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAg
ICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICB9IGNhdGNoIChleCkgewpAQCAt
NDksNyArNDksNyBAQAogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuL3Jl
c291cmNlcy9lbXB0eS5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InRlc3Qo
KSI+Ci0gIDxpbWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9aW5jcmVhc2Ut
cmVzb3VyY2UtY291bnQmcGF0aD0vbG9hZGluZy9yZXNvdXJjZXMvcHJlbG9hZC10ZXN0LmpwZyIg
b25lcnJvcj0iaW1nX2Vycm9yKCkiIG9ubG9hZD0ic2V0VGltZW91dChjaGVja0FjY2Vzc0NvdW50
LCAzMDAwKSI+CisgIDxpbWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD1pbmNy
ZWFzZS1yZXNvdXJjZS1jb3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNlcy9wcmVsb2FkLXRlc3Qu
anBnIiBvbmVycm9yPSJpbWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1lb3V0KGNoZWNrQWNjZXNz
Q291bnQsIDMwMDApIj4KICAgPHA+VGhpcyB0ZXN0IGlzIHRvIHRlc3Qgd2hldGhlciBwcmVsb2Fk
IGltYWdlIHdpbGwgcmVxdWlyZSAyIG1vcmUgcmVxdWVzdHMgb3Igbm90LjwvcD4KICAgPHNwYW4g
aWQ9Im91dHB1dFBhbmVsIj5QQVNTRUQ8L3NwYW4+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICB7CiAgICAgIHRyeSB7
CiAgICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgcmVxLm9w
ZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBjbWQsIGZh
bHNlKTsKICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNw
b25zZVRleHQ7CiAgICAgIH0gY2F0Y2ggKGV4KSB7CkBAIC00MywzNSArNDMsMzUgQEAKICAgPC9z
Y3JpcHQ+CiAgIAogICA8IS0tIFRoaXMgd2lsbCB0cmlnZ2VyIHRoZSBwcmVsb2FkIHNjYW5uZXIg
LS0+Ci0gIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIt
cHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3Nj
cmlwdD4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9z
Y3JpcHQ+CiAKLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW5vLW1lZGlhLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxs
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4u
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1z
dWNjZXNzLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3Jl
ZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3Mi
PgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAx
MDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJl
bG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5
LWZhaWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1i
cmFpbGxlLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS10di5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHktMi5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYWxsLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHku
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJz
Y3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1l
ZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4g
YW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWFsbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJw
cmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWJyYWlsbGUtc2NyZWVuLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNj
cmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5Pgot
ICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxzY3JpcHQg
c3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2NyaXB0PgorICA8aW1n
IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC0yLmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0eWxl
c2hlZXQgbG9hZCBzY2hlZHVsaW5nIHdpdGggcHJlbG9hZCBzY2FubmVyLiBSZXNvdXJjZSBsb2Fk
cyBmb3Igc2NyZWVuIHN0eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVy
cyBzaG91bGQgYmUgc2NoZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLmh0
bWwJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQs
NyBAQAogICAgIHsKICAgICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJl
cXVlc3Q7Ci0gICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD0iICsg
Y21kLCBmYWxzZSk7CiAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgIHJldHVybiBy
ZXEucmVzcG9uc2VUZXh0OwogICAgICB9IGNhdGNoIChleCkgewpAQCAtNDIsMzMgKzQyLDMzIEBA
CiAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBlbmRUZXN0LCBmYWxzZSk7CiAg
IDwvc2NyaXB0PgogCi0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bm8tbWVkaWEuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1z
Y3JlZW4tcXVlcnktc3VjY2Vzcy5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZh
aWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLWF1cmFsLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJicmFpbGxlIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVj
dGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcm9qZWN0aW9uLmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYS10di5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW5vLW1lZGlhLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLXByaW50LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJy
YWlsbGUtc2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4g
YW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3Jl
ZW4tcXVlcnktZmFpbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYXVyYWwi
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0iYnJhaWxsZSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3Nz
Ij4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWFuLWhhbmRoZWxkLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJwcm9qZWN0aW9uIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgor
ICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtdHR5LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1wcmludC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3Jl
ZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9h
ZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1n
IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1pbWFnZS5qcGciPgotICA8c2NyaXB0IHNyYz0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1zY3JpcHQuanMiPjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdl
LmpwZyI+CisgIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4K
IAogICBUZXN0IHN0eWxlc2hlZXQgbG9hZCBzY2hlZHVsaW5nLiBSZXNvdXJjZSBsb2FkcyBmb3Ig
c2NyZWVuIHN0eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91
bGQgYmUgc2NoZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9j
YWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3Qt
bW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLXVzaW5n
LW9wZW4tcGFuZWwuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYsNyBAQCBqc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKIGZ1bmN0aW9uIG9uRmlsZUNoYW5nZShmaWxlLCBmaWxlUGF0aCkKIHsK
ICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIkdFVCIs
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHA/
cGF0aD0uLi9sb2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOworICAgIHhoci5vcGVu
KCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZp
ZWQucHk/cGF0aD0uLi9sb2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOwogICAgIHho
ci5zZW5kKCk7CiAgICAgdmFyIGV4cGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHBhcnNlSW50KHhoci5y
ZXNwb25zZVRleHQpICogMTAwMCk7CiAgICAgdmFyIGFjdHVhbERhdGUgPSBmaWxlLmxhc3RNb2Rp
ZmllZDsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxh
c3QtbW9kaWZpZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xv
Y2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjEzNykKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQCBkZXNjcmlwdGlvbigiVGVzdCBG
aWxlLmxhc3RNb2RpZmllZERhdGUuCiBmdW5jdGlvbiBvbkZpbGVEcm9wKGZpbGUsIGZpbGVQYXRo
KQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3Blbigi
R0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVk
LnBocD9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CisgICAgeGhy
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1t
b2RpZmllZC5weT9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CiAg
ICAgeGhyLnNlbmQoKTsKICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3IERhdGUocGFyc2VJbnQo
eGhyLnJlc3BvbnNlVGV4dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFsRGF0ZSA9IGZpbGUubGFz
dE1vZGlmaWVkOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jl
c291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHJldmlz
aW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNv
dXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDcgKzEsNyBAQAog
ZnVuY3Rpb24gY3JlYXRlVGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYXRhKQogewogICAgIHZhciB4
aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiAr
IGZpbGVOYW1lICsgIiZkYXRhPSIgKyBmaWxlRGF0YSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQ
T1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5
P2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSArICImZGF0YT0iICsgZmlsZURhdGEsIGZhbHNlKTsKICAg
ICB4aHIuc2VuZCgpOwogICAgIGlmICh4aHIuc3RhdHVzICE9IDIwMCkgewogICAgICAgICB0ZXN0
RmFpbGVkKCJVbmV4cGVjdGVkIHJlc3BvbnNlIHN0YXR1cyByZWNlaXZlZDogIiArIHhoci5zdGF0
dXMpOwpAQCAtMjAsMTMgKzIwLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGaWxlKGZpbGVOYW1l
LCBmaWxlRGEKIGZ1bmN0aW9uIHRvdWNoVGVtcEZpbGUoZmlsZU5hbWUpCiB7CiAgICAgdmFyIHho
ciA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocD9maWxlbmFtZT0iICsg
ZmlsZU5hbWUsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5hbWUs
IGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogfQogCiBmdW5jdGlvbiByZW1vdmVUZW1wRmlsZShm
aWxlTmFtZSkKIHsKICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhy
Lm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwP2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQ
T1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5
P2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxv
YWRpbmctMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEv
dHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwJKHJldmlzaW9uIDI3NjEzNykK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ct
bG9hZGluZy0yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0Pgog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biB2dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3Ry
YWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkocmV2
aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFj
ay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBA
CiA8c2NyaXB0PgogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwog
fQogCiBmdW5jdGlvbiB2dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2MvbGFzdC1tb2RpZmllZC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sCShyZXZpc2lvbiAyNzYx
MzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5n
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTQgKzUsMTQgQEAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CiB9CiAKIGZ1bmN0aW9uIHRlc3QodGV4dCkgewotICAgIGRvY3VtZW50LndyaXRlKCc8
aWZyYW1lIHNyYz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhwP2RhdGU9JyArIGVzY2Fw
ZSh0ZXh0KSArICciPjwvaWZyYW1lPicpOworICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNy
Yz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHk/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsg
JyI+PC9pZnJhbWU+Jyk7CiB9CiAKIHRlc3QoJ01vbiwgMjEgTm92IDIwMDggMDE6MDM6MzMgR01U
Jyk7Ci10ZXN0KCdUdWVzZGF5LCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKLXRlc3QoJ01v
biwgMjEgTm92IDk3IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMS1Ob3YtMjAwOCAwMTow
MzozMyBHTVQnKTsKLXRlc3QoJ01vbiwgMjEtRmViLTIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0
KCdNb24sIDAzLUZlYi0yMDA4IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAzLU1hci0yMDA4
IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnVHVlLCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsK
K3Rlc3QoJ01vbiwgMjEgTm92IDE5OTcgMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDIxIE5v
diAyMDA4IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnTW9uLCAyMSBGZWIgMjAwOCAwMTowMzozMyBH
TVQnKTsKK3Rlc3QoJ01vbiwgMDMgRmViIDIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24s
IDAzIE1hciAyMDA4IDAxOjAzOjMzIEdNVCcpOwogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2Mvbm8tbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9u
IDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7
Ci0gICAgZG9jdW1lbnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2Rp
ZmllZC5waHA/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9j
dW1lbnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9k
YXRlPScgKyBlc2NhcGUodGV4dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnJyk7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNh
bmNlbC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTIgKzUsMTIg
QEAgdmFyIHJlcGVhdENvdW50ID0gMDsKIAogZnVuY3Rpb24gc2VuZFJlcXVlc3QoKSB7CiAgICAg
dmFyIGZpcnN0UmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgZmlyc3RSZXEub3Blbigi
R0VUIiwgIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249
MTAwJmRlbGF5PTEiKTsKKyAgICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwMCZkZWxheT0xIik7CiAKICAgICBm
aXJzdFJlcS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKGZp
cnN0UmVxLnJlYWR5U3RhdGUgPT0gZmlyc3RSZXEuSEVBREVSU19SRUNFSVZFRCkgewogICAgICAg
ICAgICAgdmFyIHNlY29uZFJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICAgICAg
c2Vjb25kUmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5waHA/aXRlcmF0aW9uPTEwJmRlbGF5PTAiKTsKKyAgICAgICAgICAgIHNlY29uZFJlcS5vcGVu
KCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9u
PTEwJmRlbGF5PTAiKTsKIAogICAgICAgICAgICAgc2Vjb25kUmVxLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgewogICAgICAgICAgICAgICAgIGlmIChyZXBlYXRDb3VudCsrIDwgNDApCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNz
ZXJ0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9u
L3BlbmRpbmctbG9jYXRpb24tY2hhbmdlLWFzc2VydC5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFu
Z2UtYXNzZXJ0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOwogfQotd2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291cmNlcy9z
bG93LW5vdGlmeS1kb25lLnBocCI7Cit3aW5kb3cubG9jYXRpb24gPSAiLi4vcmVzb3VyY2VzL3Ns
b3ctbm90aWZ5LWRvbmUucHkiOwogPC9zY3JpcHQ+PHNjcmlwdD4KIGFsZXJ0KCdGQUlMIDEgb2Yg
MycpOwogPC9zY3JpcHQ+PHNjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJl
bG9hZC9kZWxheWluZ19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWlu
Z19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCShyZXZpc2lv
biAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25s
b2FkX2xpbmtfcHJlbG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNyw3ICs3LDcgQEAKICAgICB2YXIgZmluaXNoZWRJbWFnZSA9IGZhbHNlOwogPC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgotPGxpbmsgcmVsPXByZWxvYWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwIiBh
cz1pbWFnZSBvbmxvYWQ9ImZpbmlzaGVkSW1hZ2UgPSB0cnVlOyI+Cis8bGluayByZWw9cHJlbG9h
ZCBocmVmPSIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5p
c2hlZEltYWdlID0gdHJ1ZTsiPgogPGJvZHk+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgIH0pOwogICAgIHZhciBpbWcgPSBuZXcgSW1h
Z2UoKTsKLSAgICBpbWcuc3JjID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCI7CisgICAg
aW1nLnNyYyA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSI7CiAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChpbWcpOwogPC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3Zl
X3ByZWxvYWRfaHJlZi5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTgsMTQgKzgsMTQgQEAKICAgICBsaW5rLmFzID0gImltYWdlIjsKICAgICBsaW5r
LnJlbCA9ICJwcmVsb2FkIjsKICAgICAvLyBDYWNoZS1idXN0aW5nIGlzIG5lZWRlZCBmb3Igc2xv
dyByZXNvdXJjZXMuCi0gICAgbGluay5ocmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBo
cD9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOworICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMv
c2xvdy1pbWFnZS5weT9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIHZhciBkb3dubG9hZGVk
SW1hZ2UgPSBmYWxzZTsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspOwogICAg
IGxpbmsuaHJlZiA9ICIiOwogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVu
Y3Rpb24oKSB7CiAgICAgICAgIHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5
VHlwZSgicmVzb3VyY2UiKTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRyaWVzLmxl
bmd0aDsgKytpKSB7Ci0gICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNs
b3ctaW1hZ2UucGhwIikgIT0gLTEpCisgICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmlu
ZGV4T2YoInNsb3ctaW1hZ2UucHkiKSAhPSAtMSkKICAgICAgICAgICAgICAgICBkb3dubG9hZGVk
SW1hZ2UgPSB0cnVlOwogICAgICAgICB9CiAgICAgICAgIHNob3VsZEJlRmFsc2UoImRvd25sb2Fk
ZWRJbWFnZSIpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxh
eWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRf
YmVmb3JlX2Rpc2NvdmVyeS5odG1sCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2Nv
dmVyeS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgLy8gVGhlIHJh
bmQgdmFsdWUgaXMgbmVjZXNzYXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCiAgICAg
dmFyIHJhbmQgPSBNYXRoLnJhbmRvbSgpOwogICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9
cHJlbG9hZCBocmVmPScuLi9yZXNvdXJjZXMvc2xvdy1zY3JpcHQucGw/ZGVsYXk9MjAwO3JhbmQ9
IiArIHJhbmQgKyAiJyBhcz1zY3JpcHQgb25sb2FkPSd3aW5kb3cuZmluaXNoZWRTY3JpcHQgPSB0
cnVlOyB0ZXN0KCk7Jz4iKTsKLSAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQg
aHJlZj0nLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1p
bWFnZSBvbmxvYWQ9J3dpbmRvdy5maW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7Cisg
ICAgZG9jdW1lbnQud3JpdGUoIjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9z
bG93LWltYWdlLnB5P3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRvdy5m
aW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CiA8L3NjcmlwdD4KIDxib2R5PgogPHNj
cmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3Rpbmdf
cHJlbG9hZF9hdF9vbmxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHJldmlzaW9u
IDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3Rpbmdf
cHJlbG9hZF9hdF9vbmxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAKIDxz
Y3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0PgogICAgIC8vIFRoZSByYW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNs
b3cgcmVzb3VyY2VzLgotICAgIHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgdmFy
IGltYWdlVVJMID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5w
eT9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAg
IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZv
cm1hbmNlLmdldEVudHJpZXNCeU5hbWUoaW1hZ2VVUkwpLmxlbmd0aDsKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCShyZXZpc2lvbiAy
NzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBo
cAkobm9uZXhpc3RlbnQpCkBAIC0xLDEwICswLDAgQEAKLTw/cGhwCi0gIGlmICghaXNzZXQoJF9T
RVJWRVJbJ1BIUF9BVVRIX1VTRVInXSkgfHwgIWlzc2V0KCRfUkVRVUVTVFsndWlkJ10pIHx8ICgk
X1JFUVVFU1RbJ3VpZCddICE9ICRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pKSB7Ci0gICBoZWFk
ZXIoJ1dXVy1BdXRoZW50aWNhdGU6IEJhc2ljIHJlYWxtPSJXZWJLaXQgVGVzdCBSZWFsbSInKTsK
LSAgIGhlYWRlcignSFRUUC8xLjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgZWNobyAnQXV0aGVu
dGljYXRpb24gY2FuY2VsZWQnOwotICAgZXhpdDsKLSAgfSBlbHNlIHsKLSAgIGVjaG8gIlVzZXI6
IHskX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddfSwgcGFzc3dvcmQ6IHskX1NFUlZFUlsnUEhQX0FV
VEhfUFcnXX0uIjsKLSAgfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2RpZ2VzdC1hdXRoL2F1dGhvcml6ZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkocmV2aXNpb24g
Mjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgv
YXV0aG9yaXplLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi0KLXJl
cXVpcmVfb25jZSAiZGlnZXN0LnBocCI7Ci0KLWlmIChlbXB0eSgkX1NFUlZFUlsnUEhQX0FVVEhf
RElHRVNUJ10pKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0g
ICAgaGVhZGVyKCJXV1ctQXV0aGVudGljYXRlOiBEaWdlc3QgcmVhbG09XCJ7JHJlYWxtfVwiLHFv
cD1cImF1dGhcIixub25jZT1cInskbm9uY2V9XCIsb3BhcXVlPVwieyRvcGFxdWV9XCIiKTsKLQot
ICAgIGVjaG8gIjxoMT5Zb3UgYXJlIG5vdCBhbGxvd2VkIHRvIHNlZSB0aGlzIHNlY3JldC48L2gx
PiI7Ci19IGVsc2VpZiAoISgkZGF0YSA9IGh0dHBfZGlnZXN0X3BhcnNlKCRfU0VSVkVSWydQSFBf
QVVUSF9ESUdFU1QnXSkpKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVk
Jyk7Ci0gICAgZWNobyAiPGgxPkludmFsaWQgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNlaWYg
KCEoJHVzZXJuYW1lID0gdmFsaWRhdGVfZGlnZXN0KCRkYXRhKSkpIHsKLSAgICBoZWFkZXIoJ0hU
VFAvMS4wIDQwMSBVbmF1dGhvcml6ZWQnKTsKLSAgICBlY2hvICI8aDE+V3JvbmcgY3JlZGVudGlh
bHMuPC9oMT4iOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFp
bicpOwotICAgIGVjaG8gJ1VzZXI6ICcgLiAkdXNlcm5hbWUgLiAiXG4iOwotfQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9k
aWdlc3QucGhwCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kaWdlc3QtYXV0aC9kaWdlc3QucGhwCShub25leGlzdGVudCkKQEAgLTEsNTIgKzAs
MCBAQAotPD9waHAKLQotJHJlYWxtID0gJ0RpZ2VzdCBBdXRoIFByb3RlY3RlZCBBcmVhJzsKLSRu
b25jZSA9IHVuaXFpZCgpOwotJG9wYXF1ZSA9IG1kNSgkcmVhbG0pOwotCi0kdXNlcm5hbWUgPSAn
ZXZlcnlib2R5JzsKLSRwYXNzd29yZCA9ICdsb3Zlc2JlZXInOwotCi1mdW5jdGlvbiBodHRwX2Rp
Z2VzdF9wYXJzZSgkdHh0KQotewotICAgIC8vIHByb3RlY3QgYWdhaW5zdCBtaXNzaW5nIGRhdGEK
LSAgICAkbmVlZGVkX3BhcnRzID0gWwotICAgICAgICAnbm9uY2UnID0+IDEsCi0gICAgICAgICdu
YycgPT4gMSwKLSAgICAgICAgJ2Nub25jZScgPT4gMSwKLSAgICAgICAgJ3FvcCcgPT4gMSwKLSAg
ICAgICAgJ3VzZXJuYW1lJyA9PiAxLAotICAgICAgICAndXJpJyA9PiAxLAotICAgICAgICAncmVz
cG9uc2UnID0+IDEKLSAgICBdOwotICAgICRkYXRhID0gW107Ci0gICAgJGtleXMgPSBpbXBsb2Rl
KCd8JywgYXJyYXlfa2V5cygkbmVlZGVkX3BhcnRzKSk7Ci0KLSAgICBwcmVnX21hdGNoX2FsbCgn
QCgnIC4gJGtleXMgLiAnKT0oPzooW1wnIl0pKFteXDJdKz8pXDJ8KFteXHMsXSspKUAnLCAkdHh0
LCAkbWF0Y2hlcywgUFJFR19TRVRfT1JERVIpOwotCi0gICAgZm9yZWFjaCAoJG1hdGNoZXMgYXMg
JG0pIHsKLSAgICAgICAgJGRhdGFbJG1bMV1dID0gJG1bM10gPyAkbVszXSA6ICRtWzRdOwotICAg
ICAgICB1bnNldCgkbmVlZGVkX3BhcnRzWyRtWzFdXSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICRu
ZWVkZWRfcGFydHMgPyBmYWxzZSA6ICRkYXRhOwotfQotCi1mdW5jdGlvbiB2YWxpZGF0ZV9kaWdl
c3QoJGRhdGEpCi17Ci0gICAgZ2xvYmFsICRyZWFsbSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQ7Ci0K
LSAgICBpZiAoJGRhdGFbJ3VzZXJuYW1lJ10gIT09ICR1c2VybmFtZSkKLSAgICAgICAgcmV0dXJu
IGZhbHNlOwotCi0gICAgJEExID0gZ2V0X21kNV9vZigkZGF0YVsndXNlcm5hbWUnXSwgJHJlYWxt
LCAkcGFzc3dvcmQpOwotICAgICRBMiA9IGdldF9tZDVfb2YoJF9TRVJWRVJbJ1JFUVVFU1RfTUVU
SE9EJ10sICRkYXRhWyd1cmknXSk7Ci0gICAgJHZhbGlkX3Jlc3BvbnNlID0gZ2V0X21kNV9vZigk
QTEsICRkYXRhWydub25jZSddLCAkZGF0YVsnbmMnXSwgJGRhdGFbJ2Nub25jZSddLCAkZGF0YVsn
cW9wJ10sICRBMik7Ci0KLSAgICByZXR1cm4gJGRhdGFbJ3Jlc3BvbnNlJ10gPT0gJHZhbGlkX3Jl
c3BvbnNlID8gJHVzZXJuYW1lIDogbnVsbDsKLX0KLQotZnVuY3Rpb24gZ2V0X21kNV9vZiguLi4k
aXRlbXMpCi17Ci0gICAgcmV0dXJuIG1kNShpbXBsb2RlKCc6JywgJGl0ZW1zKSk7Ci19ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShy
ZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShub25leGlzdGVudCkKQEAgLTEsMjkgKzAsMCBAQAot
PD9waHAKLWhlYWRlcigiRXhwaXJlczogVGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVQiKTsK
LQotaWYgKCRfR0VUWydhbGxvd0NhY2hlJ10pIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTog
YXBwbGljYXRpb24vanNvbiIpOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTog
YXBwbGljYXRpb24veC1uby1idWZmZXJpbmctcGxlYXNlIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1D
b250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRl
cigiUHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1pZiAoJF9HRVRbJ2NvcnMnXSkgewotICAgIGhl
YWRlcigiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiAqIik7Ci19Ci0KLSRpdGVyYXRpb24g
PSAkX0dFVFsnaXRlcmF0aW9uJ107Ci0kZGVsYXkgPSAkX0dFVFsnZGVsYXknXTsKLQotZWNobyAi
WyRpdGVyYXRpb24sICRkZWxheSAiOwotCi1mb3IgKCRpID0gMTsgJGkgPD0gJGl0ZXJhdGlvbjsg
KyskaSkgewotICAgIGVjaG8gIiwgJGksIFwiZm9vYmFyXCIiOwotICAgIC8vIEZvcmNlIGNvbnRl
bnQgdG8gYmUgc2VudCB0byB0aGUgYnJvd3NlciBhcyBpcy4KLSAgICBvYl9mbHVzaCgpOwotICAg
IGZsdXNoKCk7Ci0gICAgdXNsZWVwKCRkZWxheSAqIDEwMDApOwotfQotZWNobyAiXSI7Ci0/PgpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwzOCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBv
cnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQg
cGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5H
JywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQorYWxsb3dfY2FjaGUgPSBxdWVyeS5nZXQo
J2FsbG93Q2FjaGUnLCBbTm9uZV0pWzBdCitjb3JzID0gcXVlcnkuZ2V0KCdjb3JzJywgW05vbmVd
KVswXQorCitzeXMuc3Rkb3V0LndyaXRlKCdFeHBpcmVzOiBUaHUsIDAxIERlYyAyMDAzIDE2OjAw
OjAwIEdNVFxyXG4nKQorCitpZiBhbGxvd19jYWNoZSBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rk
b3V0LndyaXRlKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cclxuJykKK2Vsc2U6Cisg
ICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24v
eC1uby1idWZmZXJpbmctcGxlYXNlXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNh
Y2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8t
Y2FjaGVcclxuJworICAgICkKKworaWYgY29ycyBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0
LndyaXRlKCdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJykKKworc3lzLnN0ZG91
dC53cml0ZSgnXHJcbicpCisKK2l0ZXJhdGlvbiA9IGludChxdWVyeS5nZXQoJ2l0ZXJhdGlvbics
IFswXSlbMF0pCitkZWxheSA9IGludChxdWVyeS5nZXQoJ2RlbGF5JywgWzBdKVswXSkKKworc3lz
LnN0ZG91dC53cml0ZSgnW3t9LCB7fSAnLmZvcm1hdChpdGVyYXRpb24sIGRlbGF5KSkKKworZm9y
IGkgaW4gcmFuZ2UoMSwgaXRlcmF0aW9uICsgMSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnLCB7
fSwgImZvb2JhciInLmZvcm1hdChpKSkKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICB0aW1l
LnNsZWVwKGRlbGF5IC8gMTAwMCkKKworc3lzLnN0ZG91dC53cml0ZSgnXScpCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCAr
MSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKHJl
dmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8t
aWZyYW1lLXNyYy5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNSArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRG
cmFtZXNBc1RleHQoKTsKLSAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLX0KLTwvc2Ny
aXB0PgotPC9oZWFkPgotPGJvZHk+Ci08aWZyYW1lIHNyYz0iPD9waHAgZWNobyAkX0dFVFsnc3Jj
J107ID8+Ij48L2lmcmFtZT4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKG5vbmV4aXN0
ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3Jj
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjUgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhv
bjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFy
c2VfcXMKKworc3JjID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcn
KSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdzcmMnLCBbJyddKVswXQorCitzeXMuc3Rk
b3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworcHJpbnQoJycn
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikge3sKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVy
LmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworfX0KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0ie30iPjwvaWZy
YW1lPgorPC9ib2R5PgorPC9odG1sPicnJy5mb3JtYXQoc3JjKSkKClByb3BlcnR5IGNoYW5nZXMg
b246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2
MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlm
aWVkLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLWRhdGVfZGVmYXVs
dF90aW1lem9uZV9zZXQoJ1VUQycpOwotJGZpbGVQYXRoID0gJF9HRVRbJ3BhdGgnXTsKLWlmIChm
aWxlX2V4aXN0cygkZmlsZVBhdGgpKSB7Ci0gICAgZWNobyBkYXRlKCJVIiwgZmlsZW10aW1lKCRm
aWxlUGF0aCkpOwotfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2ZpbGUtbGFzdC1tb2RpZmllZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1w
b3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKwor
cGF0aCA9IG9zLnBhdGguYWJzcGF0aChwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RS
SU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3BhdGgnLCBbX19maWxlX19d
KVswXSkKKworc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJc
bicpCisKK2lmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgIHN5cy5zdGRvdXQud3JpdGUoc3Ry
KG9zLnN0YXQocGF0aCkuc3RfbXRpbWUpLnNwbGl0KCcuJylbMF0pCgpQcm9wZXJ0eSBjaGFuZ2Vz
IG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQu
cHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MTM3KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHAJKG5v
bmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi0gICAgJGRhdGUgPSAkX0dFVFsnZGF0
ZSddOwotICAgIGhlYWRlcigiTGFzdC1Nb2RpZmllZDogJGRhdGUiKTsKLT8+Ci08c2NyaXB0Pgot
ZG9jdW1lbnQud3JpdGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3Ry
aW5nKCkpOwotPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9sYXN0LW1vZGlmaWVkLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDE2IEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0
IHN5cworZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK2RhdGUgPSBwYXJzZV9x
cyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1U
cnVlKS5nZXQoJ2RhdGUnLCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKAorICAgICdMYXN0
LU1vZGlmaWVkOiB7fVxyXG4nCisgICAgJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4n
LmZvcm1hdChkYXRlKQorKQorCitwcmludCgnJyc8c2NyaXB0PgorZG9jdW1lbnQud3JpdGUoKG5l
dyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5nKCkpOworPC9zY3JpcHQ+
JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAt
MCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAJ
KHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDUwICswLDAgQEAKLTw/cGhwCi0k
bmFtZSA9ICRfR0VUWyduYW1lJ107Ci0kc3RhbGxBdCA9ICRfR0VUWydzdGFsbEF0J107Ci0kc3Rh
bGxGb3IgPSAkX0dFVFsnc3RhbGxGb3InXTsKLSRzdGFsbFJlcGVhdCA9ICRfR0VUWydzdGFsbFJl
cGVhdCddOwotJG1pbWVUeXBlID0gJF9HRVRbJ21pbWVUeXBlJ107Ci0KLSRmaWxlID0gZm9wZW4o
JG5hbWUsICJyYiIpOwotaWYgKCEkZmlsZSkKLSAgICBkaWUoIkNhbm5vdCBvcGVuIGZpbGUuIik7
Ci0KLWhlYWRlcigiQ29udGVudC1UeXBlOiAiIC4gJG1pbWVUeXBlKTsKLWhlYWRlcigiQ29udGVu
dC1MZW5ndGg6ICIgLiBmaWxlc2l6ZSgkbmFtZSkpOwotCi1pZiAoaXNzZXQoJHN0YWxsQXQpICYm
IGlzc2V0KCRzdGFsbEZvcikpIHsKLSAgICAkc3RhbGxBdCA9IChpbnQpJHN0YWxsQXQ7Ci0gICAg
aWYgKCRzdGFsbEF0ID4gZmlsZXNpemUoJG5hbWUpKQotICAgICAgICBkaWUoIkluY29ycmVjdCB2
YWx1ZSBmb3Igc3RhbGxBdC4iKTsKLQotICAgICR3cml0dGVuVG90YWwgPSAwOwotICAgICRmaWxl
U2l6ZSA9IGZpbGVzaXplKCRuYW1lKTsKLQotICAgIHdoaWxlICgkd3JpdHRlblRvdGFsIDwgJGZp
bGVTaXplKSB7Ci0gICAgICAgICRzdGFsbEF0ID0gbWluKCRzdGFsbEF0LCAkZmlsZVNpemUgLSAk
d3JpdHRlblRvdGFsKTsKLSAgICAgICAgJHdyaXR0ZW4gPSAwOwotCi0gICAgICAgIHdoaWxlICgk
d3JpdHRlbiA8ICRzdGFsbEF0KSB7Ci0gICAgICAgICAgICAkd3JpdGUgPSBtaW4oMTAyNCwgJHN0
YWxsQXQgLSAkd3JpdHRlbik7Ci0gICAgICAgICAgICBlY2hvKGZyZWFkKCRmaWxlLCAkd3JpdGUp
KTsKLSAgICAgICAgICAgICR3cml0dGVuICs9ICR3cml0ZTsKLSAgICAgICAgICAgIGZsdXNoKCk7
Ci0gICAgICAgICAgICBvYl9mbHVzaCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgJHdyaXR0ZW5U
b3RhbCArPSAkd3JpdHRlbjsKLSAgICAgICAgJHJlbWFpbmluZyA9ICRmaWxlU2l6ZSAtICR3cml0
dGVuVG90YWw7Ci0gICAgICAgIGlmICghJHJlbWFpbmluZykKLSAgICAgICAgICAgIGJyZWFrOwot
Ci0gICAgICAgIHVzbGVlcCgkc3RhbGxGb3IgKiAxMDAwMDAwKTsKLSAgICAgICAgaWYgKCFpc3Nl
dCgkc3RhbGxSZXBlYXQpIHx8ICEkc3RhbGxSZXBlYXQpCi0gICAgICAgICAgICAkc3RhbGxBdCA9
ICRyZW1haW5pbmc7Ci0gICAgfQotfSBlbHNlIHsKLSAgICBlY2hvKGZyZWFkKCRmaWxlLCBmaWxl
c2l6ZSgkbmFtZSkpKTsKLSAgICBmbHVzaCgpOwotICAgIG9iX2ZsdXNoKCk7Ci19Ci1mY2xvc2Uo
JGZpbGUpOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQt
YW5kLXN0YWxsLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnB5CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsNjYgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lz
CitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK3F1ZXJ5
ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFu
a192YWx1ZXM9VHJ1ZSkKK25hbWUgPSBxdWVyeS5nZXQoJ25hbWUnLCBbJyddKVswXQorc3RhbGxf
YXQgPSBxdWVyeS5nZXQoJ3N0YWxsQXQnLCBbTm9uZV0pWzBdCitzdGFsbF9mb3IgPSBxdWVyeS5n
ZXQoJ3N0YWxsRm9yJywgW05vbmVdKVswXQorc3RhbGxfcmVwZWF0ID0gcXVlcnkuZ2V0KCdzdGFs
bFJlcGVhdCcsIFtOb25lXSlbMF0KK21pbWVfdHlwZSA9IHF1ZXJ5LmdldCgnbWltZVR5cGUnLCBb
JyddKVswXQorCitpZiBub3Qgb3MucGF0aC5pc2ZpbGUobmFtZSk6CisgICAgc3lzLnN0ZG91dC53
cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisgICAgc3lzLmV4aXQoMCkK
KworbmFtZSA9IG9zLnBhdGguYWJzcGF0aChuYW1lKQorCitvcGVuX2ZpbGUgPSBvcGVuKG5hbWUs
ICdyYicpCitmaWxlX3NpemUgPSBvcy5wYXRoLmdldHNpemUobmFtZSkKK2NvbnRlbnQgPSBvcGVu
X2ZpbGUucmVhZCgpCisKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0NvbnRlbnQtVHlwZToge31c
clxuJworICAgICdDb250ZW50LUxlbmd0aDoge31cclxuXHJcbicuZm9ybWF0KG1pbWVfdHlwZSwg
ZmlsZV9zaXplKQorKQorCitpZiBzdGFsbF9hdCBpcyBub3QgTm9uZSBhbmQgc3RhbGxfZm9yIGlz
IG5vdCBOb25lOgorICAgIHN0YWxsX2F0ID0gaW50KHN0YWxsX2F0KQorICAgIHN0YWxsX2ZvciA9
IGZsb2F0KHN0YWxsX2ZvcikKKworICAgIGlmIHN0YWxsX2F0ID4gZmlsZV9zaXplOgorICAgICAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdJbmNvcnJlY3QgdmFsdWUgZm9yIHN0YWxsQXQuJykKKyAgICAg
ICAgc3lzLmV4aXQoMCkKKworICAgIHdyaXR0ZW5fdG90YWwgPSAwCisgICAgd2hpbGUgd3JpdHRl
bl90b3RhbCA8IGZpbGVfc2l6ZToKKyAgICAgICAgc3RhbGxfYXQgPSBtaW4oc3RhbGxfYXQsIGZp
bGVfc2l6ZSAtIHdyaXR0ZW5fdG90YWwpCisgICAgICAgIHdyaXR0ZW4gPSAwCisKKyAgICAgICAg
d2hpbGUgd3JpdHRlbiA8IHN0YWxsX2F0OgorICAgICAgICAgICAgd3JpdGUgPSBtaW4oMTAyNCwg
c3RhbGxfYXQgLSB3cml0dGVuKQorCisgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAg
ICAgICAgICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGNvbnRlbnRbd3JpdHRlbl90b3RhbCAr
IHdyaXR0ZW46d3JpdHRlbl90b3RhbCArIHdyaXR0ZW4gKyB3cml0ZV0pCisgICAgICAgICAgICBz
eXMuc3Rkb3V0LmZsdXNoKCkKKworICAgICAgICAgICAgd3JpdHRlbiArPSB3cml0ZQorCisgICAg
ICAgIHdyaXR0ZW5fdG90YWwgKz0gd3JpdHRlbgorICAgICAgICByZW1haW5pbmcgPSBmaWxlX3Np
emUgLSB3cml0dGVuX3RvdGFsCisKKyAgICAgICAgaWYgcmVtYWluaW5nID09IDA6CisgICAgICAg
ICAgICBicmVhaworCisgICAgICAgIHRpbWUuc2xlZXAoc3RhbGxfZm9yKQorICAgICAgICBpZiBz
dGFsbF9yZXBlYXQgaXMgTm9uZToKKyAgICAgICAgICAgIHN0YWxsX2F0ID0gcmVtYWluaW5nCitl
bHNlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRl
KGNvbnRlbnQpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisKK29wZW5fZmlsZS5jbG9zZSgpCgpQ
cm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsx
ICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHAJ
KHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5OCArMCwwIEBACi08P3Bo
cAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLS8vIFRoaXMgc2NyaXB0
IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBmb3IgcmV0cmlldmluZyBmaWxlcy4gV2hlbiB0aGUg
c3RhdGUgaXMgc2V0IHRvCi0vLyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVycm9y
IHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsK
LSAgICBoZWFkZXIoIkhUVFAvMS4xIDUwMCBJbnRlcm5hbCBTZXJ2ZXIgRXJyb3IiKTsKLSAgICBl
Y2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0K
LQotaWYgKCFpc3NldCgkX0dFVFsndGVzdCddKSkgewotICAgIGhlYWRlcigiSFRUUC8xLjEgNTAw
IEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gInRlc3QgcGFyYW1ldGVyIG11c3Qg
YmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVcbiI7Ci0gICAgZXhpdCgpOwotfQot
Ci1mdW5jdGlvbiB0ZW1wUGF0aEJhc2UoKQotewotICAgIHJldHVybiBzeXNfZ2V0X3RlbXBfZGly
KCkgLiAiLyIgLiAkX0dFVFsndGVzdCddOwotfQotCi1mdW5jdGlvbiBzZXRTdGF0ZSgkbmV3U3Rh
dGUsICRmaWxlKQotewotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlLCAkbmV3U3RhdGUpOwot
fQotCi1mdW5jdGlvbiBnZXRTdGF0ZSgkZmlsZSkKLXsKLSAgICBpZiAoIWZpbGVfZXhpc3RzKCRm
aWxlKSkgewotICAgICAgICByZXR1cm4gIlVuaW5pdGlhbGl6ZWQiOwotICAgIH0KLSAgICByZXR1
cm4gZmlsZV9nZXRfY29udGVudHMoJGZpbGUpOwotfQotCi1mdW5jdGlvbiBjb250ZW50VHlwZSgk
cGF0aCkKLXsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wuaHRtbCQvIiwgJHBhdGgpKQotICAgICAg
ICByZXR1cm4gInRleHQvaHRtbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLm1hbmlmZXN0JC8i
LCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9jYWNoZS1tYW5pZmVzdCI7Ci0gICAgaWYg
KHByZWdfbWF0Y2goIi9cLmpzJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9qYXZh
c2NyaXB0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueG1sJC8iLCAkcGF0aCkpCi0gICAgICAg
IHJldHVybiAiYXBwbGljYXRpb24veG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueGh0bWwk
LyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNhdGlvbi94aHRtbCt4bWwiOwotICAg
IGlmIChwcmVnX21hdGNoKCIvXC5zdmckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBs
aWNhdGlvbi9zdmcreG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueHNsJC8iLCAkcGF0aCkp
Ci0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veHNsdCt4bWwiOwotICAgIGlmIChwcmVnX21h
dGNoKCIvXC5naWYkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJpbWFnZS9naWYiOwotICAg
IGlmIChwcmVnX21hdGNoKCIvXC5qcGckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJpbWFn
ZS9qcGVnIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wucG5nJC8iLCAkcGF0aCkpCi0gICAgICAg
IHJldHVybiAiaW1hZ2UvcG5nIjsKLSAgICByZXR1cm4gInRleHQvcGxhaW4iOwotfQotCi1mdW5j
dGlvbiBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCkKLXsKLSAgICBoZWFkZXIoIkV4cGlyZXM6
IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250
cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRlcigi
UHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRo
KQotewotICAgIGdsb2JhbCAkc3RhdGVGaWxlOwotICAgICRzdGF0ZSA9IGdldFN0YXRlKCRzdGF0
ZUZpbGUpOwotICAgIGlmICgkc3RhdGUgPT0gIk9mZmxpbmUiKSB7Ci0gICAgICAgICMgU2ltdWxh
dGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4K
LSAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSAzMDcgVGVtcG9yYXJ5IFJlZGlyZWN0Jyk7Ci0gICAg
ICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX1NFUlZFUlsnUkVRVUVTVF9VUkknXSk7ICMgUmVk
aXJlY3QgdG8gc2VsZi4KLSAgICAgICAgaGVhZGVyKCdDb250ZW50LUxlbmd0aDogMScpOwotICAg
ICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiA1JywgZmFsc2UpOyAjIE11bHRpcGxlIGNvbnRl
bnQtbGVuZ3RoIGhlYWRlcnMsIHNvbWUgbmV0d29yayBzdGFja3MgY2FuIGRldGVjdCB0aGlzIGNv
bmRpdGlvbiBmYXN0ZXIuCi0gICAgICAgIGVjaG8gIkludGVudGlvbmFsbHkgaW5jb3JyZWN0IHJl
c3BvbnNlLiI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8gQSBsaXR0bGUgc2VjdXJ1dHkgY2hl
Y2tpbmcgY2FuJ3QgaHVydC4KLSAgICAgICAgaWYgKHN0cnN0cigkcGF0aCwgIi4uIikpCi0gICAg
ICAgICAgICBleGl0OwotCi0gICAgICAgIGlmICgkcGF0aFswXSA9PSAnLycpCi0gICAgICAgICAg
ICAkcGF0aCA9ICcuLicgLiAkcGF0aDsKLQotICAgICAgICBpZiAoISRfR0VUWydhbGxvdy1jYWNo
aW5nJ10pCi0gICAgICAgICAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0KLSAgICAg
ICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgewotICAgICAgICAgICAgaGVhZGVyKCJMYXN0LU1v
ZGlmaWVkOiAiIC4gZ21kYXRlKCJELCBkIE0gWSBIOmk6cyBUIiwgZmlsZW10aW1lKCRwYXRoKSkp
OwotICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LVR5cGU6ICIgLiBjb250ZW50VHlwZSgkcGF0
aCkpOwotICAgICAgICAKLSAgICAgICAgICAgIHByaW50IGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRo
KTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGhlYWRlcignSFRUUC8xLjEgNDA0IE5v
dCBGb3VuZCcpOwotICAgICAgICB9Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVJbmNyZWFz
ZVJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewotICAgICRyZXNvdXJjZUNvdW50RmlsZSA9
IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAgJHJlc291cmNlQ291bnQgPSBnZXRTdGF0
ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVjZXMgPSBleHBsb2RlKCIgIiwgJHJlc291
cmNlQ291bnQpOwotICAgICRjb3VudCA9IDA7Ci0gICAgaWYgKGNvdW50KCRwaWVjZXMpID09IDIg
JiYgJHBpZWNlc1swXSA9PSAkcGF0aCkgewotICAgICAgICAkY291bnQgPSAxICsgJHBpZWNlc1sx
XTsKLSAgICB9IGVsc2UgewotICAgICAgICAkY291bnQgPSAxOwotICAgIH0KLSAgICBmaWxlX3B1
dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsICRwYXRoIC4gIiAiIC4gJGNvdW50KTsKLSAg
ICBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKTsKLX0KLQotZnVuY3Rpb24gaGFuZGxlUmVzZXRSZXNv
dXJjZUNvdW50Q29tbWFuZCgpCi17Ci0gICAgJHJlc291cmNlQ291bnRGaWxlID0gdGVtcFBhdGhC
YXNlKCkgLiAiLWNvdW50IjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZp
bGUsIDApOwotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoJ0hU
VFAvMS4xIDIwMCBPSycpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVHZXRSZXNvdXJjZUNvdW50Q29t
bWFuZCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAu
ICItY291bnQiOwotICAgICRyZXNvdXJjZUNvdW50ID0gZ2V0U3RhdGUoJHJlc291cmNlQ291bnRG
aWxlKTsKLSAgICAkcGllY2VzID0gZXhwbG9kZSgiICIsICRyZXNvdXJjZUNvdW50KTsKLSAgICBn
ZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMSAyMDAgT0sn
KTsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2VzWzBdID09ICRwYXRoKSB7
Ci0gICAgICAgIGVjaG8gJHBpZWNlc1sxXTsKLSAgICB9IGVsc2UgewotICAgICAgICBlY2hvIDA7
Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVTdGFydFJlc291cmNlUmVxdWVzdHNMb2coKQot
ewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBm
aWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAgIiIpOwotfQotCi1mdW5jdGlvbiBo
YW5kbGVDbGVhclJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUg
PSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3Vy
Y2VMb2dGaWxlLCAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJlc291cmNlUmVxdWVzdHNM
b2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsK
LQotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoIkNvbnRlbnQt
VHlwZTogdGV4dC9wbGFpbiIpOwotCi0gICAgcHJpbnQgZmlsZV9nZXRfY29udGVudHMoJHJlc291
cmNlTG9nRmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUxvZ1Jlc291cmNlUmVxdWVzdCgkcGF0
aCkKLXsKLSAgICAkcmVzb3VyY2VMb2dGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLWxvZyI7Ci0g
ICAgCi0gICAgJG5ld0RhdGEgPSAiXG4iLiRwYXRoOwotICAgIC8vIERvY3VtZW50YXRpb24gc2F5
cyB0aGF0IGFwcGVuZHMgYXJlIGF0b21pYy4KLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3Vy
Y2VMb2dGaWxlLCAkbmV3RGF0YSwgRklMRV9BUFBFTkQpOwotfQotCi0kc3RhdGVGaWxlID0gdGVt
cFBhdGhCYXNlKCkgLiAiLXN0YXRlIjsKLSRjb21tYW5kID0gJF9HRVRbJ2NvbW1hbmQnXTsKLWlm
ICgkY29tbWFuZCkgewotICAgIGlmICgkY29tbWFuZCA9PSAiY29ubmVjdCIpCi0gICAgICAgIHNl
dFN0YXRlKCJPbmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAi
ZGlzY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJPZmZsaW5lIiwgJHN0YXRlRmlsZSk7Ci0g
ICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImluY3JlYXNlLXJlc291cmNlLWNvdW50IikKLSAgICAg
ICAgaGFuZGxlSW5jcmVhc2VSZXNvdXJjZUNvdW50Q29tbWFuZCgkX0dFVFsncGF0aCddKTsKLSAg
ICBlbHNlIGlmICgkY29tbWFuZCA9PSAicmVzZXQtcmVzb3VyY2UtY291bnQiKQotICAgICAgICBo
YW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5kKCk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQg
PT0gImdldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZUdldFJlc291cmNlQ291bnRD
b21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJzdGFydC1y
ZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZVN0YXJ0UmVzb3VyY2VSZXF1ZXN0
c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJjbGVhci1yZXNvdXJjZS1yZXF1ZXN0
LWxvZyIpCi0gICAgICAgIGhhbmRsZUNsZWFyUmVzb3VyY2VSZXF1ZXN0c0xvZygpOwotICAgIGVs
c2UgaWYgKCRjb21tYW5kID09ICJnZXQtcmVzb3VyY2UtcmVxdWVzdC1sb2ciKQotICAgICAgICBo
YW5kbGVHZXRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0g
ImxvZy1yZXNvdXJjZS1yZXF1ZXN0IikKLSAgICAgICAgaGFuZGxlTG9nUmVzb3VyY2VSZXF1ZXN0
KCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UKLSAgICAgICAgZWNobyAiVW5rbm93biBjb21tYW5k
OiAiIC4gJGNvbW1hbmQgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHJlcXVlc3RlZFBhdGgg
PSAkX0dFVFsncGF0aCddOwotZ2VuZXJhdGVSZXNwb25zZSgkcmVxdWVzdGVkUGF0aCk7Ci0/PgpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwx
NzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworIyBUaGlzIHNjcmlwdCBhY3RzIGFzIGEg
c3RhdGVmdWwgcHJveHkgZm9yIHJldHJpZXZpbmcgZmlsZXMuIFdoZW4gdGhlIHN0YXRlIGlzIHNl
dCB0bworIyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVycm9yIHdpdGggYSBub25z
ZW5zZSByZXNwb25zZS4KKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGVtcGZpbGUK
K2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCitmcm9tIHBvcnRhYmlsaXR5TGF5ZXIgaW1w
b3J0IGdldF9zdGF0ZSwgc2V0X3N0YXRlCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2Vf
cXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycp
LCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQordGVzdCA9IHF1ZXJ5LmdldCgndGVzdCcsIFtOb25l
XSlbMF0KK2NvbW1hbmQgPSBxdWVyeS5nZXQoJ2NvbW1hbmQnLCBbTm9uZV0pWzBdCisKK2lmIHRl
c3QgaXMgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAnc3RhdHVzOiA1MDBc
clxuJworICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAg
J3Rlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVc
bicKKyAgICApCisgICAgc3lzLmV4aXQoMCkKKworCitkZWYgdGVtcF9wYXRoX2Jhc2UoKToKKyAg
ICByZXR1cm4gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgdGVzdCkKKworCitz
dGF0ZV9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctc3RhdGUnCisKKworZGVmIGdlbmVyYXRl
X25vX2NhY2hlX2h0dHBfaGVhZGVyKCk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAg
J0V4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UXHJcbicKKyAgICAgICAgJ0Nh
Y2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlXHJcbicKKyAg
ICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAgICkKKworCitkZWYgY29udGVudF90eXBl
KHBhdGgpOgorICAgIHJldHVybiB7CisgICAgICAgICdodG1sJzogJ3RleHQvaHRtbCcsCisgICAg
ICAgICdtYW5pZmVzdCc6ICd0ZXh0L2NhY2hlLW1hbmlmZXN0JywKKyAgICAgICAgJ2pzJzogJ3Rl
eHQvamF2YXNjcmlwdCcsCisgICAgICAgICd4bWwnOiAnYXBwbGljYXRpb24veG1sJywKKyAgICAg
ICAgJ3hodG1sJzogJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsCisgICAgICAgICdzdmcnOiAnYXBw
bGljYXRpb24vc3ZnK3htbCcsCisgICAgICAgICd4c2wnOiAnYXBwbGljYXRpb24veHNsdCt4bWwn
LAorICAgICAgICAnZ2lmJzogJ2ltYWdlL2dpZicsCisgICAgICAgICdqcGcnOiAnaW1hZ2UvanBl
ZycsCisgICAgICAgICdwbmcnOiAnaW1hZ2UvcG5nJworICAgIH0uZ2V0KHBhdGguc3BsaXQoJy4n
KVstMV0sICd0ZXh0L3BsYWluJykKKworCitkZWYgZ2VuZXJhdGVfcmVzcG9uc2UocGF0aCk6Cisg
ICAgc3RhdGUgPSBnZXRfc3RhdGUoc3RhdGVfZmlsZSkKKyAgICBpZiBzdGF0ZSA9PSAnT2ZmbGlu
ZSc6CisgICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGgg
YSBub25zZW5zZSByZXNwb25zZS4KKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAg
ICAgICdzdGF0dXM6IDMwN1xyXG4nCisgICAgICAgICAgICAnTG9jYXRpb246IHt9XHJcblxyXG4n
ICAjIFJlZGlyZWN0IHRvIHNlbGYuCisgICAgICAgICAgICAnSW50ZW50aW9uYWxseSBpbmNvcnJl
Y3QgcmVzcG9uc2UuJy5mb3JtYXQob3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfVVJJJywgJycpKQor
ICAgICAgICApCisgICAgZWxzZToKKyAgICAgICAgIyBBIGxpdHRsZSBzZWN1cnV0eSBjaGVja2lu
ZyBjYW4ndCBodXJ0LgorICAgICAgICBpZiAnLi4nIGluIHBhdGg6CisgICAgICAgICAgICBzeXMu
c3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKyAgICAgICAg
ICAgIHN5cy5leGl0KDApCisKKyAgICAgICAgaWYgbGVuKHBhdGgpID4gMCBhbmQgcGF0aFswXSA9
PSAnLyc6CisgICAgICAgICAgICBwYXRoID0gJy4uJyArIHBhdGgKKworICAgICAgICBpZiAnYWxs
b3ctY2FjaGluZycgbm90IGluIHF1ZXJ5LmtleXMoKToKKyAgICAgICAgICAgIGdlbmVyYXRlX25v
X2NhY2hlX2h0dHBfaGVhZGVyKCkKKworICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShwYXRoKToK
KyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAgICAgICAgJ0xhc3QtTW9k
aWZpZWQ6IHt9IEdNVFxyXG4nCisgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZToge31cclxu
XHJcbicuZm9ybWF0KGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAob3Muc3RhdChwYXRoKS5zdF9t
dGltZSkuc3RyZnRpbWUoJyVhLCAlZCAlYiAlWSAlSDolTTolUycpLCBjb250ZW50X3R5cGUocGF0
aCkpCisgICAgICAgICAgICApCisKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAncmInKSBh
cyBvcGVuX2ZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisgICAgICAg
ICAgICAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxlLnJlYWQoKSkKKyAgICAg
ICAgZWxzZToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogNDA0XHJcblxy
XG4nKQorCisKK2RlZiBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291bnRfY29tbWFuZChwYXRo
KToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctY291bnQn
CisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSkKKyAg
ICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAgY291bnQgPSAwCisgICAg
aWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBdID09IHBhdGg6CisgICAgICAgIGNvdW50
ID0gMSArIGludChwaWVjZXNbMV0pCisgICAgZWxzZToKKyAgICAgICAgY291bnQgPSAxCisKKyAg
ICBzZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSwgJ3t9IHt9Jy5mb3JtYXQocGF0aCwgY291
bnQpKQorICAgIGdlbmVyYXRlX3Jlc3BvbnNlKHBhdGgpCisKKworZGVmIGhhbmRsZV9yZXNldF9y
ZXNvdXJjZV9jb3VudF9jb21tYW5kKCk6CisgICAgcmVzb3VyY2VfY291bnRfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHNldF9zdGF0ZShyZXNvdXJjZV9jb3VudF9maWxl
LCAnMCcpCisgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIoKQorICAgIHN5cy5zdGRv
dXQud3JpdGUoJ3N0YXR1czogMjAwXHJcblxyXG4nKQorCisKK2RlZiBoYW5kbGVfZ2V0X3Jlc291
cmNlX2NvdW50X2NvbW1hbmQocGF0aCk6CisgICAgcmVzb3VyY2VfY291bnRfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHJlc291cmNlX2NvdW50ID0gZ2V0X3N0YXRlKHJl
c291cmNlX2NvdW50X2ZpbGUpCisgICAgcGllY2VzID0gcmVzb3VyY2VfY291bnQuc3BsaXQoJyAn
KQorICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKyAgICBzeXMuc3Rkb3V0Lndy
aXRlKCdzdGF0dXM6IDIwMFxyXG5cclxuJykKKworICAgIGlmIGxlbihwaWVjZXMpID09IDIgYW5k
IHBpZWNlc1swXSA9PSBwYXRoOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKHN0cihwaWVjZXNb
MV0pKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJzAnKQorCisKK2RlZiBo
YW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCk6CisgICAgcmVzb3VyY2VfbG9nX2Zp
bGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1sb2cnCisgICAgc2V0X3N0YXRlKHJlc291cmNlX2xv
Z19maWxlLCAnJykKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRt
bFxyXG5cclxuJykKKworCitkZWYgaGFuZGxlX2dldF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKToK
KyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWxvZycKKyAgICBn
ZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29u
dGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKKyAgICB3aXRoIG9wZW4ocmVzb3VyY2Vf
bG9nX2ZpbGUsICdyJykgYXMgb3Blbl9maWxlOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKG9w
ZW5fZmlsZS5yZWFkKCkpCisKKworZGVmIGhhbmRsZV9sb2dfcmVzb3VyY2VfcmVxdWVzdChwYXRo
KToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWxvZycKKyAg
ICBuZXdfZGF0YSA9ICdcbicgKyBwYXRoCisKKyAgICB3aXRoIG9wZW4ocmVzb3VyY2VfbG9nX2Zp
bGUsICdhJykgYXMgb3Blbl9maWxlOgorICAgICAgICBvcGVuX2ZpbGUud3JpdGUobmV3X2RhdGEp
CisKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxu
JykKKworCitpZiBjb21tYW5kIGlzIG5vdCBOb25lOgorICAgIGlmIGNvbW1hbmQgPT0gJ2Nvbm5l
Y3QnOgorICAgICAgICBzZXRfc3RhdGUoc3RhdGVfZmlsZSwgJ09ubGluZScpCisgICAgICAgIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgIGVs
aWYgY29tbWFuZCA9PSAnZGlzY29ubmVjdCc6CisgICAgICAgIHNldF9zdGF0ZShzdGF0ZV9maWxl
LCAnT2ZmbGluZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnaW5jcmVhc2UtcmVzb3VyY2Ut
Y291bnQnOgorICAgICAgICBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291bnRfY29tbWFuZChx
dWVyeS5nZXQoJ3BhdGgnLCBbJyddKVswXSkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ3Jlc2V0LXJl
c291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX3Jlc2V0X3Jlc291cmNlX2NvdW50X2NvbW1h
bmQoKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLWNvdW50JzoKKyAgICAgICAg
aGFuZGxlX2dldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10p
WzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAnc3RhcnQtcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgor
ICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNv
bW1hbmQgPT0gJ2xlYXItcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgorICAgICAgICBoYW5kbGVfc3Rh
cnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2dldC1yZXNv
dXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNf
bG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xvZy1yZXNvdXJjZS1yZXF1ZXN0JzoKKyAgICAg
ICAgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBd
KQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAgICAnQ29u
dGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAgICAgICdVbmtub3duIGNvbW1h
bmQ6IHt9XG4nLmZvcm1hdChjb21tYW5kKQorICAgICAgICApCisgICAgICAgIHN5cy5leGl0KDAp
CitlbHNlOgorICAgIHJlcXVlc3RfcGF0aCA9IHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBdCisg
ICAgZ2VuZXJhdGVfcmVzcG9uc2UocmVxdWVzdF9wYXRoKQoKUHJvcGVydHkgY2hhbmdlcyBvbjog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9wb3J0YWJpbGl0eUxheWVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHJldmlzaW9uIDI3NjEzNykKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHdv
cmtpbmcgY29weSkKQEAgLTcyLDcgKzcyLDcgQEAgZGVmIGdldF9zdGF0ZShmaWxlLCBkZWZhdWx0
PSdVbmluaXRpYWxpegogICAgICAgICByZXR1cm4gZmlsZS5yZWFkKCkKIAogCi1kZWYgc2V0X3N0
YXRlKHN0YXRlLCBmaWxlKToKK2RlZiBzZXRfc3RhdGUoZmlsZSwgc3RhdGUpOgogICAgIHdpdGgg
b3BlbihmaWxlLCAndycpIGFzIG9wZW5fZmlsZToKICAgICAgICAgb3Blbl9maWxlLndyaXRlKHN0
YXRlKQogICAgIHJldHVybiBzdGF0ZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnBocAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShub25leGlzdGVudCkKQEAg
LTEsMTAgKzAsMCBAQAotPD9waHAKLWlmIChzdHJwb3MoJF9TRVJWRVJbJ0hUVFBfQUNDRVBUJ10s
ICd2aWRlby8qJykgIT09IGZhbHNlKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMSAzMDEgTW92ZWQg
UGVybWFuZW50bHknKTsKLSAgICBoZWFkZXIoJ0xvY2F0aW9uOiAnIC4gJF9HRVRbJ3ZpZGVvJ10p
OwotICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG11c3QtcmV2YWxpZGF0ZScp
OwotICAgIHJldHVybjsKLX0KLQotaGVhZGVyKCdIVFRQLzEuMSA0MDAgQmFkIFJlcXVlc3QnKTsK
LT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12
aWRlby1pZi1hY2NlcHRlZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQkobm9uZXhpc3RlbnQp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1p
Zi1hY2NlcHRlZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE5IEBACisjIS91c3IvYmlu
L2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSB1cmxsaWIucGFyc2Ug
aW1wb3J0IHBhcnNlX3FzCisKK3ZpZGVvID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZ
X1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCd2aWRlbycsIFsnJ10p
WzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicpCisK
K2lmICd2aWRlby8qJyBpbiBvcy5lbnZpcm9uLmdldCgnSFRUUF9BQ0NFUFQnLCAnJyk6CisgICAg
c3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ3N0YXR1czogMzAxXHJcbicKKyAgICAgICAgJ0xv
Y2F0aW9uOiB7fVxyXG4nCisgICAgICAgICdDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbXVzdC1y
ZXZhbGlkYXRlXHJcblxyXG4nLmZvcm1hdCh2aWRlbykKKyAgICApCisgICAgc3lzLmV4aXQoMCkK
Kworc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDBcclxuXHJcbicpCgpQcm9wZXJ0eSBjaGFu
Z2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRl
by1pZi1hY2NlcHRlZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCww
ICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAko
cmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVz
ZXQtdGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi1y
ZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBf
ZGlyKCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwot
ICAgIGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAk
X0dFVFsnZmlsZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1dF9jb250ZW50cygkdG1wRmlsZSwgInRl
c3QiKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiAiIC4gJHRt
cEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLWlmICghdW5saW5rKCR0bXBGaWxlKSkgewot
ICAgIGVjaG8gIkZBSUw6IFVuYWJsZSB0byBkZWxldGUgZmlsZTogIiAuICR0bXBGaWxlIC4gIlxu
IjsKLSAgICBleGl0KCk7Ci19Ci0/PgoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocApfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkRlbGV0
ZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0xICswLDAgIyMKLSoKXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQt
dGVtcC1maWxlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL3Jlc2V0LXRlbXAtZmlsZS5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0yLDE3ICsyLDEyIEBACiBpbXBvcnQgb3MKIGltcG9ydCBzeXMKIGltcG9ydCB0ZW1wZmlsZQot
CiBmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKIAotcXVlcnkgPSBwYXJzZV9xcyhv
cy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVl
KQotc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgcXVlcnku
Z2V0KCdmaWxlbmFtZScsIFsnc3RhdGUudHh0J10pWzBdKQorZmlsZW5hbWUgPSBwYXJzZV9xcyhv
cy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVl
KS5nZXQoJ2ZpbGVuYW1lJywgWyc0MDQudHh0J10pWzBdCitzdGF0ZV9maWxlID0gb3MucGF0aC5q
b2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiAKLXN5cy5zdGRvdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicpCi1zeXMuc3Rkb3V0LndyaXRlKCdcclxuJykK
K3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogCi10
cnk6Ci0gICAgaWYgb3MucGF0aC5leGlzdHMoc3RhdGVGaWxlKToKLSAgICAgICAgb3MucmVtb3Zl
KHN0YXRlRmlsZSkKLWV4Y2VwdCBPU0Vycm9yOgotICAgIHByaW50KCdGQUlMOiB1bmFibGUgdG8g
d3JpdGUgdG8gZmlsZToge30nLmZvcm1hdChzdGF0ZUZpbGUpKQoraWYgb3MucGF0aC5leGlzdHMo
c3RhdGVfZmlsZSk6CisgICAgb3MucmVtb3ZlKHN0YXRlX2ZpbGUpCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBocAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBocAkocmV2aXNpb24gMjc2
MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHAJ
KG5vbmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi11c2xlZXAoNDAwMDAwKTsKLWhl
YWRlcigiQ29udGVudC1UeXBlOiBpbWFnZS9wbmciKTsKLUByZWFkZmlsZSgic3F1YXJlMTAwLnBu
ZyIpOwotPz4KLQotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93
LWltYWdlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Nsb3ctaW1hZ2UucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvc2xvdy1pbWFnZS5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEyIEBACisj
IS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHRp
bWUKKwordGltZS5zbGVlcCgwLjQpCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTog
aW1hZ2UvcG5nXHJcblxyXG4nKQord2l0aCBvcGVuKCdzcXVhcmUxMDAucG5nJywgJ3JiJykgYXMg
b3Blbl9maWxlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5cy5zdGRvdXQuYnVmZmVy
LndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnB5Cl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2
bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9w
ZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnkt
ZG9uZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
c2xvdy1ub3RpZnktZG9uZS5waHAJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwCShub25leGlzdGVudCkKQEAg
LTEsOCArMCwwIEBACi08P3BocAotdXNsZWVwKDEwMDAwMCk7Ci0/PgotRE9ORSEKLTxzY3JpcHQ+
Ci1pZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci08
L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90
aWZ5LWRvbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvc2xvdy1ub3RpZnktZG9uZS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMTMgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IHN5cworaW1wb3J0
IHRpbWUKKwordGltZS5zbGVlcCgwLjEpCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlw
ZTogdGV4dC9odG1sXHJcblxyXG4nKQorcHJpbnQoJycnRE9ORSEKKzxzY3JpcHQ+CitpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cis8L3NjcmlwdD4n
JycpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9zbG93LW5vdGlmeS1kb25lLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMj
IC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUu
cGhwCShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy90b3VjaC10ZW1wLWZpbGUucGhwCShub25leGlzdGVudCkKQEAgLTEsMjIgKzAsMCBAQAotPD9w
aHAKLXJlcXVpcmVfb25jZSAncG9ydGFiaWxpdHlMYXllci5waHAnOwotCi1pZiAoIXN5c19nZXRf
dGVtcF9kaXIoKSkgewotICAgIGVjaG8gIkZBSUw6IE5vIHRlbXAgZGlyIHdhcyByZXR1cm5lZC5c
biI7Ci0gICAgZXhpdCgpOwotfQotCi0kdG1wRmlsZSA9IHN5c19nZXRfdGVtcF9kaXIoKSAuICIv
IiAuICRfR0VUWydmaWxlbmFtZSddOwotCi0kc3RhdCA9IHN0YXQoJHRtcEZpbGUpOwotaWYgKCEk
c3RhdCkgewotICAgIGVjaG8gIkZBSUw6IHN0YXQoKSBjYWxsIGZhaWxlZC5cbiI7Ci0gICAgZXhp
dCgpOwotfQotCi0kbXRpbWUgPSAkc3RhdFsnbXRpbWUnXSArIDE7Ci0KLWlmICghdG91Y2goJHRt
cEZpbGUsICRtdGltZSkpIHsKLSAgICBlY2hvICJGQUlMOiB0b3VjaCgpIGNhbGwgZmFpbGVkLlxu
IjsKLX0KLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10
ZW1wLWZpbGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvdG91Y2gtdGVtcC1maWxlLnB5CShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkJKHdvcmtpbmcgY29weSkKQEAg
LTUsMTAgKzUsNyBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUKIGZyb20gdXJsbGliLnBh
cnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3BsaXQoJzovY3lnd2luJylb
LTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGgu
YWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQotZmlsZW5hbWUgPSBwYXJzZV9xcyhv
cy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVl
KS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2ZpbGVuYW1lID0gcGFyc2VfcXMo
b3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1
ZSkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogdG1wRmlsZVBhdGggPSBvcy5wYXRo
LmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKIAogc3lzLnN0ZG91dC53cml0
ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1wLWZpbGUucGhwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHAJKHJldmlz
aW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRl
bXAtZmlsZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNyArMCwwIEBACi08P3BocAotcmVxdWly
ZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLWlmICghc3lzX2dldF90ZW1wX2Rpcigp
KSB7Ci0gICAgZWNobyAiRkFJTDogTm8gdGVtcCBkaXIgd2FzIHJldHVybmVkLlxuIjsKLSAgICBl
eGl0KCk7Ci19Ci0KLSR0bXBGaWxlID0gc3lzX2dldF90ZW1wX2RpcigpIC4gIi8iIC4gJF9HRVRb
J2ZpbGVuYW1lJ107Ci0KLWlmICghZmlsZV9wdXRfY29udGVudHMoJHRtcEZpbGUsICRfR0VUWydk
YXRhJ10pKSB7Ci0gICAgZWNobyAiRkFJTDogdW5hYmxlIHRvIHdyaXRlIHRvIGZpbGU6ICIgLiAk
dG1wRmlsZSAuICJcbiI7Ci0gICAgZXhpdCgpOwotfQotCi1lY2hvICR0bXBGaWxlOwotPz4KSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1w
LWZpbGUucHkJKHJldmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQkod29ya2luZyBjb3B5KQpAQCAtNSwyMiArNSwxNCBA
QCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUKIGZyb20gdXJsbGliLnBhcnNlIGltcG9ydCBw
YXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3BsaXQoJzovY3lnd2luJylbLTFdCi1odHRwX3Jv
b3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChvcy5w
YXRoLmRpcm5hbWUoZmlsZSkpKSkKLQogcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgn
UVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQotZmlsZW5hbWUgPSBx
dWVyeS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2ZpbGVuYW1lID0gcXVlcnku
Z2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogZGF0YSA9IHF1ZXJ5LmdldCgnZGF0YScs
IFsnJ10pWzBdCiAKLXRtcEZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigp
LCBmaWxlbmFtZSkKK3RtcF9maWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIo
KSwgZmlsZW5hbWUpCiBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxy
XG5cclxuJykKIAotdHJ5OgotICAgIGZpbGUgPSBvcGVuKHRtcEZpbGUsICd3JykKLSAgICBmaWxl
LndyaXRlKGRhdGEpCi0gICAgZmlsZS5jbG9zZSgpCi1leGNlcHQ6Ci0gICAgc3lzLnN0ZG91dC53
cml0ZShmJ0ZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiB7dG1wRmlsZX1cbicpCi0gICAg
c3lzLmV4aXQoMCkKK3dpdGggb3Blbih0bXBfZmlsZSwgJ3cnKSBhcyBvcGVuX2ZpbGU6CisgICAg
b3Blbl9maWxlLndyaXRlKGRhdGEpCiAKLXN5cy5zdGRvdXQud3JpdGUoZid7dG1wRmlsZX1cbicp
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorc3lzLnN0ZG91dC53cml0ZSh0bXBfZmlsZSkK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZy
YW1lLW9wdGlvbnMtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93Lmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUt
b3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAkocmV2aXNpb24gMjc2MTM3
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJh
bWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMTAsNiArMTAsNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIDwvc2NyaXB0Pgog
PC9oZWFkPgogPGhlYWQ+Ci08aWZyYW1lIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL3Nl
Y3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1mcmFtZS1hbmNl
c3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dpIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9aHR0cCUz
QS8vMTI3LjAuMC4xJTNBODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZy
YW1lLW9wdGlvbnMtZnJhbWUtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93LmNnaSI+PC9pZnJh
bWU+CiA8L2hlYWQ+CiA8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9yZXNvdXJjZXMvYWxsb3ctaWYtb3JpZ2luLnB5CShyZXZp
c2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNl
cy9hbGxvdy1pZi1vcmlnaW4ucHkJKHdvcmtpbmcgY29weSkKQEAgLTMzLDcgKzMzLDEwIEBAIGlm
IGFsbG93Q3JlZHM6CiBpZiBhbGxvd0NhY2hlOgogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NhY2hl
LUNvbnRyb2w6IG1heC1hZ2U9MTAwXHJcbicpCiAKLXN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQt
VHlwZToge31cclxuXHJcbicuZm9ybWF0KGNvbnRlbnRUeXBlKSkKK3N5cy5zdGRvdXQud3JpdGUo
CisgICAgJ0NvbnRlbnQtTGVuZ3RoOiB7fVxyXG4nCisgICAgJ0NvbnRlbnQtVHlwZToge31cclxu
XHJcbicuZm9ybWF0KG9zLnBhdGguZ2V0c2l6ZShvcy5wYXRoLmpvaW4oJy8nLmpvaW4oX19maWxl
X18uc3BsaXQoJy8nKVswOi0xXSksIG5hbWUpKSwgY29udGVudFR5cGUpCispCiBzeXMuc3Rkb3V0
LmZsdXNoKCkKIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oJy8nLmpvaW4oX19maWxlX18uc3BsaXQo
Jy8nKVswOi0xXSksIG5hbWUpLCAncmInKSBhcyBmaWxlOgogICAgIHN5cy5zdGRvdXQuYnVmZmVy
LndyaXRlKGZpbGUucmVhZCgpKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc3dpcGUvc3dpcGUtYmFjay13aXRoLW91dHN0YW5kaW5nLWxv
YWQtY2FuY2VsbGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24uaHRt
bAkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9zd2lw
ZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24uaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNTEsNyArNTEsNyBAQCB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkgewogICAg
ICAgICByZXR1cm47CiAgICAgfQogCi0gICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBpc0Zp
cnN0UGFnZSgpID8gImZpcnN0IiA6ICI8aWZyYW1lIHNyYz0nL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocCc+IjsKKyAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGlzRmlyc3RQYWdlKCkgPyAi
Zmlyc3QiIDogIjxpZnJhbWUgc3JjPScvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHknPiI7CiAKICAg
ICBpZiAoaXNGaXJzdFBhZ2UoKSkgewogICAgICAgICBpZiAoaGFzSW5pdGlhbGl6ZWRTd2lwZVRl
c3QoKSkgewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0
ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwJKHJl
dmlzaW9uIDI3NjEzNykKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
c3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNyw3ICsx
Nyw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQo
c3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3Bl
bigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9eG1saHR0cHJl
cXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0
ZXItbmV0d29yay1lcnJvciZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29u
bmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCkBAIC0zNCw3ICszNCw3IEBA
IGZ1bmN0aW9uIG9uUmVhZHlTdGF0ZUNoYW5nZSgpCiBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7
CiB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiB4aHIub25yZWFkeXN0YXRlY2hhbmdl
ID0gb25SZWFkeVN0YXRlQ2hhbmdlOwoteGhyLm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmst
ZXJyb3ImcGF0aD0vJywgdHJ1ZSk7Cit4aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVy
cm9yJnBhdGg9LycsIHRydWUpOwogeGhyLnNlbmQobnVsbCk7CiAKIDwvc2NyaXB0PgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNv
bnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLWludmFsaWRhdGlvbi5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3Mt
Y29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtaW52YWxpZGF0aW9uLnB5CShyZXZpc2lvbiAy
NzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNl
cy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtaW52YWxpZGF0aW9uLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0zNiw3ICszNiw3IEBAIGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVk
JzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAxMFxyXG4nCiAgICAgICAg
ICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ09wdGlvbnNTZW50Jywg
c3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnT3B0aW9uc1NlbnQnKQog
ICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OCw3ICs0OCw3IEBAIGVsaWYgc3RhdGUg
PT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgJ1BBU1M6
IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0ZpcnN0
UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0
UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTYxLDcgKzYxLDcgQEAg
ZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJv
bC1BbGxvdy1IZWFkZXJzOiB4LXdlYmtpdC10ZXN0XHJcbicKICAgICAgICAgICAgICdcclxuJwog
ICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZp
bGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdTZWNvbmRPUFRJT05TU2VudCcpCiAg
ICAgZWxpZiBvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnUFVUJzoKICAgICAg
ICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1P
cmlnaW46IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMFxyXG4nCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVm
bGlnaHQtY2FjaGUtdGltZW91dC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGln
aHQtY2FjaGUtdGltZW91dC5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJl
ZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHkJKHdvcmtpbmcgY29weSkKQEAgLTM3LDcgKzM3LDcgQEAg
aWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9s
LU1heC1BZ2U6IDFcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAgICAg
c2V0X3N0YXRlKCdPcHRpb25zU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0
YXRlRmlsZSwgJ09wdGlvbnNTZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAt
NDksNyArNDksNyBAQCBlbGlmIHN0YXRlID09ICdPcHRpb25zU2VudCc6CiAgICAgICAgICAgICAn
XHJcbicKICAgICAgICAgICAgICdQQVNTOiBGaXJzdCBQVVQgcmVxdWVzdC4nCiAgICAgICAgICkK
LSAgICAgICAgc2V0X3N0YXRlKCdGaXJzdFBVVFNlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNl
dF9zdGF0ZShzdGF0ZUZpbGUsICdGaXJzdFBVVFNlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZh
aWwoKQogCkBAIC02Myw3ICs2Myw3IEBAIGVsaWYgc3RhdGUgPT0gJ0ZpcnN0UFVUU2VudCc6CiAg
ICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMVxyXG4nCiAgICAgICAgICAgICAn
XHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ1NlY29uZE9QVElPTlNTZW50Jywg
c3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnU2Vjb25kT1BUSU9OU1Nl
bnQnKQogICAgIGVsaWYgb3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfTUVUSE9EJykgPT0gJ1BVVCc6
CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wt
QWxsb3ctT3JpZ2luOiBodHRwOi8vMTI3LjAuMC4xOjgwMDBcclxuJwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFz
aWMtcHJlZmxpZ2h0LWNhY2hlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdo
dC1jYWNoZS5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNh
Y2hlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNyw3ICszNyw3IEBAIGlmIHN0YXRlID09ICdVbmlu
aXRpYWxpemVkJzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAxMFxyXG4n
CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ09wdGlv
bnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnT3B0aW9u
c1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OSw3ICs0OSw3IEBAIGVs
aWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAg
ICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAgICAgICBzZXRfc3Rh
dGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmls
ZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTY5LDcg
KzY5LDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAgICAgICAgICdBY2Nl
c3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzOiB4LXdlYmtpdC10ZXN0XHJcbicKICAgICAgICAgICAg
ICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRkFJTFNlY29uZE9QVElPTlNT
ZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJTFNlY29u
ZE9QVElPTlNTZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wt
cHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1k
ZW5pZWQteHNyZi5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmll
ZC14c3JmLnB5CSh3b3JraW5nIGNvcHkpCkBAIC01Myw3ICs1Myw3IEBAIGVsaWYgc3RhdGUgPT0g
J1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAnRkFJTDog
VGhpcyByZXF1ZXN0IHNob3VsZCBub3QgYmUgZGlzcGxheWVkXG4nCiAgICAgICAgICkKLSAgICAg
ICAgc2V0X3N0YXRlKCdEZW5pZWQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0
ZUZpbGUsICdEZW5pZWQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoc3RhdGUpCiAKQEAgLTY3
LDcgKzY3LDcgQEAgZWxpZiBzdGF0ZSA9PSAnRGVuaWVkJzoKICAgICAgICAgICAgICdQQVNTOiBS
ZXF1ZXN0IHN1Y2Nlc3NmdWxseSBibG9ja2VkLlxuJwogICAgICAgICApCiAgICAgZWxzZToKLSAg
ICAgICAgc2V0X3N0YXRlKCdEZW55IElnbm9yZWQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9z
dGF0ZShzdGF0ZUZpbGUsICdEZW55IElnbm9yZWQnKQogICAgICAgICBmYWlsKHN0YXRlKQogCiBl
bGlmIHN0YXRlID09ICdEZW55IElnbm9yZWQnOgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8tY3VzdG9tLWhlYWRlci5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1j
dXN0b20taGVhZGVyLnB5CShyZXZpc2lvbiAyNzYxMzcpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBAIHN0YXRlRmlsZSA9IG9zLnBhdGguam9pbih0ZW1wZmls
ZS5nZXR0ZW0KIAogaWYgb3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfTUVUSE9EJykgPT0gJ09QVElP
TlMnOgogICAgIGlmIG9zLmVudmlyb24uZ2V0KCdIVFRQX1hfQ1VTVE9NX0hFQURFUicpOgotICAg
ICAgICBzZXRfc3RhdGUoJ0ZBSUwnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0
ZUZpbGUsICdGQUlMJykKICAgICBlbHNlOgotICAgICAgICBzZXRfc3RhdGUoJ1BBU1MnLCBzdGF0
ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdQQVNTJykKIGVsc2U6CiAgICAg
aWYgb3MuZW52aXJvbi5nZXQoJ0hUVFBfWF9DVVNUT01fSEVBREVSJyk6CiAgICAgICAgIHN5cy5z
dGRvdXQud3JpdGUoZ2V0X3N0YXRlKHN0YXRlRmlsZSwgZGVmYXVsdD0nRkFJTCcpKQpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJlY3Qt
Y3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlw
bWluZS5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0zNywxMyArMzcsMTMgQEAgaWYgbWV0aG9kID09ICdPUFRJT05TJzoK
IAogIyBPbmx5IGFsbG93IHNpbXBsZSBjcm9zcy1zaXRlIHJlcXVlc3RzIC0gc2luY2Ugd2UgZGlk
IG5vdCBhbGxvdyBwcmVmbGlnaHQsIHRoaXMgaXMgYWxsIHdlIHNob3VsZCBldmVyIGdldC4KIGlm
IG1ldGhvZCBub3QgaW4gWydHRVQnLCAnSEVBRCcsICdQT1NUJ106Ci0gICAgc2V0X3N0YXRlKCdG
QUlMLiBOb24tc2ltcGxlIG1ldGhvZCB7fS4nLmZvcm1hdChtZXRob2QpLCBzdGF0ZUZpbGUpCisg
ICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwuIE5vbi1zaW1wbGUgbWV0aG9kIHt9LicuZm9y
bWF0KG1ldGhvZCkpCiAgICAgc3lzLmV4aXQoMCkKIAogaWYgY29udGVudCBhbmQgbm90IHJlLm1h
dGNoKHInXmFwcGxpY2F0aW9uXC94XC13d3dcLWZvcm1cLXVybGVuY29kZWQoOy4rKT8kJywgY29u
dGVudFR5cGUpIFwKICAgICBhbmQgbm90IHJlLm1hdGNoKHInXm11bHRpcGFydFwvZm9ybVwtZGF0
YSg7LispPyQnLCBjb250ZW50VHlwZSkgXAogICAgIGFuZCBub3QgcmUubWF0Y2gocidedGV4dFwv
cGxhaW4oOy4rKT8kJywgY29udGVudFR5cGUpOgotICAgIHNldF9zdGF0ZSgnRkFJTC4gTm9uLXNp
bXBsZSBjb250ZW50IHR5cGU6IHt9LicuZm9ybWF0KGNvbnRlbnRUeXBlKSwgc3RhdGVGaWxlKQor
ICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMLiBOb24tc2ltcGxlIGNvbnRlbnQgdHlwZTog
e30uJy5mb3JtYXQoY29udGVudFR5cGUpKQogCiBpZiBvcy5lbnZpcm9uLmdldCgnSFRUUF9YX1dF
QktJVF9URVNUJyk6Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBDdXN0b20gaGVhZGVyIHNlbnQgd2l0
aCBhIHNpbXBsZSByZXF1ZXN0LicsIHN0YXRlRmlsZSkKKyAgICBzZXRfc3RhdGUoc3RhdGVGaWxl
LCAnRkFJTC4gQ3VzdG9tIGhlYWRlciBzZW50IHdpdGggYSBzaW1wbGUgcmVxdWVzdC4nKQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1i
ZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1cmVzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlbWVtYmVyLWJhZC1wYXNz
d29yZC9jb3VudC1mYWlsdXJlcy5weQkocmV2aXNpb24gMjc2MTM3KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3Jk
L2NvdW50LWZhaWx1cmVzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNiw3ICszNiw3IEBAIGlmIGNv
bW1hbmQ6CiAgICAgaWYgY29tbWFuZCA9PSAnc3RhdHVzJzoKICAgICAgICAgc3lzLnN0ZG91dC53
cml0ZShnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpCiAgICAgZWxpZiBjb21tYW5k
ID09ICdyZXNldCc6Ci0gICAgICAgIHN5cy5zdGRvdXQud3JpdGUoc2V0X3N0YXRlKCcwJywgc3Rh
dGVGaWxlKSkKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZShzZXRfc3RhdGUoc3RhdGVGaWxlLCAn
MCcpKQogICAgIHN5cy5leGl0KDApCiAKIGNyZWRlbnRpYWxzID0gYmFzZTY0LmI2NGRlY29kZShv
cy5lbnZpcm9uLmdldCgnSFRUUF9BVVRIT1JJWkFUSU9OJywgJyBPZz09Jykuc3BsaXQoJyAnKVsx
XSkuZGVjb2RlKCkuc3BsaXQoJzonKQpAQCAtNTcsNCArNTcsNCBAQCBlbHNlOgogICAgICAgICAn
QXV0aGVudGljYXRpb24gY2FuY2VsZWQnCiAgICAgKQogICAgIGlmIHVzZXJuYW1lOgotICAgICAg
ICBzZXRfc3RhdGUoc3RyKGludChnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpICsg
MSksIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgc3RyKGludChnZXRf
c3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpICsgMSkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426448</attachid>
            <date>2021-04-19 11:31:14 -0700</date>
            <delta_ts>2021-04-19 17:26:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210419133113.patch</filename>
            <type>text/plain</type>
            <size>146257</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjI2NSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNC0xOSAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzY3MjcwNTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24taHRtbC54
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5
OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlm
ZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
Y2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1m
cmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFn
ZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0
ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1h
Z2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1
ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1hbmQpOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1l
eHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJh
c2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25z
ZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZl
dGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUt
cmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9w
dGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5
LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUt
c2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2Vz
L2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9pbWFn
ZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL3dl
YnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzOgor
ICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6CisgICAg
ICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9s
b2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9h
ZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRf
b25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMtYXV0aC5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGg6
IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
cmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA6IFJlbW92ZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weTogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAgICAoZ2Vu
ZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBlKToKKyAg
ICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0ZV9yZXNv
dXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3Vu
dF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCk6
CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAg
KGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRsZV9sb2df
cmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFi
aWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0
LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy90b3Vj
aC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy93cml0
ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlmLW9yaWdp
bi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFu
ZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1p
bnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHk6Cisg
ICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRy
b2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5w
eToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0
b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weToKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQt
ZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1h
ZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEtMDQtMTkgIE1hbnVlbCBSZWdvIENhc2Fz
bm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gU2NyaXB0IGZv
Y3VzIGFuZCA6Zm9jdXMtdmlzaWJsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9mYWxsYmFjay5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvZmFsbGJhY2suaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3
ICsyMSw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHRyeSB7
CiAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1m
YWxsYmFjayZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBm
YWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25u
ZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICAgICAgcmVxLnNlbmQoIiIpOwogICAg
IH0gY2F0Y2ggKGV4KSB7CiAgICAgICAgIGxvZygiQ2Fubm90IGFjY2VzcyBuZXR3b3JrIHNpbXVs
YXRvciBVUkwiKTsKQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rpb24gbG9hZCh1cmwpCiAgICAgfQog
fQogCi12YXIgdGVzdFVSTCA9ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2FjaGUu
dHh0IjsKK3ZhciB0ZXN0VVJMID0gIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVz
dD1hcHBjYWNoZS1mYWxsYmFjayZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hl
LnR4dCI7CiB2YXIgbm9uZXhpc3RlbnRVUkwgPSAicmVzb3VyY2VzL2RvZXMtbm90LWV4aXN0IjsK
IHZhciByZWRpcmVjdFVSTCA9ICJyZXNvdXJjZXMvZmFsbGJhY2stcmVkaXJlY3QucHkiOwogCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtZmFsbGJh
Y2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmst
ZXJyb3ItY3Jhc2guaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNy
YXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsNyArNSw3IEBACiA8ZGl2PiAgICAgICAgQmVm
b3JlIHlvdSBjbGljayB0aGUgbGluayB0aGF0IHRlc3RzIHRoZSBhcHBjYWNoZSBmYWxsYmFjaywg
cGxlYXNlIG1ha2Ugc3VyZSB0aGUgc2VydmVyIGlzIGRvd24gb3IgZGlzY29ubmVjdCB5b3VyIGRl
dmljZSBmcm9tIGFueSBkYXRhIGNvbm5lY3Rpb24gc28gdGhlIGNvbm5lY3Rpb24gcmVxdWVzdCB0
byB0aGUgc2VydmVyIHdpbGwgZmFpbC4KIDwvZGl2PgogCi08YSBpZD0gIkxpbmsiIGhyZWY9Ii9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJj
ZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRvZXMtbm90LWV4aXN0IiA+
IGNsaWNrIHRoaXMgbGluayB3aGVuIHRoZSBzZXJ2ZXIgaXMgZG93biBvciB0aGUgY2xpZW50IGRl
dmljZSBkb2Vzbid0IGhhdmUgYSBkYXRhIGNvbm5lY3Rpb24sIHRoaXMgd2lsbCB2ZXJpZnkgaWYg
dGhlIGZhbGxiYWNrIHdpbGwgY2F1c2UgdGhlIGNyYXNoLiA8L2E+Cis8YSBpZD0gIkxpbmsiIGhy
ZWY9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhp
c3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhlIHNlcnZlciBpcyBkb3duIG9yIHRoZSBjbGll
bnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEgY29ubmVjdGlvbiwgdGhpcyB3aWxsIHZlcmlm
eSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0aGUgY3Jhc2guIDwvYT4KIAogCiA8c2NyaXB0
PgpAQCAtMTMsNyArMTMsNyBAQAogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7
CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwg
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNv
dXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5kPSIgKyAoc3RhdGUg
PyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIs
ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNv
dXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZjb21tYW5kPSIgKyAoc3RhdGUg
PyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwog
fQogCkBAIC0yNiw3ICsyNiw3IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKQogewogICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7Ci0gICAg
ICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNo
JnBhdGg9ZG9lcy1ub3QtZXhpc3QiOworICAgICAgICB3aW5kb3cubG9jYXRpb249Ii9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxi
YWNrLWZvci1uZXR3b3JrLWVycm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiOwogICAgIH0K
IH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNl
LWhhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L21haW4tcmVzb3VyY2UtaGFzaC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCw3ICsxOCw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0
TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVz
dDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhhc2gmY29tbWFuZD0i
ICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5v
cGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJj
b25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAK
QEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gZnJhbWVDcmVhdGVkKCkKICAgICAgICAgc3RhZ2Ug
PSAxOwogICAgICAgICBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7CiAgICAgICAgIHZhciBpZnIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICAgICAgaWZyLnNldEF0dHJp
YnV0ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3Vy
Y2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5odG1sI2JhciIpOworICAgICAgICBpZnIuc2V0
QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFw
cGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNiYXIiKTsKICAgICAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIGxvZygi
U1VDQ0VTUyIpOwpAQCAtNDMsNyArNDMsNyBAQCB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVz
c2FnZSIsIGZyYW1lCiB2YXIgc3RhZ2UgPSAwOwogc2V0TmV0d29ya0VuYWJsZWQodHJ1ZSk7CiB2
YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Ci1pZnIuc2V0QXR0cmli
dXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNo
ZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJj
ZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZyYW1lLmh0bWwjZm9vIik7CitpZnIuc2V0QXR0cmlidXRl
KCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1h
aW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9t
YWluLXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNmb28iKTsKIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoaWZyKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAkocmV2
aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLXJlZGlyZWN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5l
Y3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFp
bi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlz
Y29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tdWx0aS1mYWxsYmFjay5odG1sCShy
ZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24g
c2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9
IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW11bHRpLWZhbGxiYWNrJmNvbW1h
bmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDog
ImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgiIik7CiAgICAgfSBjYXRj
aCAoZXgpIHsKICAgICAgICAgbG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsgc2ltdWxhdG9yIFVS
TCwgZXggPSAiICsgZXgpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9u
b24taHRtbC54aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNh
Y2hlL25vbi1odG1sLnhodG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEs
NSBAQAogPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiCi0gICAgICBt
YW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1u
b24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0Ij4K
KyAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBw
Y2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5p
ZmVzdCI+CiA8aGVhZD48dGl0bGUvPjwvaGVhZD4KIDxib2R5PgogPHA+VGVzdCB0aGF0IG5vbi1I
VE1MIG1haW4gcmVzb3VyY2VzIHdvcmsgd2l0aCBhcHBsaWNhdGlvbiBjYWNoZSBjb3JyZWN0bHku
PC9wPgpAQCAtMTksMTQgKzE5LDE0IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24g
c2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVx
dWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO2NvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25u
ZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7Y29t
bWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAg
IHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQogewogICAgIHZhciBp
ZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBpZnIuc2V0QXR0cmli
dXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNo
ZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5wbmciKTsKKyAgICBp
ZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvYWJlLnBu
ZyIpOwogICAgIGlmci5vbmxvYWQgPSBmcmFtZUNyZWF0ZWQ7CiAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChpZnIpOwogfQpAQCAtNDMsNyArNDMsNyBAQCBmdW5jdGlvbiBjYWNoZWQoKQog
ICAgIC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGRvZXMgbm90IGV4aXN0IGluIHRoZSBjYWNoZS4K
ICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAg
ICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vdC1pbi1j
YWNoZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKICAgICAgICAgcmVxLnNl
bmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGlmIChlLmNvZGUgPT0gRE9NRXhjZXB0
aW9uLk5FVFdPUktfRVJSKQpAQCAtNTgsNyArNTgsNyBAQCBmdW5jdGlvbiBjYWNoZWQoKQogICAg
IC8vIExvYWQgYSByZXNvdXJjZSB0aGF0IGV4aXN0cyBpbiB0aGUgY2FjaGUuCiAgICAgdHJ5IHsK
ICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICByZXEub3Bl
bigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUt
bm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0IiwgZmFsc2Up
OworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3Np
bXBsZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKCk7CiAgICAgfSBjYXRjaCAoZSkg
ewogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykuaW5uZXJIVE1MID0g
IkZBSUxVUkU6IENvdWxkIG5vdCBsb2FkIGRhdGEgZnJvbSBjYWNoZSIKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWwJKHJl
dmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvb2ZmbGlu
ZS1hY2Nlc3MuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTgsMTQgKzE4LDE0IEBAIGZ1bmN0aW9u
IGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAg
dmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwor
ICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6
ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKIGZ1bmN0aW9u
IGNyZWF0ZUZyYW1lKCkKIHsKICAgICB2YXIgaWZyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
aWZyYW1lIik7Ci0gICAgaWZyLnNldEF0dHJpYnV0ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKKyAgICBpZnIuc2V0QXR0
cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNh
Y2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vz
cy1mcmFtZS5odG1sIik7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogfQog
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3JlbW92ZS1jYWNoZS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVtb3ZlLWNh
Y2hlLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTkxLDcgKzkxLDcgQEAg
ZnVuY3Rpb24gdGVzdDUoKQogZnVuY3Rpb24gcmVzZXRNYW5pZmVzdCgpCiB7CiAgICAgaWYgKGFw
cGxpY2F0aW9uQ2FjaGUuc3RhdHVzICE9IGFwcGxpY2F0aW9uQ2FjaGUuVU5DQUNIRUQgJiYgYXBw
bGljYXRpb25DYWNoZS5zdGF0dXMgIT0gYXBwbGljYXRpb25DYWNoZS5PQlNPTEVURSkgewotICAg
ICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZlc3QsIDEwMCk7CisgICAgICAg
IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgNDAwKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIApAQCAtMTA0LDcgKzEwNCw3IEBAIGFwcGxpY2F0aW9uQ2FjaGUub25ub3Vw
ZGF0ZSA9IHRlc3Q7CiBhcHBsaWNhdGlvbkNhY2hlLm9uY2FjaGVkID0gdGVzdDsKIAogLy8gSWYg
dGhlIG1hbmlmZXN0IHNjcmlwdCBoYXBwZW5lZCB0byBiZSBpbiBhIHdyb25nIHN0YXRlLCByZXNl
dCBpdC4KLXZhciB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZlc3QsIDEwMCk7Cit2
YXIgdGltZW91dElkID0gc2V0VGltZW91dChyZXNldE1hbmlmZXN0LCA0MDApOwogCiA8L3Njcmlw
dD4KIDwvYm9keT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL2ZhaWwtb24tdXBkYXRlLTIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQkocmV2aXNpb24gMjc2
MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1v
bi11cGRhdGUtMi5weQkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNyBAQCBpZiBjb21tYW5k
ID09ICdyZXNldCc6CiAgICAgICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0
LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9
PSAnZGVsZXRlJzoKLSAgICBzZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRf
c3RhdGUodG1wX2ZpbGUsICdEZWxldGVkJykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQn
OgogICAgIHN5cy5zdGRvdXQud3JpdGUoCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQkocmV2
aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJj
ZXMvZmFpbC1vbi11cGRhdGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAgaWYg
Y29tbWFuZCA9PSAncmVzZXQnOgogICAgICAgICBvcy5yZW1vdmUodG1wX2ZpbGUpCiAgICAgc3lz
LnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIGNv
bW1hbmQgPT0gJ2RlbGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxldGVkJywgdG1wX2ZpbGUpCisg
ICAgc2V0X3N0YXRlKHRtcF9maWxlLCAnRGVsZXRlZCcpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgn
Q29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIHN0YXRlID09ICdVbmluaXRp
YWxpemVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZlc3QKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZl
c3QJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBA
QAogQ0FDSEUgTUFOSUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/IHNpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/IHNpbXBs
ZS50eHQKIGZhbGxiYWNrLXJlZGlyZWN0IHNpbXBsZS50eHQKIGRvZXMtbm90LWV4aXN0IHNpbXBs
ZS50eHQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2Vz
L21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkJKHJldmlzaW9uIDI3NjI2MSkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVk
aXJlY3QtZnJhbWUucHkJKHdvcmtpbmcgY29weSkKQEAgLTQsNiArNCw2IEBAIGltcG9ydCBzeXMK
IAogc3lzLnN0ZG91dC53cml0ZSgKICAgICAnc3RhdHVzOiAzMDJcclxuJwotICAgICdMb2NhdGlv
bjogaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sXHJc
bicKKyAgICAnTG9jYXRpb246IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2Ut
cmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3Qt
ZnJhbWUtMi5odG1sXHJcbicKICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicK
ICkKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0Lm1hbmlmZXN0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJl
Y3QubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiBDQUNIRSBNQU5JRkVT
VAotaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sCito
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JnBhdGg9L2FwcGNh
Y2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIuaHRtbAogTkVUV09S
SzoKLWh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1h
bmQKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFu
ZApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGkt
ZmFsbGJhY2subWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QJKHJldmlzaW9uIDI3NjI2
MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL211bHRpLWZh
bGxiYWNrLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogQ0FDSEUgTUFO
SUZFU1QKIEZBTExCQUNLOgotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/IHNpbXBs
ZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/IHNpbXBsZS50eHQKIGRvZXMt
bm90IGVtcHR5LnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxlLnR4dApJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0
bWwubWFuaWZlc3QJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDggKzEsOCBAQAogQ0FDSEUgTUFOSUZFU1QKIC9hcHBjYWNoZS9ub24taHRtbC54aHRtbAotL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMv
YWJlLnBuZwotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1u
b24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QKKy9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9h
cHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUu
cG5nCisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0
bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0CiBORVRXT1JLOgog
L2Zhdmljb24uaWNvCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNh
Y2hlLW5vbi1odG1sJmNvbW1hbmQ9CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1h
Y2Nlc3MtZnJhbWUuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNh
Y2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdCI+Cis8aHRtbCBtYW5pZmVzdD0i
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNj
ZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdCI+CiA8
ZGl2IGlkPXJlc3VsdD48L2Rpdj4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2cobWVzc2FnZSkKQEAg
LTExLDcgKzExLDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbnByb2dyZXNzID0gZnVuY3Rpb24oKQog
YXBwbGljYXRpb25DYWNoZS5vbnVwZGF0ZXJlYWR5ID0gZnVuY3Rpb24oKSB7IGxvZygidXBkYXRl
cmVhZHkiKSB9CiBhcHBsaWNhdGlvbkNhY2hlLm9ub2Jzb2xldGUgPSBmdW5jdGlvbigpIHsgbG9n
KCJvYnNvbGV0ZSIpIH0KIDwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nl
c3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzIj48L3NjcmlwdD4K
IDxzY3JpcHQ+CiAKIGFwcGxpY2F0aW9uQ2FjaGUub25jYWNoZWQgPSBmdW5jdGlvbigpIHsgbG9n
KCJjYWNoZWQiKTsgdGVzdCgpIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCShyZXZpc2lv
biAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy5qcwkod29ya2luZyBjb3B5KQpAQCAtNiw3ICs2LDcgQEAgZnVuY3Rpb24g
dGVzdCgpCiAKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0
OwotICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0IiwgZmFsc2UpOwogICAgICAgICByZXEuc2Vu
ZChudWxsKTsKICAgICAgICAgaWYgKHJlcS5yZXNwb25zZVRleHQgPT0gIkhlbGxvLCBXb3JsZCEi
KQogICAgICAgICAgICAgcGFyZW50LnBvc3RNZXNzYWdlKCJkb25lIiwgIioiKTsKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1h
bmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVz
b3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5p
ZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIENBQ0hFIE1BTklGRVNUCi0vcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNz
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCi0vcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNz
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAotL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZw
YXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAotL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMv
b2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1w
bGUudHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2Zm
bGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2Fj
aGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvcmVtb3ZlLWNhY2hlLnB5CShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTI4LDE0ICsyOCwxNCBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAgICAgIG9z
LnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRl
eHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBzZXRfc3Rh
dGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdEZWxldGVk
JykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxu
JykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQud3JpdGUo
CiAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQvY2FjaGUtbWFuaWZlc3RcclxuXHJcbicKICAg
ICAgICAgJ0NBQ0hFIE1BTklGRVNUXG4nCiAgICAgICAgICdORVRXT1JLOlxuJwotICAgICAgICAn
cmVtb3ZlLWNhY2hlLnB5P2NvbW1hbmQ9XG4iJworICAgICAgICAncmVtb3ZlLWNhY2hlLnB5P2Nv
bW1hbmQ9XG4nCiAgICAgKQogZWxpZiBzdGF0ZSA9PSAnRGVsZXRlZCc6CiAgICAgc3lzLnN0ZG91
dC53cml0ZSgKQEAgLTQzLDQgKzQzLDQgQEAgZWxpZiBzdGF0ZSA9PSAnRGVsZXRlZCc6CiAgICAg
ICAgICdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJwogICAgICkKIGVsc2U6Ci0gICAg
c3lzLnN0b2R1dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQorICAgIHN5cy5zdG9kdXQud3JpdGUoJ0NvbnRlbnQtVHlw
ZTogdGV4dC9odG1sXHJcblxyXG4nKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNo
ZS9uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRh
dGlvbi5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nh
Y2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xNiw3ICsxNiw3IEBAIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewog
ICAgIGxvZyhzdGF0ZSA/ICJFbmFibGluZyBuZXR3b3JrIiA6ICJEaXNhYmxpbmcgbmV0d29yayIp
OwogICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIs
ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLW5ldHdvcmstZXJy
b3ItZHVyaW5nLXJldmFsaWRhdGlvbiZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxp
ZGF0aW9uJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZh
bHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllci5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRl
bnRpZmllci5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhY2hlL3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMTEsNyArMTEsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICB0cnkgewogICAgICAg
ICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICAgICAg
cmVxLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIm
Y29tbWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIs
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPSIgKyBjbWQs
IGZhbHNlKTsKICAgICAgICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgICAgICAg
ICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgIH0gY2F0Y2ggKGV4KSB7CkBA
IC00MSwxOCArNDEsMTggQEAKICAgCiAgICAgPHN0eWxlPgogICAgICAgICBkaXYgewotICAgICAg
ICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50
LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4u
anBnI2RpdicpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3Vi
cmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CiAgICAgICAgIH0KICAgICAgICAgcCB7Ci0gICAg
ICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21l
bnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVy
bi5qcGcjcCcpOworICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3Vi
cmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9YmdfcGF0dGVybi5qcGcjcCcpOwogICAgICAgICB9CiAgICAgPC9zdHlsZT4KIAogPC9o
ZWFkPgogPGJvZHk+CiAgICAgPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4
OyI+PC9kaXY+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRl
bnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcj
aW1nMSI+Ci0gICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRp
ZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1n
MiI+CisgICAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVy
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcxIj4K
KyAgICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzIiPgogICAg
IAogICBUZXN0IHRoYXQgcmVzb3VyY2VzIHdpdGggZnJhZ21lbnQgaWRlbnRpZmllcnMgYXJlIGxv
YWRlZCBvbmx5IG9uY2UuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVz
b3VyY2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3VyY2VzL25ldHdvcmst
ZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9uZXR3b3JrLWVycm9yLWR1
cmluZy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSArMSBAQAot
PGltZyBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtbmV0
d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVzb3VyY2VzL2NvbXBh
c3MuanBnJmFsbG93LWNhY2hpbmc9MSI+Cis8aW1nIHNyYz0iL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbiZw
YXRoPS9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyZhbGxvdy1jYWNoaW5nPTEiPgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZp
Z2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdh
dGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkocmV2aXNpb24gMjc2MjYxKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1u
YXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIGF3YWl0IHNl
dENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjYiLCB7IlNhbWVTaXRlIjogbnVsbCwgIk1heC1B
Z2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJzdHJpY3QtYmVj
YXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjYiLCB7IlNhbWVTaXRlIjogImludmFsaWQi
LCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoImxh
eCIsICI2IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9
KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAv
Y29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0Rm
ZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5weSI7Cisg
ICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvY29va2ll
cy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVybGluay5weSUzRmhyZWYlM0RmZXRjaC1h
ZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5weSI7CiB9CiBydW5U
ZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9z
YW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20t
aWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2
aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAko
cmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUt
c2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJh
bWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEs
NyBAQCBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBhd2FpdCBzZXRDb29raWUoImltcGxp
Y2l0LXN0cmljdCIsICI0IiwgeyJTYW1lU2l0ZSI6IG51bGwsICJNYXgtQWdlIjogMTAwLCAicGF0
aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgic3RyaWN0LWJlY2F1c2UtaW52YWxpZC1T
YW1lU2l0ZS12YWx1ZSIsICI0IiwgeyJTYW1lU2l0ZSI6ICJpbnZhbGlkIiwgIk1heC1BZ2UiOiAx
MDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJsYXgiLCAiNCIsIHsiU2Ft
ZVNpdGUiOiAiTGF4IiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7Ci0gICAgd2luZG93
LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlm
cmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nvb2tpZXMvc2FtZS1z
aXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0Y2gtYWZ0ZXItdG9w
LWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1w
YWdlLnB5JTI2dGFyZ2V0JTNEX3RvcCI7CisgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0
cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHAl
M0EvLzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5
cGVybGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0
aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0YXJnZXQlM0RfdG9w
IjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRj
aC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2lu
LWlmcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0
aW9uIHJ1blRlc3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjMi
LCB7IlNhbWVTaXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAg
YXdhaXQgc2V0Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwg
IjMiLCB7IlNhbWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9
KTsKICAgICBhd2FpdCBzZXRDb29raWUoImxheCIsICIzIiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAi
TWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3Jj
PWh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvZmV0Y2gt
aW4tY3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sIjsKKyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9
aHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nvb2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9mZXRjaC1p
bi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwiOwogfQogcnVuVGVzdCgpOwogPC9zY3JpcHQ+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3JkZXItaW1hZ2UtbG9hZGluZy5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2JvcmRlci1pbWFnZS1s
b2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzks
MTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAw
cHg7Ci0gICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOwor
ICAgICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMS5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOwogICAgIH0K
ICAgICAKICAgICAuYm9yZGVyZWQgewotICAgICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxv
YWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBnIikgMTAg
MTAgMTAgMTAgc3RyZXRjaDsKKyAgICAgIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxvYWRpbmcm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJvcmRlcjIuanBnIikgMTAgMTAgMTAg
MTAgc3RyZXRjaDsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3
NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1sb2FkaW5nLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMjYgKzksMjYgQEAKICAgICAuYm94IHsKICAgICAgIGhl
aWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICBiYWNrZ3JvdW5kLWltYWdl
OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFn
ZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5kMS5q
cGciKTsKKyAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDEuanBnIik7CiAgICAgfQogICAgIAogICAgIC5iYWNr
Z3JvdW5kIHsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOworICAgICAgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1p
bWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5k
Mi5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLmNvbnRlbnQgewotICAgICAgY29udGVudDogdXJs
KCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9h
ZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTEuanBn
Iik7CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPWNvbnRlbnQtaW1hZ2UxLmpwZyIpOwogICAgIH0KIAogICAgIC50ZXN0IHsKLSAgICAgIGNv
bnRlbnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3Nz
LWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQt
aW1hZ2UyLmpwZyIpICJmb29weSIgdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9Y29udGVudC1pbWFnZTMuanBnIik7CisgICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UyLmpwZyIpICJmb29weSIg
dXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1pbWFnZS1s
b2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMy5q
cGciKTsKICAgICB9CiAgICAgCiAgICAgdWwgewotICAgICAgbGlzdC1zdHlsZS1pbWFnZTogdXJs
KCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9h
ZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTEuanBnIik7
CisgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPWxpc3QtaW1hZ2UxLmpwZyIpOwogICAgIH0KICAgICAubGlzdCB7Ci0gICAgICBs
aXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1saXN0LWltYWdlMi5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTIuanBnIik7CiAgICAgfQog
ICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWlt
YWdlLXZhbHVlZC1zaGFwZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL2Nzcy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1zaGFwZS5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICAgICAgICBmbG9hdDogbGVmdDsKICAgICAg
ICAgd2lkdGg6IDIwMHB4OwogICAgICAgICBoZWlnaHQ6IDIwMHB4OwotICAgICAgICAtd2Via2l0
LXNoYXBlLW91dHNpZGU6IHVybCgiL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHA/bmFtZT1z
cXVhcmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZvcj0xIik7CisgICAgICAgIC13ZWJraXQtc2hh
cGUtb3V0c2lkZTogdXJsKCIvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9c3F1YXJl
MTAwLnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MSIpOwogICAgIH0KIDwvc3R5bGU+CiA8L2hlYWQ+
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Utc3JjLWxvYWRpbmcu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDcgKzI2LDcgQEAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewogICAgICAgICBpZiAoeGhyLnJlYWR5
U3RhdGUgPT0geGhyLkRPTkUpCiAgICAgICAgICAgICBmb3JjZVN0eWxlU2VsZWN0b3JSZWNyZWF0
aW9uKCk7CiAgICAgfTsKLSAgICB4aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMvcmVzZXQtdGVt
cC1maWxlLnBocD8nICsgZmlsZW5hbWUsIHRydWUpOworICAgIHhoci5vcGVuKCdHRVQnLCAnL3Jl
c291cmNlcy9yZXNldC10ZW1wLWZpbGUucHk/JyArIGZpbGVuYW1lLCB0cnVlKTsKICAgICB4aHIu
c2VuZCgpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdl
LWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9t
YXNrLWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jc3MvbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTksMTEgKzksMTEgQEAKICAgICAuYm94IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3
aWR0aDogMTAwcHg7Ci0gICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBnIik7CisgICAgICAtd2Via2l0
LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVz
dD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tYXNrMS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLm1hc2tlZCB7Ci0gICAgICAtd2Via2l0
LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWFzazIuanBnIik7CisgICAgICAtd2Via2l0LW1hc2stYm94LWltYWdlOiB1cmwoIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKICAgICB9CiAgICAg
CiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9u
LW1hc2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3
NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFn
ZS1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksMTEgKzksMTEgQEAKICAgICAuYm94
IHsKICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAtd2Vi
a2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOworICAgICAgLXdlYmtpdC1ib3gt
cmVmbGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAgICAKICAgICAucmVmbGVjdGVk
IHsKLSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEwcHggdXJsKCIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2UtbG9h
ZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CisgICAg
ICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2staW1hZ2UtbG9hZGluZyZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CiAgICAgfQogICAgIAog
ICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxp
Z24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0
ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdl
LWxvYWQtMi1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQAogPHNj
cmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7Cisg
ICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sCShyZXZpc2lv
biAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1i
YXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTUsNyAr
MTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0
YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdl
KCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2Vs
aW5lLWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdl
LWxvYWQtMy1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMt
ZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKIDxzY3JpcHQ+CiAg
ICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgICAgICBy
ZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHki
OwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2Fk
LTMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNh
bC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAkocmV2aXNpb24gMjc2MjYx
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUt
YWZ0ZXItaW1hZ2UtbG9hZC0zLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDcgQEAK
IDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAi
OworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRl
ci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC1leHBl
Y3RlZC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0aW9uIGxv
YWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAgICAg
CiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
c3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0
aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9
CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9nZ2luZy5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVzdC1sb2dnaW5nLmpzCShyZXZp
c2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVx
dWVzdC1sb2dnaW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBAQCB2YXIgUmVzb3Vy
Y2VMb2dnaW5nID0gewogICAgIHsKICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgIHZhciByZXEg
PSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9IiArIHRoaXMudGVzdE5hbWUgKyAiJmNv
bW1hbmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9IiArIHRoaXMudGVzdE5hbWUgKyAiJmNv
bW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgcmVxLnNlbmQobnVsbCk7CiAgICAg
ICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICAgfSBjYXRjaCAoZXgpIHsK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVzcG9uc2UtYm9keS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVz
cG9uc2UtYm9keS5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJvZHkuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzQs
NyArMzQsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogCiBwcm9taXNlX3Rlc3QoZnVu
Y3Rpb24odCkgewogICAgIHZhciBjbG9uZTsKLSAgICByZXR1cm4gZmV0Y2goJy9yZXNvdXJjZXMv
ZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAnKS50aGVu
KGZ1bmN0aW9uKHJlcykgeworICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJykudGhlbihmdW5jdGlvbihy
ZXMpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXMuc3RhdHVzLCAyMDApOwogICAgICAgICAv
LyBBbGwgZGF0YSBzaG91bGQgbm90IGJlIGVucXVldWVkIHlldC4KICAgICAgICAgY2xvbmUgPSBy
ZXMuY2xvbmUoKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvc2luZy13
aGlsZS1mZXRjaGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
ZmV0Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb3Npbmctd2hpbGUtZmV0Y2hpbmcuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgICAgICAKIHZhciB0ZXN0ID0gYXN5
bmNfdGVzdCgiRW5zdXJpbmcgdGhhdCBmZXRjaCByZXNwb25zZSBib2R5IHByb21pc2UgaXMgbm90
IGZ1bGZpbGxlZCB3aGVuIHdpbmRvdyBpcyBjbG9zZWQiKTsKIHRlc3Quc3RlcChmdW5jdGlvbigp
IHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBo
cD9pdGVyYXRpb249NSZkZWxheT0xMDAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93
bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTEwMDAiOwogICAgIGZl
dGNoKHVybCkudGhlbih0ZXN0LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAg
ICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKICAgICAgICAgcmVzcG9uc2Uu
dGV4dCgpLnRoZW4odGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24oYnVmZmVyKSB7CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoLWNvcnMtd2l0aC1yZWZlcnJlci5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2gtY29ycy13aXRo
LXJlZmVycmVyLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvZmV0Y2gvZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTksNyArOSw3IEBACiAgIDxib2R5PgogICAgIDxzY3JpcHQ+CiBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24odCkgewotICAgIHZhciB1cmwgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29ycz10cnVl
IjsKKyAgICB2YXIgdXJsID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0xJmRlbGF5PTEmY29ycz10cnVlIjsKICAg
ICByZXR1cm4gZmV0Y2godXJsLCB7Im1vZGUiOiAiY29ycyIsICJyZWZlcnJlciI6ICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVmZXJyZXIifSkudGhlbigocmVzcG9uc2UpID0+IHsKICAgICAgICAg
YXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIpOwogICAgICAgICByZXR1cm4gcmVz
cG9uc2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZlcikgPT4gewpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVy
ZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25z
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDExICsxLDExIEBACiBDT05TT0xFIE1FU1NB
R0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdo
ZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkg
Y2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29u
LXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNo
ZT10cnVlJnRlc3Q9MSBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNT
QUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9
dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3Mu
CiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wt
QWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNT
QUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3Jz
PXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tz
LgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9z
dDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTIm
ZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIGR1ZSB0byBhY2Nlc3Mg
Y29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1c2Ugd2lsZGNhcmQgaW4g
QWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVl
LgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9z
dDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0y
JmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyBkdWUgdG8gYWNjZXNz
IGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQg
aHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0z
IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiBDT05TT0xFIE1FU1NBR0U6IENhbm5vdCB1
c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIHdoZW4gY3JlZGVudGlh
bHMgZmxhZyBpcyB0cnVlLgotQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBBUEkgY2Fubm90IGxvYWQg
aHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9
NCBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgorQ09OU09MRSBNRVNTQUdFOiBGZXRjaCBB
UEkgY2Fubm90IGxvYWQgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0Nh
Y2hlPXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCiAKIFBBU1MgRW5z
dXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVsIHRoZSBzYW1lIHJl
c291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzCiBQQVNTIEVuc3VyZSBjb3JzIGNoZWNrcyB3b3Jr
IHdoZW4gbG9hZGluZyBzdWNjZXNzaXZlbHkgdGhlIHNhbWUgcmVzb3VyY2Ugd2l0aCBkaWZmZXJl
bnQgbW9kZXMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2Ft
ZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlm
ZmVyZW50LW9wdGlvbnMuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlv
bnMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw4ICs5LDggQEAKICAgPGJvZHk+CiAgICAgPHNj
cmlwdD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybDEgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MSI7Ci0g
ICAgdmFyIHVybDIgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dD
YWNoZT10cnVlJnRlc3Q9MiI7CisgICAgdmFyIHVybDEgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAw
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9
MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKKyAgICB2YXIgdXJsMiA9ICJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5w
eT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTIi
OwogICAgIHJldHVybiBQcm9taXNlLmFsbChbCiAgICAgICAgICAgICBmZXRjaCh1cmwxLCB7Im1v
ZGUiOiAibm8tY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMocmVzcG9uc2UudHlwZSwgIm9wYXF1ZSIpOwpAQCAtMzYsOCArMzYsOCBAQCBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewogfSwgJ0Vuc3VyZSBjb3JzIGNoZWNrcyB3b3JrIHdo
ZW4gbG9hZGluZyBpbiBwYXJhbGxlbCB0aGUgc2FtZSByZXNvdXJjZSB3aXRoIGRpZmZlcmVudCBt
b2RlcycpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB1cmwzID0gImh0
dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBo
cD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMi
OwotICAgIHZhciB1cmw0ID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFs
bG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOworICAgIHZhciB1cmwzID0gImh0dHA6Ly9sb2NhbGhvc3Q6
ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRl
bGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7CisgICAgdmFyIHVybDQg
PSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVs
YXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVz
dD00IjsKICAgICByZXR1cm4gZmV0Y2godXJsMywgeyJtb2RlIjogImNvcnMifSkudGhlbigocmVz
cG9uc2UpID0+IHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBlLCAiY29ycyIp
OwogICAgICAgICByZXR1cm4gcmVzcG9uc2UuYXJyYXlCdWZmZXIoKS50aGVuKChhcnJheUJ1ZmZl
cikgPT4gewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2Ut
Ym9keS13aGlsZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9u
IDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZ2V0LXJlc3BvbnNlLWJv
ZHktd2hpbGUtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3ICsxMyw3IEBACiAg
ICAgPHNjcmlwdD4KIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAi
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5
PTIwMCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5weT9pdGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5nRmxhZyA9IGZhbHNl
OwogICAgIHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAg
ICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBAIC0yNyw3ICsyNyw3IEBA
IHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNhbGxpbmcgUmVzcG9uc2Uu
dGV4dCgpIHdoZW4gc3RpbGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rp
b24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMv
ZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAg
dmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5j
dGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywg
MjAwKTsKQEAgLTQxLDcgKzQxLDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRl
c3RpbmcgY2FsbGluZyBSZXNwb25zZS5hcnJheUJ1ZmZlcigpIHdoZW4gc3RpbGwgZmV0Y2hpbmcg
ZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAw
IjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5
P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAg
ICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBh
c3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKQEAgLTU1LDcgKzU1LDcgQEAgcHJv
bWlzZV90ZXN0KGZ1bmN0aW9uKCkgewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS5ibG9i
KCkgd2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbigp
IHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBo
cD9pdGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3du
bG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKICAgICB2YXIg
bG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9u
KHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCAyMDAp
OwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVjb2RlLXNsb3ctbG9hZC1z
dGF0aWMtaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYyNjEp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRp
Yy1pbWFnZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQAogICAgIDxkaXY+PC9k
aXY+CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWRJbWFnZVNvdXJjZVVS
TCgpIHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiCiAgICAgICAgICAgICAgICAgICsg
Ij9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy8xMDB4MTAwLXJlZC5wc2QiIAog
ICAgICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZ2bmQuYWRvYmUucGhvdG9zaG9w
IgogICAgICAgICAgICAgICAgICArICImc3RhbGxBdD0xMDI0IjsKQEAgLTEzLDcgKzEzLDcgQEAK
ICAgICAgICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHJlc29sdmVkSW1hZ2VTb3VyY2VVUkwoKSB7
Ci0gICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9h
ZC1hbmQtc3RhbGwucGhwIgorICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IgogICAgICAgICAgICAgICAgICArICI/bmFt
ZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmciIAogICAg
ICAgICAgICAgICAgICArICImbWltZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAgICAgICAgICAgICAg
ICsgIiZzdGFsbEF0PTEwMjQiOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMv
ZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2Ut
aW1hZ2UuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9p
bWFnZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIC8vIFRoZSBtYXhpbXVtIGJ1ZmZlcmluZyBp
bnRlcnZhbCBmb3IgSW1hZ2VSZXNvdXJjZSBpcyA1MDBtcy4gQ2hvb3NlIHN0YWxsRm9yCiAgICAg
ICAgIC8vIHN1Y2ggdGhhdCB0aGUgaW1hZ2UgYnVmZmVyaW5nIGlzIGRpc2FibGVkIGluIHRoZSBu
ZXR3b3JrIHByb2Nlc3MuCiAgICAgICAgIGZ1bmN0aW9uIHNsb3dMYXJnZUltYWdlU291cmNlVVJM
KCkgewotICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCIKKyAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSIKICAgICAgICAgICAgICAgICAgKyAi
P25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nIiAK
ICAgICAgICAgICAgICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGcG5nIgogICAgICAgICAgICAg
ICAgICArICImc3RhbGxBdD01MTIiCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjI2
MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2Fk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAi
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAK
IGZ1bmN0aW9uIGdpZkltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2Vz
L2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRtbAkocmV2aXNpb24gMjc2MjYx
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8u
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDYgQEAKIDxwaWN0dXJlPgotICAgIDxzb3Vy
Y2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnBocD92
aWRlbz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KLSAgICA8c291cmNlIHNyY3NldD0iL3Jl
c291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHA/dmlkZW89dGVzdC5vZ3Yi
IHR5cGU9InZpZGVvL29ndiI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJl
Y3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucHk/dmlkZW89dGVzdC5tcDQiIHR5cGU9InZpZGVvL21w
NCI+CisgICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYt
YWNjZXB0ZWQucHk/dmlkZW89dGVzdC5vZ3YiIHR5cGU9InZpZGVvL29ndiI+CiAgICAgPGltZyBz
cmM9Ii9yZXNvdXJjZXMvc3F1YXJlMTAwLnBuZyI+CiA8L3BpY3R1cmU+CiA8YnI+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBhcnRpYWwtbG9hZC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2pwZWctcGFydGlhbC1sb2Fk
Lmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2Vz
L2pwZWctcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAg
IHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5w
aHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIGpwZWdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2UtYm9yZGVyLmh0
bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xv
YWRpbmctaW1hZ2UtYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiAg
ICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VCb3JkZXJFbmFibGVk
KHRydWUpOwogCiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAg
aW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnBocD9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVlbi00MDB4NDAwLnBu
ZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAwIjsKKyAgICAgICAg
ICAgIGltZy5zcmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5weT9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVlbi00MDB4NDAw
LnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAwIjsKIAogICAg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgICAgIH0sIDApOwpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1uby1ib3JkZXIuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWlt
YWdlLW5vLWJvcmRlci5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC00LDcgKzQsNyBAQAogICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5jb21wbGV0
ZUltYWdlQm9yZGVyRW5hYmxlZChmYWxzZSk7CiAKICAgICAgICAgc2V0VGltZW91dChmdW5jdGlv
biAoKSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVzb3Vy
Y2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0YWxsQXQ9MCZzdGFs
bEZvcj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFzdC9pbWFnZXMvcmVz
b3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0YWxsQXQ9MCZz
dGFsbEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKICAg
ICAgICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFy
dGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFn
ZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEzLDcgKzEzLDcgQEAKIAogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewot
ICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQt
c3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAKICAgICBmdW5jdGlvbiBtcDRJbWFnZSgp
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5v
LWFscGhhLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMv
cG5nLXBhcnRpYWwtbG9hZC1uby1hbHBoYS5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFscGhhLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewog
CiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0
aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1w
YXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxv
YWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gcG5nSW1hZ2Uo
KQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXByb2dyZXNzaXZlLWxv
YWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmct
cHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC03LDcgKzcsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9h
ZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiBwbmdJbWFnZSgp
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXBhcnRpYWwtbG9hZC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcGFy
dGlhbC1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyAr
Nyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFnZSgpCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZlLWxvYWQuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNz
aXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9pbWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcs
NyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3Rh
bGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHdlYnBJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJlbG9hZC1pbWctdGVzdC5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9hZGluZy9wcmVsb2FkLWltZy10
ZXN0Lmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9h
ZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBA
CiAgIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0OwotICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9IiArIGNtZCwg
ZmFsc2UpOworICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD0iICsgY21k
LCBmYWxzZSk7CiAgICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgICByZXR1cm4g
cmVxLnJlc3BvbnNlVGV4dDsKICAgICAgICB9IGNhdGNoIChleCkgewpAQCAtNDksNyArNDksNyBA
QAogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuL3Jlc291cmNlcy9lbXB0
eS5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gIDxpbWcg
aWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9aW5jcmVhc2UtcmVzb3VyY2UtY291
bnQmcGF0aD0vbG9hZGluZy9yZXNvdXJjZXMvcHJlbG9hZC10ZXN0LmpwZyIgb25lcnJvcj0iaW1n
X2Vycm9yKCkiIG9ubG9hZD0ic2V0VGltZW91dChjaGVja0FjY2Vzc0NvdW50LCAzMDAwKSI+Cisg
IDxpbWcgaWQgPSJ0ZXN0X2ltYWdlIiBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRlc3QmY29tbWFuZD1pbmNyZWFzZS1yZXNvdXJj
ZS1jb3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNlcy9wcmVsb2FkLXRlc3QuanBnIiBvbmVycm9y
PSJpbWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1lb3V0KGNoZWNrQWNjZXNzQ291bnQsIDMwMDAp
Ij4KICAgPHA+VGhpcyB0ZXN0IGlzIHRvIHRlc3Qgd2hldGhlciBwcmVsb2FkIGltYWdlIHdpbGwg
cmVxdWlyZSAyIG1vcmUgcmVxdWVzdHMgb3Igbm90LjwvcD4KICAgPHNwYW4gaWQ9Im91dHB1dFBh
bmVsIj5QQVNTRUQ8L3NwYW4+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICB7CiAgICAgIHRyeSB7CiAgICAgICAgICB2
YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBj
bWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAg
ICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNwb25zZVRleHQ7CiAg
ICAgIH0gY2F0Y2ggKGV4KSB7CkBAIC00MywzNSArNDMsMzUgQEAKICAgPC9zY3JpcHQ+CiAgIAog
ICA8IS0tIFRoaXMgd2lsbCB0cmlnZ2VyIHRoZSBwcmVsb2FkIHNjYW5uZXIgLS0+Ci0gIDxzY3Jp
cHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KKyAgPHNj
cmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CiAKLSAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlh
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLmNzcyI+Ci0gIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLXByaW50LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3Jl
ZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLmNzcyI+
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVsZC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXBy
b2plY3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR0eSIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5jc3Mi
PgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8t
bWVkaWEtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHktMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVu
LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13
aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXBy
ZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVy
eS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUs
IHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13
aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVl
bi1xdWVyeS1mYWlsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHkuY3NzIj4KKyAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYWxsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
c2NyZWVuLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kICht
aW4td2lkdGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1x
dWVyeS1zdWNjZXNzLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxl
LCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1x
dWVyeS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWJyYWlsbGUuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+CisgIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtdHYuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWFsbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1z
Y3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAo
bWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4t
cXVlcnktc3VjY2Vzcy0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFp
bGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXBy
ZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2Ny
ZWVuLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1p
bi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2Ny
ZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1nIHNyYz0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxzY3JpcHQgc3JjPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPXNjcmlwdC0yLmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0eWxlc2hlZXQgbG9hZCBz
Y2hlZHVsaW5nIHdpdGggcHJlbG9hZCBzY2FubmVyLiBSZXNvdXJjZSBsb2FkcyBmb3Igc2NyZWVu
IHN0eWxlc2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91bGQgYmUg
c2NoZWR1bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGlu
ay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLmh0bWwJKHJldmlzaW9u
IDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBAQAogICAgIHsK
ICAgICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
ICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKKyAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7
CiAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VU
ZXh0OwogICAgICB9IGNhdGNoIChleCkgewpAQCAtNDIsMzMgKzQyLDMzIEBACiAgICAgd2luZG93
LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBlbmRUZXN0LCBmYWxzZSk7CiAgIDwvc2NyaXB0Pgog
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3Nz
Ij4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1lbXB0eS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxsIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQg
KG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnkt
c3VjY2Vzcy5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2Ny
ZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLmNzcyI+Ci0gIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBw
eCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4KLSAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLWF1cmFsLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVs
ZC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tZWRpYS1wcm9qZWN0aW9uLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNo
ZWV0IG1lZGlhPSJ0dHkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+Ci0gIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10
di5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1l
ZGlhLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlh
PSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4KLSAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50
LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxl
LXNjcmVlbi0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5k
IChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVu
LXF1ZXJ5LWZhaWwtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bm8tbWVkaWEuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJp
bnQuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
c2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVu
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFp
bC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYXVyYWwiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YnJhaWxsZSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFu
LWhhbmRoZWxkLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9u
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHR5LmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1l
ZGlhLXR2LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1u
by1tZWRpYS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1lbXB0eS0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1l
ZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3MiPgorICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmlu
dC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1z
Y3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAo
bWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1
ZXJ5LWZhaWwtMi5jc3MiPgogICAKIDwvaGVhZD4KIDxib2R5PgotICA8aW1nIHNyYz0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1pbWFnZS5qcGciPgotICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1zY3JpcHQu
anMiPjwvc2NyaXB0PgorICA8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+CisgIDxz
Y3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KIAogICBUZXN0IHN0
eWxlc2hlZXQgbG9hZCBzY2hlZHVsaW5nLiBSZXNvdXJjZSBsb2FkcyBmb3Igc2NyZWVuIHN0eWxl
c2hlZXRzIHNob3VsZCBiZSBzY2hlZHVsZWQgZmlyc3QsIG90aGVycyBzaG91bGQgYmUgc2NoZWR1
bGVkIGxhc3QuCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9m
aWxlLWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQtdXNp
bmctb3Blbi1wYW5lbC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLXVzaW5nLW9wZW4tcGFuZWwu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYsNyBAQCBqc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKIGZ1bmN0aW9uIG9uRmlsZUNoYW5nZShmaWxlLCBmaWxlUGF0aCkKIHsKICAgICB2YXIgeGhy
ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHA/cGF0aD0uLi9sb2Nh
bC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOworICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHk/cGF0aD0u
Li9sb2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiAg
ICAgdmFyIGV4cGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHBhcnNlSW50KHhoci5yZXNwb25zZVRleHQp
ICogMTAwMCk7CiAgICAgdmFyIGFjdHVhbERhdGUgPSBmaWxlLmxhc3RNb2RpZmllZDsKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkv
ZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQCBkZXNjcmlwdGlvbigiVGVzdCBGaWxlLmxhc3RNb2Rp
ZmllZERhdGUuCiBmdW5jdGlvbiBvbkZpbGVEcm9wKGZpbGUsIGZpbGVQYXRoKQogewogICAgIHZh
ciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocD9wYXRoPS4u
L2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CisgICAgeGhyLm9wZW4oIkdFVCIs
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weT9w
YXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBmYWxzZSk7CiAgICAgeGhyLnNlbmQo
KTsKICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3IERhdGUocGFyc2VJbnQoeGhyLnJlc3BvbnNl
VGV4dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFsRGF0ZSA9IGZpbGUubGFzdE1vZGlmaWVkOwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1w
LWZpbGUtdXRpbHMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2Nh
bC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHJldmlzaW9uIDI3NjI2MSkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1m
aWxlLXV0aWxzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDcgKzEsNyBAQAogZnVuY3Rpb24gY3Jl
YXRlVGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYXRhKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1M
SHR0cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiArIGZpbGVOYW1lICsg
IiZkYXRhPSIgKyBmaWxlRGF0YSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5P2ZpbGVuYW1lPSIg
KyBmaWxlTmFtZSArICImZGF0YT0iICsgZmlsZURhdGEsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgp
OwogICAgIGlmICh4aHIuc3RhdHVzICE9IDIwMCkgewogICAgICAgICB0ZXN0RmFpbGVkKCJVbmV4
cGVjdGVkIHJlc3BvbnNlIHN0YXR1cyByZWNlaXZlZDogIiArIHhoci5zdGF0dXMpOwpAQCAtMjAs
MTMgKzIwLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGaWxlKGZpbGVOYW1lLCBmaWxlRGEKIGZ1
bmN0aW9uIHRvdWNoVGVtcEZpbGUoZmlsZU5hbWUpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxI
dHRwUmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocD9maWxlbmFtZT0iICsgZmlsZU5hbWUsIGZh
bHNlKTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL3RvdWNoLXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5hbWUsIGZhbHNlKTsKICAg
ICB4aHIuc2VuZCgpOwogfQogCiBmdW5jdGlvbiByZW1vdmVUZW1wRmlsZShmaWxlTmFtZSkKIHsK
ICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIlBPU1Qi
LCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwP2Zp
bGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5P2ZpbGVuYW1lPSIg
KyBmaWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmctMi5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2st
d2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0PgogZnVuY3Rpb24gbG9h
ZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiB2dHRUcmFjaygp
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1z
bG93LWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21l
ZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjYx
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xv
dy1sb2FkaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiA8c2NyaXB0Pgog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biB2dHRUcmFjaygpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2Rp
ZmllZC1wYXJzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5nLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTUsMTQgKzUsMTQgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiB9CiAK
IGZ1bmN0aW9uIHRlc3QodGV4dCkgewotICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNyYz0i
Li4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhwP2RhdGU9JyArIGVzY2FwZSh0ZXh0KSArICci
PjwvaWZyYW1lPicpOworICAgIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNyYz0iLi4vcmVzb3Vy
Y2VzL2xhc3QtbW9kaWZpZWQucHk/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+
Jyk7CiB9CiAKIHRlc3QoJ01vbiwgMjEgTm92IDIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0KCdU
dWVzZGF5LCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKLXRlc3QoJ01vbiwgMjEgTm92IDk3
IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMS1Ob3YtMjAwOCAwMTowMzozMyBHTVQnKTsK
LXRlc3QoJ01vbiwgMjEtRmViLTIwMDggMDE6MDM6MzMgR01UJyk7Ci10ZXN0KCdNb24sIDAzLUZl
Yi0yMDA4IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAzLU1hci0yMDA4IDAxOjAzOjMzIEdN
VCcpOwordGVzdCgnVHVlLCAyMSBOb3YgMjAwOCAwMTowMzozMyBHTVQnKTsKK3Rlc3QoJ01vbiwg
MjEgTm92IDE5OTcgMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDIxIE5vdiAyMDA4IDAxOjAz
OjMzIEdNVCcpOwordGVzdCgnTW9uLCAyMSBGZWIgMjAwOCAwMTowMzozMyBHTVQnKTsKK3Rlc3Qo
J01vbiwgMDMgRmViIDIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDAzIE1hciAyMDA4
IDAxOjAzOjMzIEdNVCcpOwogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2Mvbm8tbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7Ci0gICAgZG9jdW1l
bnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA/ZGF0
ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9jdW1lbnQud3JpdGUo
JzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9kYXRlPScgKyBlc2Nh
cGUodGV4dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnJyk7CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sCShy
ZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9w
ZW4tY2FuY2VsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTIgKzUsMTIgQEAgdmFyIHJlcGVh
dENvdW50ID0gMDsKIAogZnVuY3Rpb24gc2VuZFJlcXVlc3QoKSB7CiAgICAgdmFyIGZpcnN0UmVx
ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgZmlyc3RSZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MTAwJmRlbGF5PTEi
KTsKKyAgICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdp
dGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwMCZkZWxheT0xIik7CiAKICAgICBmaXJzdFJlcS5vbnJl
YWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKGZpcnN0UmVxLnJlYWR5
U3RhdGUgPT0gZmlyc3RSZXEuSEVBREVSU19SRUNFSVZFRCkgewogICAgICAgICAgICAgdmFyIHNl
Y29uZFJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICAgICAgc2Vjb25kUmVxLm9w
ZW4oIkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTEwJmRlbGF5PTAiKTsKKyAgICAgICAgICAgIHNlY29uZFJlcS5vcGVuKCJHRVQiLCAiL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwJmRlbGF5PTAi
KTsKIAogICAgICAgICAgICAgc2Vjb25kUmVxLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgICAg
ICAgICAgICAgIGlmIChyZXBlYXRDb3VudCsrIDwgNDApCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BlbmRpbmctbG9j
YXRpb24tY2hhbmdlLWFzc2VydC5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
ewogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOwogfQotd2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnBocCI7Cit3aW5kb3cubG9jYXRpb24gPSAiLi4vcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRv
bmUucHkiOwogPC9zY3JpcHQ+PHNjcmlwdD4KIGFsZXJ0KCdGQUlMIDEgb2YgMycpOwogPC9zY3Jp
cHQ+PHNjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWlu
Z19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWluZ19vbmxvYWRfbGlu
a19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJl
bG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3
LDcgQEAKICAgICB2YXIgZmluaXNoZWRJbWFnZSA9IGZhbHNlOwogPC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVs
PXByZWxvYWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwIiBhcz1pbWFnZSBvbmxv
YWQ9ImZpbmlzaGVkSW1hZ2UgPSB0cnVlOyI+Cis8bGluayByZWw9cHJlbG9hZCBocmVmPSIuLi9y
ZXNvdXJjZXMvc2xvdy1pbWFnZS5weSIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5pc2hlZEltYWdlID0g
dHJ1ZTsiPgogPGJvZHk+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJs
b2FkIiwgZnVuY3Rpb24oKSB7CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIHRlc3RSdW5uZXIu
bm90aWZ5RG9uZSgpOwogICAgIH0pOwogICAgIHZhciBpbWcgPSBuZXcgSW1hZ2UoKTsKLSAgICBp
bWcuc3JjID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCI7CisgICAgaW1nLnNyYyA9ICIu
Li9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSI7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChpbWcpOwogPC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJl
Zi5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTgs
MTQgKzgsMTQgQEAKICAgICBsaW5rLmFzID0gImltYWdlIjsKICAgICBsaW5rLnJlbCA9ICJwcmVs
b2FkIjsKICAgICAvLyBDYWNoZS1idXN0aW5nIGlzIG5lZWRlZCBmb3Igc2xvdyByZXNvdXJjZXMu
Ci0gICAgbGluay5ocmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocD9yYW5kPSIgKyBN
YXRoLnJhbmRvbSgpOworICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5w
eT9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIHZhciBkb3dubG9hZGVkSW1hZ2UgPSBmYWxz
ZTsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspOwogICAgIGxpbmsuaHJlZiA9
ICIiOwogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAg
ICAgICAgIHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicmVzb3Vy
Y2UiKTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRyaWVzLmxlbmd0aDsgKytpKSB7
Ci0gICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ctaW1hZ2UucGhw
IikgIT0gLTEpCisgICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ct
aW1hZ2UucHkiKSAhPSAtMSkKICAgICAgICAgICAgICAgICBkb3dubG9hZGVkSW1hZ2UgPSB0cnVl
OwogICAgICAgICB9CiAgICAgICAgIHNob3VsZEJlRmFsc2UoImRvd25sb2FkZWRJbWFnZSIpOwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3df
b25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2Nv
dmVyeS5odG1sCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3By
ZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVyeS5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgLy8gVGhlIHJhbmQgdmFsdWUgaXMg
bmVjZXNzYXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCiAgICAgdmFyIHJhbmQgPSBN
YXRoLnJhbmRvbSgpOwogICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9cHJlbG9hZCBocmVm
PScuLi9yZXNvdXJjZXMvc2xvdy1zY3JpcHQucGw/ZGVsYXk9MjAwO3JhbmQ9IiArIHJhbmQgKyAi
JyBhcz1zY3JpcHQgb25sb2FkPSd3aW5kb3cuZmluaXNoZWRTY3JpcHQgPSB0cnVlOyB0ZXN0KCk7
Jz4iKTsKLSAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQgaHJlZj0nLi4vcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9
J3dpbmRvdy5maW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CisgICAgZG9jdW1lbnQu
d3JpdGUoIjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5
P3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRvdy5maW5pc2hlZEltYWdl
ID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CiA8L3NjcmlwdD4KIDxib2R5PgogPHNjcmlwdD4KSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9v
bmxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQv
bm90X2V2aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9v
bmxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAKIDxzY3JpcHQgc3JjPSIv
anMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIC8v
IFRoZSByYW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNsb3cgcmVzb3VyY2Vz
LgotICAgIHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3Ns
b3ctaW1hZ2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgdmFyIGltYWdlVVJMID0g
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weT9yYW5kPSIgKyBN
YXRoLnJhbmRvbSgpOwogICAgIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgIHNldFRpbWVvdXQo
ZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeU5hbWUoaW1hZ2VVUkwpLmxlbmd0aDsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCShyZXZpc2lvbiAyNzYyNjEpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBocAkobm9uZXhpc3Rl
bnQpCkBAIC0xLDEwICswLDAgQEAKLTw/cGhwCi0gIGlmICghaXNzZXQoJF9TRVJWRVJbJ1BIUF9B
VVRIX1VTRVInXSkgfHwgIWlzc2V0KCRfUkVRVUVTVFsndWlkJ10pIHx8ICgkX1JFUVVFU1RbJ3Vp
ZCddICE9ICRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pKSB7Ci0gICBoZWFkZXIoJ1dXVy1BdXRo
ZW50aWNhdGU6IEJhc2ljIHJlYWxtPSJXZWJLaXQgVGVzdCBSZWFsbSInKTsKLSAgIGhlYWRlcign
SFRUUC8xLjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgZWNobyAnQXV0aGVudGljYXRpb24gY2Fu
Y2VsZWQnOwotICAgZXhpdDsKLSAgfSBlbHNlIHsKLSAgIGVjaG8gIlVzZXI6IHskX1NFUlZFUlsn
UEhQX0FVVEhfVVNFUiddfSwgcGFzc3dvcmQ6IHskX1NFUlZFUlsnUEhQX0FVVEhfUFcnXX0uIjsK
LSAgfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1h
dXRoL2F1dGhvcml6ZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkocmV2aXNpb24gMjc2MjYxKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBo
cAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi0KLXJlcXVpcmVfb25jZSAi
ZGlnZXN0LnBocCI7Ci0KLWlmIChlbXB0eSgkX1NFUlZFUlsnUEhQX0FVVEhfRElHRVNUJ10pKSB7
Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgaGVhZGVyKCJX
V1ctQXV0aGVudGljYXRlOiBEaWdlc3QgcmVhbG09XCJ7JHJlYWxtfVwiLHFvcD1cImF1dGhcIixu
b25jZT1cInskbm9uY2V9XCIsb3BhcXVlPVwieyRvcGFxdWV9XCIiKTsKLQotICAgIGVjaG8gIjxo
MT5Zb3UgYXJlIG5vdCBhbGxvd2VkIHRvIHNlZSB0aGlzIHNlY3JldC48L2gxPiI7Ci19IGVsc2Vp
ZiAoISgkZGF0YSA9IGh0dHBfZGlnZXN0X3BhcnNlKCRfU0VSVkVSWydQSFBfQVVUSF9ESUdFU1Qn
XSkpKSB7Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgZWNo
byAiPGgxPkludmFsaWQgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNlaWYgKCEoJHVzZXJuYW1l
ID0gdmFsaWRhdGVfZGlnZXN0KCRkYXRhKSkpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4wIDQwMSBV
bmF1dGhvcml6ZWQnKTsKLSAgICBlY2hvICI8aDE+V3JvbmcgY3JlZGVudGlhbHMuPC9oMT4iOwot
fSBlbHNlIHsKLSAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbicpOwotICAgIGVj
aG8gJ1VzZXI6ICcgLiAkdXNlcm5hbWUgLiAiXG4iOwotfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9kaWdlc3QucGhwCShy
ZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdl
c3QtYXV0aC9kaWdlc3QucGhwCShub25leGlzdGVudCkKQEAgLTEsNTIgKzAsMCBAQAotPD9waHAK
LQotJHJlYWxtID0gJ0RpZ2VzdCBBdXRoIFByb3RlY3RlZCBBcmVhJzsKLSRub25jZSA9IHVuaXFp
ZCgpOwotJG9wYXF1ZSA9IG1kNSgkcmVhbG0pOwotCi0kdXNlcm5hbWUgPSAnZXZlcnlib2R5JzsK
LSRwYXNzd29yZCA9ICdsb3Zlc2JlZXInOwotCi1mdW5jdGlvbiBodHRwX2RpZ2VzdF9wYXJzZSgk
dHh0KQotewotICAgIC8vIHByb3RlY3QgYWdhaW5zdCBtaXNzaW5nIGRhdGEKLSAgICAkbmVlZGVk
X3BhcnRzID0gWwotICAgICAgICAnbm9uY2UnID0+IDEsCi0gICAgICAgICduYycgPT4gMSwKLSAg
ICAgICAgJ2Nub25jZScgPT4gMSwKLSAgICAgICAgJ3FvcCcgPT4gMSwKLSAgICAgICAgJ3VzZXJu
YW1lJyA9PiAxLAotICAgICAgICAndXJpJyA9PiAxLAotICAgICAgICAncmVzcG9uc2UnID0+IDEK
LSAgICBdOwotICAgICRkYXRhID0gW107Ci0gICAgJGtleXMgPSBpbXBsb2RlKCd8JywgYXJyYXlf
a2V5cygkbmVlZGVkX3BhcnRzKSk7Ci0KLSAgICBwcmVnX21hdGNoX2FsbCgnQCgnIC4gJGtleXMg
LiAnKT0oPzooW1wnIl0pKFteXDJdKz8pXDJ8KFteXHMsXSspKUAnLCAkdHh0LCAkbWF0Y2hlcywg
UFJFR19TRVRfT1JERVIpOwotCi0gICAgZm9yZWFjaCAoJG1hdGNoZXMgYXMgJG0pIHsKLSAgICAg
ICAgJGRhdGFbJG1bMV1dID0gJG1bM10gPyAkbVszXSA6ICRtWzRdOwotICAgICAgICB1bnNldCgk
bmVlZGVkX3BhcnRzWyRtWzFdXSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICRuZWVkZWRfcGFydHMg
PyBmYWxzZSA6ICRkYXRhOwotfQotCi1mdW5jdGlvbiB2YWxpZGF0ZV9kaWdlc3QoJGRhdGEpCi17
Ci0gICAgZ2xvYmFsICRyZWFsbSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQ7Ci0KLSAgICBpZiAoJGRh
dGFbJ3VzZXJuYW1lJ10gIT09ICR1c2VybmFtZSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0g
ICAgJEExID0gZ2V0X21kNV9vZigkZGF0YVsndXNlcm5hbWUnXSwgJHJlYWxtLCAkcGFzc3dvcmQp
OwotICAgICRBMiA9IGdldF9tZDVfb2YoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10sICRkYXRh
Wyd1cmknXSk7Ci0gICAgJHZhbGlkX3Jlc3BvbnNlID0gZ2V0X21kNV9vZigkQTEsICRkYXRhWydu
b25jZSddLCAkZGF0YVsnbmMnXSwgJGRhdGFbJ2Nub25jZSddLCAkZGF0YVsncW9wJ10sICRBMik7
Ci0KLSAgICByZXR1cm4gJGRhdGFbJ3Jlc3BvbnNlJ10gPT0gJHZhbGlkX3Jlc3BvbnNlID8gJHVz
ZXJuYW1lIDogbnVsbDsKLX0KLQotZnVuY3Rpb24gZ2V0X21kNV9vZiguLi4kaXRlbXMpCi17Ci0g
ICAgcmV0dXJuIG1kNShpbXBsb2RlKCc6JywgJGl0ZW1zKSk7Ci19ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShyZXZpc2lvbiAyNzYy
NjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdp
dGgtZGVsYXkucGhwCShub25leGlzdGVudCkKQEAgLTEsMjkgKzAsMCBAQAotPD9waHAKLWhlYWRl
cigiRXhwaXJlczogVGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVQiKTsKLQotaWYgKCRfR0VU
WydhbGxvd0NhY2hlJ10pIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24v
anNvbiIpOwotfSBlbHNlIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24v
eC1uby1idWZmZXJpbmctcGxlYXNlIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250cm9sOiBuby1j
YWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRlcigiUHJhZ21hOiBu
by1jYWNoZSIpOwotfQotCi1pZiAoJF9HRVRbJ2NvcnMnXSkgewotICAgIGhlYWRlcigiQWNjZXNz
LUNvbnRyb2wtQWxsb3ctT3JpZ2luOiAqIik7Ci19Ci0KLSRpdGVyYXRpb24gPSAkX0dFVFsnaXRl
cmF0aW9uJ107Ci0kZGVsYXkgPSAkX0dFVFsnZGVsYXknXTsKLQotZWNobyAiWyRpdGVyYXRpb24s
ICRkZWxheSAiOwotCi1mb3IgKCRpID0gMTsgJGkgPD0gJGl0ZXJhdGlvbjsgKyskaSkgewotICAg
IGVjaG8gIiwgJGksIFwiZm9vYmFyXCIiOwotICAgIC8vIEZvcmNlIGNvbnRlbnQgdG8gYmUgc2Vu
dCB0byB0aGUgYnJvd3NlciBhcyBpcy4KLSAgICBvYl9mbHVzaCgpOwotICAgIGZsdXNoKCk7Ci0g
ICAgdXNsZWVwKCRkZWxheSAqIDEwMDApOwotfQotZWNobyAiXSI7Ci0/PgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSwzOCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9y
dCBzeXMKK2ltcG9ydCB0aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKwor
cXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVw
X2JsYW5rX3ZhbHVlcz1UcnVlKQorYWxsb3dfY2FjaGUgPSBxdWVyeS5nZXQoJ2FsbG93Q2FjaGUn
LCBbTm9uZV0pWzBdCitjb3JzID0gcXVlcnkuZ2V0KCdjb3JzJywgW05vbmVdKVswXQorCitzeXMu
c3Rkb3V0LndyaXRlKCdFeHBpcmVzOiBUaHUsIDAxIERlYyAyMDAzIDE2OjAwOjAwIEdNVFxyXG4n
KQorCitpZiBhbGxvd19jYWNoZSBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdD
b250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cclxuJykKK2Vsc2U6CisgICAgc3lzLnN0ZG91
dC53cml0ZSgKKyAgICAgICAgJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1uby1idWZmZXJp
bmctcGxlYXNlXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9y
ZSwgbXVzdC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJwor
ICAgICkKKworaWYgY29ycyBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdBY2Nl
c3MtQ29udHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJykKKworc3lzLnN0ZG91dC53cml0ZSgnXHJc
bicpCisKK2l0ZXJhdGlvbiA9IGludChxdWVyeS5nZXQoJ2l0ZXJhdGlvbicsIFswXSlbMF0pCitk
ZWxheSA9IGludChxdWVyeS5nZXQoJ2RlbGF5JywgWzBdKVswXSkKKworc3lzLnN0ZG91dC53cml0
ZSgnW3t9LCB7fSAnLmZvcm1hdChpdGVyYXRpb24sIGRlbGF5KSkKKworZm9yIGkgaW4gcmFuZ2Uo
MSwgaXRlcmF0aW9uICsgMSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnLCB7fSwgImZvb2JhciIn
LmZvcm1hdChpKSkKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICB0aW1lLnNsZWVwKGRlbGF5
IC8gMTAwMCkKKworc3lzLnN0ZG91dC53cml0ZSgnXScpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKHJldmlzaW9uIDI3NjI2
MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5w
aHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQo
KTsKLSAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLX0KLTwvc2NyaXB0PgotPC9oZWFk
PgotPGJvZHk+Ci08aWZyYW1lIHNyYz0iPD9waHAgZWNobyAkX0dFVFsnc3JjJ107ID8+Ij48L2lm
cmFtZT4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsMjUgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0
IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworc3Jj
ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFu
a192YWx1ZXM9VHJ1ZSkuZ2V0KCdzcmMnLCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKCdD
b250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworcHJpbnQoJycnPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikge3sK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZy
YW1lc0FzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfX0KKzwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0ie30iPjwvaWZyYW1lPgorPC9ib2R5
PgorPC9odG1sPicnJy5mb3JtYXQoc3JjKSkKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFk
ZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUt
bGFzdC1tb2RpZmllZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkobm9u
ZXhpc3RlbnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLWRhdGVfZGVmYXVsdF90aW1lem9uZV9z
ZXQoJ1VUQycpOwotJGZpbGVQYXRoID0gJF9HRVRbJ3BhdGgnXTsKLWlmIChmaWxlX2V4aXN0cygk
ZmlsZVBhdGgpKSB7Ci0gICAgZWNobyBkYXRlKCJVIiwgZmlsZW10aW1lKCRmaWxlUGF0aCkpOwot
fQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1t
b2RpZmllZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9maWxlLWxhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBv
cnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcGF0aCA9IG9zLnBh
dGguYWJzcGF0aChwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBr
ZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3BhdGgnLCBbX19maWxlX19dKVswXSkKKworc3lz
LnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKK2lmIG9z
LnBhdGguaXNmaWxlKHBhdGgpOgorICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKG9zLnN0YXQocGF0
aCkuc3RfbXRpbWUpLnNwbGl0KCcuJylbMF0pCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9s
YXN0LW1vZGlmaWVkLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHAJKG5vbmV4aXN0ZW50KQpA
QCAtMSw3ICswLDAgQEAKLTw/cGhwCi0gICAgJGRhdGUgPSAkX0dFVFsnZGF0ZSddOwotICAgIGhl
YWRlcigiTGFzdC1Nb2RpZmllZDogJGRhdGUiKTsKLT8+Ci08c2NyaXB0PgotZG9jdW1lbnQud3Jp
dGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5nKCkpOwotPC9z
Y3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlm
aWVkLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xh
c3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE3IEBA
CisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSBk
YXRldGltZSBpbXBvcnQgZGF0ZXRpbWUKK2Zyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9x
cworCitkYXRlID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwg
a2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdkYXRlJywgW2RhdGV0aW1lLnV0Y25vdygpLnN0
cmZ0aW1lKCclYSwgJWQgJWIgJVkgJUg6JU06JVMgR01UJyldKVswXQorCitzeXMuc3Rkb3V0Lndy
aXRlKAorICAgICdMYXN0LU1vZGlmaWVkOiB7fVxyXG4nCisgICAgJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nLmZvcm1hdChkYXRlKQorKQorCitwcmludCgnJyc8c2NyaXB0PgorZG9j
dW1lbnQud3JpdGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5n
KCkpOworPC9zY3JpcHQ+JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46
ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVy
dHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDUwICsw
LDAgQEAKLTw/cGhwCi0kbmFtZSA9ICRfR0VUWyduYW1lJ107Ci0kc3RhbGxBdCA9ICRfR0VUWydz
dGFsbEF0J107Ci0kc3RhbGxGb3IgPSAkX0dFVFsnc3RhbGxGb3InXTsKLSRzdGFsbFJlcGVhdCA9
ICRfR0VUWydzdGFsbFJlcGVhdCddOwotJG1pbWVUeXBlID0gJF9HRVRbJ21pbWVUeXBlJ107Ci0K
LSRmaWxlID0gZm9wZW4oJG5hbWUsICJyYiIpOwotaWYgKCEkZmlsZSkKLSAgICBkaWUoIkNhbm5v
dCBvcGVuIGZpbGUuIik7Ci0KLWhlYWRlcigiQ29udGVudC1UeXBlOiAiIC4gJG1pbWVUeXBlKTsK
LWhlYWRlcigiQ29udGVudC1MZW5ndGg6ICIgLiBmaWxlc2l6ZSgkbmFtZSkpOwotCi1pZiAoaXNz
ZXQoJHN0YWxsQXQpICYmIGlzc2V0KCRzdGFsbEZvcikpIHsKLSAgICAkc3RhbGxBdCA9IChpbnQp
JHN0YWxsQXQ7Ci0gICAgaWYgKCRzdGFsbEF0ID4gZmlsZXNpemUoJG5hbWUpKQotICAgICAgICBk
aWUoIkluY29ycmVjdCB2YWx1ZSBmb3Igc3RhbGxBdC4iKTsKLQotICAgICR3cml0dGVuVG90YWwg
PSAwOwotICAgICRmaWxlU2l6ZSA9IGZpbGVzaXplKCRuYW1lKTsKLQotICAgIHdoaWxlICgkd3Jp
dHRlblRvdGFsIDwgJGZpbGVTaXplKSB7Ci0gICAgICAgICRzdGFsbEF0ID0gbWluKCRzdGFsbEF0
LCAkZmlsZVNpemUgLSAkd3JpdHRlblRvdGFsKTsKLSAgICAgICAgJHdyaXR0ZW4gPSAwOwotCi0g
ICAgICAgIHdoaWxlICgkd3JpdHRlbiA8ICRzdGFsbEF0KSB7Ci0gICAgICAgICAgICAkd3JpdGUg
PSBtaW4oMTAyNCwgJHN0YWxsQXQgLSAkd3JpdHRlbik7Ci0gICAgICAgICAgICBlY2hvKGZyZWFk
KCRmaWxlLCAkd3JpdGUpKTsKLSAgICAgICAgICAgICR3cml0dGVuICs9ICR3cml0ZTsKLSAgICAg
ICAgICAgIGZsdXNoKCk7Ci0gICAgICAgICAgICBvYl9mbHVzaCgpOwotICAgICAgICB9Ci0KLSAg
ICAgICAgJHdyaXR0ZW5Ub3RhbCArPSAkd3JpdHRlbjsKLSAgICAgICAgJHJlbWFpbmluZyA9ICRm
aWxlU2l6ZSAtICR3cml0dGVuVG90YWw7Ci0gICAgICAgIGlmICghJHJlbWFpbmluZykKLSAgICAg
ICAgICAgIGJyZWFrOwotCi0gICAgICAgIHVzbGVlcCgkc3RhbGxGb3IgKiAxMDAwMDAwKTsKLSAg
ICAgICAgaWYgKCFpc3NldCgkc3RhbGxSZXBlYXQpIHx8ICEkc3RhbGxSZXBlYXQpCi0gICAgICAg
ICAgICAkc3RhbGxBdCA9ICRyZW1haW5pbmc7Ci0gICAgfQotfSBlbHNlIHsKLSAgICBlY2hvKGZy
ZWFkKCRmaWxlLCBmaWxlc2l6ZSgkbmFtZSkpKTsKLSAgICBmbHVzaCgpOwotICAgIG9iX2ZsdXNo
KCk7Ci19Ci1mY2xvc2UoJGZpbGUpOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CShub25leGlzdGVudCkKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsNjYgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0
IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBh
cnNlX3FzCisKK3F1ZXJ5ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycs
ICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkKK25hbWUgPSBxdWVyeS5nZXQoJ25hbWUnLCBb
JyddKVswXQorc3RhbGxfYXQgPSBxdWVyeS5nZXQoJ3N0YWxsQXQnLCBbTm9uZV0pWzBdCitzdGFs
bF9mb3IgPSBxdWVyeS5nZXQoJ3N0YWxsRm9yJywgW05vbmVdKVswXQorc3RhbGxfcmVwZWF0ID0g
cXVlcnkuZ2V0KCdzdGFsbFJlcGVhdCcsIFtOb25lXSlbMF0KK21pbWVfdHlwZSA9IHF1ZXJ5Lmdl
dCgnbWltZVR5cGUnLCBbJyddKVswXQorCitpZiBub3Qgb3MucGF0aC5pc2ZpbGUobmFtZSk6Cisg
ICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisg
ICAgc3lzLmV4aXQoMCkKKworbmFtZSA9IG9zLnBhdGguYWJzcGF0aChuYW1lKQorCitvcGVuX2Zp
bGUgPSBvcGVuKG5hbWUsICdyYicpCitmaWxlX3NpemUgPSBvcy5wYXRoLmdldHNpemUobmFtZSkK
K2NvbnRlbnQgPSBvcGVuX2ZpbGUucmVhZCgpCisKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0Nv
bnRlbnQtVHlwZToge31cclxuJworICAgICdDb250ZW50LUxlbmd0aDoge31cclxuXHJcbicuZm9y
bWF0KG1pbWVfdHlwZSwgZmlsZV9zaXplKQorKQorCitpZiBzdGFsbF9hdCBpcyBub3QgTm9uZSBh
bmQgc3RhbGxfZm9yIGlzIG5vdCBOb25lOgorICAgIHN0YWxsX2F0ID0gaW50KHN0YWxsX2F0KQor
ICAgIHN0YWxsX2ZvciA9IGZsb2F0KHN0YWxsX2ZvcikKKworICAgIGlmIHN0YWxsX2F0ID4gZmls
ZV9zaXplOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdJbmNvcnJlY3QgdmFsdWUgZm9yIHN0
YWxsQXQuJykKKyAgICAgICAgc3lzLmV4aXQoMCkKKworICAgIHdyaXR0ZW5fdG90YWwgPSAwCisg
ICAgd2hpbGUgd3JpdHRlbl90b3RhbCA8IGZpbGVfc2l6ZToKKyAgICAgICAgc3RhbGxfYXQgPSBt
aW4oc3RhbGxfYXQsIGZpbGVfc2l6ZSAtIHdyaXR0ZW5fdG90YWwpCisgICAgICAgIHdyaXR0ZW4g
PSAwCisKKyAgICAgICAgd2hpbGUgd3JpdHRlbiA8IHN0YWxsX2F0OgorICAgICAgICAgICAgd3Jp
dGUgPSBtaW4oMTAyNCwgc3RhbGxfYXQgLSB3cml0dGVuKQorCisgICAgICAgICAgICBzeXMuc3Rk
b3V0LmZsdXNoKCkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGNvbnRlbnRb
d3JpdHRlbl90b3RhbCArIHdyaXR0ZW46d3JpdHRlbl90b3RhbCArIHdyaXR0ZW4gKyB3cml0ZV0p
CisgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKworICAgICAgICAgICAgd3JpdHRlbiAr
PSB3cml0ZQorCisgICAgICAgIHdyaXR0ZW5fdG90YWwgKz0gd3JpdHRlbgorICAgICAgICByZW1h
aW5pbmcgPSBmaWxlX3NpemUgLSB3cml0dGVuX3RvdGFsCisKKyAgICAgICAgaWYgcmVtYWluaW5n
ID09IDA6CisgICAgICAgICAgICBicmVhaworCisgICAgICAgIHRpbWUuc2xlZXAoc3RhbGxfZm9y
KQorICAgICAgICBpZiBzdGFsbF9yZXBlYXQgaXMgTm9uZToKKyAgICAgICAgICAgIHN0YWxsX2F0
ID0gcmVtYWluaW5nCitlbHNlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5cy5zdGRv
dXQuYnVmZmVyLndyaXRlKGNvbnRlbnQpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisKK29wZW5f
ZmlsZS5jbG9zZSgpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0
YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHAJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5
OCArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0K
LS8vIFRoaXMgc2NyaXB0IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBmb3IgcmV0cmlldmluZyBm
aWxlcy4gV2hlbiB0aGUgc3RhdGUgaXMgc2V0IHRvCi0vLyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMg
YSBuZXR3b3JrIGVycm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KLQotaWYgKCFzeXNfZ2V0
X3RlbXBfZGlyKCkpIHsKLSAgICBoZWFkZXIoIkhUVFAvMS4xIDUwMCBJbnRlcm5hbCBTZXJ2ZXIg
RXJyb3IiKTsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwot
ICAgIGV4aXQoKTsKLX0KLQotaWYgKCFpc3NldCgkX0dFVFsndGVzdCddKSkgewotICAgIGhlYWRl
cigiSFRUUC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gInRlc3Qg
cGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVcbiI7Ci0g
ICAgZXhpdCgpOwotfQotCi1mdW5jdGlvbiB0ZW1wUGF0aEJhc2UoKQotewotICAgIHJldHVybiBz
eXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsndGVzdCddOwotfQotCi1mdW5jdGlvbiBz
ZXRTdGF0ZSgkbmV3U3RhdGUsICRmaWxlKQotewotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxl
LCAkbmV3U3RhdGUpOwotfQotCi1mdW5jdGlvbiBnZXRTdGF0ZSgkZmlsZSkKLXsKLSAgICBpZiAo
IWZpbGVfZXhpc3RzKCRmaWxlKSkgewotICAgICAgICByZXR1cm4gIlVuaW5pdGlhbGl6ZWQiOwot
ICAgIH0KLSAgICByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoJGZpbGUpOwotfQotCi1mdW5jdGlv
biBjb250ZW50VHlwZSgkcGF0aCkKLXsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wuaHRtbCQvIiwg
JHBhdGgpKQotICAgICAgICByZXR1cm4gInRleHQvaHRtbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2go
Ii9cLm1hbmlmZXN0JC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9jYWNoZS1tYW5p
ZmVzdCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLmpzJC8iLCAkcGF0aCkpCi0gICAgICAgIHJl
dHVybiAidGV4dC9qYXZhc2NyaXB0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wueG1sJC8iLCAk
cGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veG1sIjsKLSAgICBpZiAocHJlZ19t
YXRjaCgiL1wueGh0bWwkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNhdGlvbi94
aHRtbCt4bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5zdmckLyIsICRwYXRoKSkKLSAgICAg
ICAgcmV0dXJuICJhcHBsaWNhdGlvbi9zdmcreG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
eHNsJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veHNsdCt4bWwiOwot
ICAgIGlmIChwcmVnX21hdGNoKCIvXC5naWYkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJp
bWFnZS9naWYiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5qcGckLyIsICRwYXRoKSkKLSAgICAg
ICAgcmV0dXJuICJpbWFnZS9qcGVnIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wucG5nJC8iLCAk
cGF0aCkpCi0gICAgICAgIHJldHVybiAiaW1hZ2UvcG5nIjsKLSAgICByZXR1cm4gInRleHQvcGxh
aW4iOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCkKLXsKLSAgICBo
ZWFkZXIoIkV4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UIik7Ci0gICAgaGVh
ZGVyKCJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIp
OwotICAgIGhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0
ZVJlc3BvbnNlKCRwYXRoKQotewotICAgIGdsb2JhbCAkc3RhdGVGaWxlOwotICAgICRzdGF0ZSA9
IGdldFN0YXRlKCRzdGF0ZUZpbGUpOwotICAgIGlmICgkc3RhdGUgPT0gIk9mZmxpbmUiKSB7Ci0g
ICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdpdGggYSBub25z
ZW5zZSByZXNwb25zZS4KLSAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSAzMDcgVGVtcG9yYXJ5IFJl
ZGlyZWN0Jyk7Ci0gICAgICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX1NFUlZFUlsnUkVRVUVT
VF9VUkknXSk7ICMgUmVkaXJlY3QgdG8gc2VsZi4KLSAgICAgICAgaGVhZGVyKCdDb250ZW50LUxl
bmd0aDogMScpOwotICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiA1JywgZmFsc2UpOyAj
IE11bHRpcGxlIGNvbnRlbnQtbGVuZ3RoIGhlYWRlcnMsIHNvbWUgbmV0d29yayBzdGFja3MgY2Fu
IGRldGVjdCB0aGlzIGNvbmRpdGlvbiBmYXN0ZXIuCi0gICAgICAgIGVjaG8gIkludGVudGlvbmFs
bHkgaW5jb3JyZWN0IHJlc3BvbnNlLiI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8gQSBsaXR0
bGUgc2VjdXJ1dHkgY2hlY2tpbmcgY2FuJ3QgaHVydC4KLSAgICAgICAgaWYgKHN0cnN0cigkcGF0
aCwgIi4uIikpCi0gICAgICAgICAgICBleGl0OwotCi0gICAgICAgIGlmICgkcGF0aFswXSA9PSAn
LycpCi0gICAgICAgICAgICAkcGF0aCA9ICcuLicgLiAkcGF0aDsKLQotICAgICAgICBpZiAoISRf
R0VUWydhbGxvdy1jYWNoaW5nJ10pCi0gICAgICAgICAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVh
ZGVyKCk7Ci0KLSAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgewotICAgICAgICAgICAg
aGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAiIC4gZ21kYXRlKCJELCBkIE0gWSBIOmk6cyBUIiwgZmls
ZW10aW1lKCRwYXRoKSkpOwotICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LVR5cGU6ICIgLiBj
b250ZW50VHlwZSgkcGF0aCkpOwotICAgICAgICAKLSAgICAgICAgICAgIHByaW50IGZpbGVfZ2V0
X2NvbnRlbnRzKCRwYXRoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGhlYWRlcign
SFRUUC8xLjEgNDA0IE5vdCBGb3VuZCcpOwotICAgICAgICB9Ci0gICAgfQotfQotCi1mdW5jdGlv
biBoYW5kbGVJbmNyZWFzZVJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewotICAgICRyZXNv
dXJjZUNvdW50RmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAgJHJlc291cmNl
Q291bnQgPSBnZXRTdGF0ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVjZXMgPSBleHBs
b2RlKCIgIiwgJHJlc291cmNlQ291bnQpOwotICAgICRjb3VudCA9IDA7Ci0gICAgaWYgKGNvdW50
KCRwaWVjZXMpID09IDIgJiYgJHBpZWNlc1swXSA9PSAkcGF0aCkgewotICAgICAgICAkY291bnQg
PSAxICsgJHBpZWNlc1sxXTsKLSAgICB9IGVsc2UgewotICAgICAgICAkY291bnQgPSAxOwotICAg
IH0KLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsICRwYXRoIC4gIiAi
IC4gJGNvdW50KTsKLSAgICBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKTsKLX0KLQotZnVuY3Rpb24g
aGFuZGxlUmVzZXRSZXNvdXJjZUNvdW50Q29tbWFuZCgpCi17Ci0gICAgJHJlc291cmNlQ291bnRG
aWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLWNvdW50IjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygk
cmVzb3VyY2VDb3VudEZpbGUsIDApOwotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsK
LSAgICBoZWFkZXIoJ0hUVFAvMS4xIDIwMCBPSycpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVHZXRS
ZXNvdXJjZUNvdW50Q29tbWFuZCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0
ZW1wUGF0aEJhc2UoKSAuICItY291bnQiOwotICAgICRyZXNvdXJjZUNvdW50ID0gZ2V0U3RhdGUo
JHJlc291cmNlQ291bnRGaWxlKTsKLSAgICAkcGllY2VzID0gZXhwbG9kZSgiICIsICRyZXNvdXJj
ZUNvdW50KTsKLSAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0gICAgaGVhZGVyKCdI
VFRQLzEuMSAyMDAgT0snKTsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2Vz
WzBdID09ICRwYXRoKSB7Ci0gICAgICAgIGVjaG8gJHBpZWNlc1sxXTsKLSAgICB9IGVsc2Ugewot
ICAgICAgICBlY2hvIDA7Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVTdGFydFJlc291cmNl
UmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAu
ICItbG9nIjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAgIiIpOwot
fQotCi1mdW5jdGlvbiBoYW5kbGVDbGVhclJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRy
ZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBmaWxlX3B1dF9j
b250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJl
c291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJh
c2UoKSAuICItbG9nIjsKLQotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLSAgICBo
ZWFkZXIoIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbiIpOwotCi0gICAgcHJpbnQgZmlsZV9nZXRf
Y29udGVudHMoJHJlc291cmNlTG9nRmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUxvZ1Jlc291
cmNlUmVxdWVzdCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VMb2dGaWxlID0gdGVtcFBhdGhCYXNl
KCkgLiAiLWxvZyI7Ci0gICAgCi0gICAgJG5ld0RhdGEgPSAiXG4iLiRwYXRoOwotICAgIC8vIERv
Y3VtZW50YXRpb24gc2F5cyB0aGF0IGFwcGVuZHMgYXJlIGF0b21pYy4KLSAgICBmaWxlX3B1dF9j
b250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAkbmV3RGF0YSwgRklMRV9BUFBFTkQpOwotfQotCi0k
c3RhdGVGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLXN0YXRlIjsKLSRjb21tYW5kID0gJF9HRVRb
J2NvbW1hbmQnXTsKLWlmICgkY29tbWFuZCkgewotICAgIGlmICgkY29tbWFuZCA9PSAiY29ubmVj
dCIpCi0gICAgICAgIHNldFN0YXRlKCJPbmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlm
ICgkY29tbWFuZCA9PSAiZGlzY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJPZmZsaW5lIiwg
JHN0YXRlRmlsZSk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImluY3JlYXNlLXJlc291cmNl
LWNvdW50IikKLSAgICAgICAgaGFuZGxlSW5jcmVhc2VSZXNvdXJjZUNvdW50Q29tbWFuZCgkX0dF
VFsncGF0aCddKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAicmVzZXQtcmVzb3VyY2UtY291
bnQiKQotICAgICAgICBoYW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5kKCk7Ci0gICAgZWxz
ZSBpZiAoJGNvbW1hbmQgPT0gImdldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZUdl
dFJlc291cmNlQ291bnRDb21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYgKCRjb21t
YW5kID09ICJzdGFydC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZVN0YXJ0
UmVzb3VyY2VSZXF1ZXN0c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJjbGVhci1y
ZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZUNsZWFyUmVzb3VyY2VSZXF1ZXN0
c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJnZXQtcmVzb3VyY2UtcmVxdWVzdC1s
b2ciKQotICAgICAgICBoYW5kbGVHZXRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBp
ZiAoJGNvbW1hbmQgPT0gImxvZy1yZXNvdXJjZS1yZXF1ZXN0IikKLSAgICAgICAgaGFuZGxlTG9n
UmVzb3VyY2VSZXF1ZXN0KCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UKLSAgICAgICAgZWNobyAi
VW5rbm93biBjb21tYW5kOiAiIC4gJGNvbW1hbmQgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLQot
JHJlcXVlc3RlZFBhdGggPSAkX0dFVFsncGF0aCddOwotZ2VuZXJhdGVSZXNwb25zZSgkcmVxdWVz
dGVkUGF0aCk7Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxNzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworIyBUaGlzIHNj
cmlwdCBhY3RzIGFzIGEgc3RhdGVmdWwgcHJveHkgZm9yIHJldHJpZXZpbmcgZmlsZXMuIFdoZW4g
dGhlIHN0YXRlIGlzIHNldCB0bworIyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBuZXR3b3JrIGVy
cm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitp
bXBvcnQgdGVtcGZpbGUKK2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCitmcm9tIHBvcnRh
YmlsaXR5TGF5ZXIgaW1wb3J0IGdldF9zdGF0ZSwgc2V0X3N0YXRlCitmcm9tIHVybGxpYi5wYXJz
ZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVF
UllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQordGVzdCA9IHF1ZXJ5Lmdl
dCgndGVzdCcsIFtOb25lXSlbMF0KK2NvbW1hbmQgPSBxdWVyeS5nZXQoJ2NvbW1hbmQnLCBbTm9u
ZV0pWzBdCisKK2lmIHRlc3QgaXMgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAg
ICAnc3RhdHVzOiA1MDBcclxuJworICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicKKyAgICAgICAgJ3Rlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVu
aXF1ZSB0ZXN0IG5hbWVcbicKKyAgICApCisgICAgc3lzLmV4aXQoMCkKKworCitkZWYgdGVtcF9w
YXRoX2Jhc2UoKToKKyAgICByZXR1cm4gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIo
KSwgdGVzdCkKKworCitzdGF0ZV9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctc3RhdGUnCisK
KworZGVmIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCk6CisgICAgc3lzLnN0ZG91dC53
cml0ZSgKKyAgICAgICAgJ0V4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UXHJc
bicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZh
bGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAgICkKKworCitk
ZWYgY29udGVudF90eXBlKHBhdGgpOgorICAgIHJldHVybiB7CisgICAgICAgICdodG1sJzogJ3Rl
eHQvaHRtbCcsCisgICAgICAgICdtYW5pZmVzdCc6ICd0ZXh0L2NhY2hlLW1hbmlmZXN0JywKKyAg
ICAgICAgJ2pzJzogJ3RleHQvamF2YXNjcmlwdCcsCisgICAgICAgICd4bWwnOiAnYXBwbGljYXRp
b24veG1sJywKKyAgICAgICAgJ3hodG1sJzogJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsCisgICAg
ICAgICdzdmcnOiAnYXBwbGljYXRpb24vc3ZnK3htbCcsCisgICAgICAgICd4c2wnOiAnYXBwbGlj
YXRpb24veHNsdCt4bWwnLAorICAgICAgICAnZ2lmJzogJ2ltYWdlL2dpZicsCisgICAgICAgICdq
cGcnOiAnaW1hZ2UvanBlZycsCisgICAgICAgICdwbmcnOiAnaW1hZ2UvcG5nJworICAgIH0uZ2V0
KHBhdGguc3BsaXQoJy4nKVstMV0sICd0ZXh0L3BsYWluJykKKworCitkZWYgZ2VuZXJhdGVfcmVz
cG9uc2UocGF0aCk6CisgICAgc3RhdGUgPSBnZXRfc3RhdGUoc3RhdGVfZmlsZSkKKyAgICBpZiBz
dGF0ZSA9PSAnT2ZmbGluZSc6CisgICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5
IHJlcGx5aW5nIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKyAgICAgICAgc3lzLnN0ZG91dC53
cml0ZSgKKyAgICAgICAgICAgICdzdGF0dXM6IDMwN1xyXG4nCisgICAgICAgICAgICAnTG9jYXRp
b246IHt9XHJcblxyXG4nICAjIFJlZGlyZWN0IHRvIHNlbGYuCisgICAgICAgICAgICAnSW50ZW50
aW9uYWxseSBpbmNvcnJlY3QgcmVzcG9uc2UuJy5mb3JtYXQob3MuZW52aXJvbi5nZXQoJ1JFUVVF
U1RfVVJJJywgJycpKQorICAgICAgICApCisgICAgZWxzZToKKyAgICAgICAgIyBBIGxpdHRsZSBz
ZWN1cnV0eSBjaGVja2luZyBjYW4ndCBodXJ0LgorICAgICAgICBpZiAnLi4nIGluIHBhdGg6Cisg
ICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5c
clxuJykKKyAgICAgICAgICAgIHN5cy5leGl0KDApCisKKyAgICAgICAgaWYgbGVuKHBhdGgpID4g
MCBhbmQgcGF0aFswXSA9PSAnLyc6CisgICAgICAgICAgICBwYXRoID0gJy4uJyArIHBhdGgKKwor
ICAgICAgICBpZiAnYWxsb3ctY2FjaGluZycgbm90IGluIHF1ZXJ5LmtleXMoKToKKyAgICAgICAg
ICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKworICAgICAgICBpZiBvcy5wYXRo
LmlzZmlsZShwYXRoKToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICAg
ICAgICAgJ0xhc3QtTW9kaWZpZWQ6IHt9IEdNVFxyXG4nCisgICAgICAgICAgICAgICAgJ0NvbnRl
bnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAob3Mu
c3RhdChwYXRoKS5zdF9tdGltZSkuc3RyZnRpbWUoJyVhLCAlZCAlYiAlWSAlSDolTTolUycpLCBj
b250ZW50X3R5cGUocGF0aCkpCisgICAgICAgICAgICApCisKKyAgICAgICAgICAgIHdpdGggb3Bl
bihwYXRoLCAncmInKSBhcyBvcGVuX2ZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5m
bHVzaCgpCisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxl
LnJlYWQoKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0
YXR1czogNDA0XHJcblxyXG4nKQorCisKK2RlZiBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2VfY291
bnRfY29tbWFuZChwYXRoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jh
c2UoKSArICctY291bnQnCisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2Vf
Y291bnRfZmlsZSkKKyAgICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAg
Y291bnQgPSAwCisgICAgaWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBdID09IHBhdGg6
CisgICAgICAgIGNvdW50ID0gMSArIGludChwaWVjZXNbMV0pCisgICAgZWxzZToKKyAgICAgICAg
Y291bnQgPSAxCisKKyAgICBzZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSwgJ3t9IHt9Jy5m
b3JtYXQocGF0aCwgY291bnQpKQorICAgIGdlbmVyYXRlX3Jlc3BvbnNlKHBhdGgpCisKKworZGVm
IGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKCk6CisgICAgcmVzb3VyY2VfY291
bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHNldF9zdGF0ZShyZXNv
dXJjZV9jb3VudF9maWxlLCAnMCcpCisgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIo
KQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogMjAwXHJcblxyXG4nKQorCisKK2RlZiBo
YW5kbGVfZ2V0X3Jlc291cmNlX2NvdW50X2NvbW1hbmQocGF0aCk6CisgICAgcmVzb3VyY2VfY291
bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHJlc291cmNlX2NvdW50
ID0gZ2V0X3N0YXRlKHJlc291cmNlX2NvdW50X2ZpbGUpCisgICAgcGllY2VzID0gcmVzb3VyY2Vf
Y291bnQuc3BsaXQoJyAnKQorICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKyAg
ICBzeXMuc3Rkb3V0LndyaXRlKCdzdGF0dXM6IDIwMFxyXG5cclxuJykKKworICAgIGlmIGxlbihw
aWVjZXMpID09IDIgYW5kIHBpZWNlc1swXSA9PSBwYXRoOgorICAgICAgICBzeXMuc3Rkb3V0Lndy
aXRlKHN0cihwaWVjZXNbMV0pKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUo
JzAnKQorCisKK2RlZiBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCk6CisgICAg
cmVzb3VyY2VfbG9nX2ZpbGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1sb2cnCisgICAgc2V0X3N0
YXRlKHJlc291cmNlX2xvZ19maWxlLCAnJykKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworCitkZWYgaGFuZGxlX2dldF9yZXNvdXJjZV9y
ZXF1ZXN0c19sb2coKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkg
KyAnLWxvZycKKyAgICBnZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKKyAgICB3aXRo
IG9wZW4ocmVzb3VyY2VfbG9nX2ZpbGUsICdyJykgYXMgb3Blbl9maWxlOgorICAgICAgICBzeXMu
c3Rkb3V0LndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCisKKworZGVmIGhhbmRsZV9sb2dfcmVzb3Vy
Y2VfcmVxdWVzdChwYXRoKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9iYXNl
KCkgKyAnLWxvZycKKyAgICBuZXdfZGF0YSA9ICdcbicgKyBwYXRoCisKKyAgICB3aXRoIG9wZW4o
cmVzb3VyY2VfbG9nX2ZpbGUsICdhJykgYXMgb3Blbl9maWxlOgorICAgICAgICBvcGVuX2ZpbGUu
d3JpdGUobmV3X2RhdGEpCisKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRl
eHQvaHRtbFxyXG5cclxuJykKKworCitpZiBjb21tYW5kIGlzIG5vdCBOb25lOgorICAgIGlmIGNv
bW1hbmQgPT0gJ2Nvbm5lY3QnOgorICAgICAgICBzZXRfc3RhdGUoc3RhdGVfZmlsZSwgJ09ubGlu
ZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJc
blxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZGlzY29ubmVjdCc6CisgICAgICAgIHNldF9z
dGF0ZShzdGF0ZV9maWxlLCAnT2ZmbGluZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0Nv
bnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnaW5j
cmVhc2UtcmVzb3VyY2UtY291bnQnOgorICAgICAgICBoYW5kbGVfaW5jcmVhdGVfcmVzb3VyY2Vf
Y291bnRfY29tbWFuZChxdWVyeS5nZXQoJ3BhdGgnLCBbJyddKVswXSkKKyAgICBlbGlmIGNvbW1h
bmQgPT0gJ3Jlc2V0LXJlc291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX3Jlc2V0X3Jlc291
cmNlX2NvdW50X2NvbW1hbmQoKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLWNv
dW50JzoKKyAgICAgICAgaGFuZGxlX2dldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5Lmdl
dCgncGF0aCcsIFsnJ10pWzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAnc3RhcnQtcmVzb3VyY2Ut
cmVxdWVzdC1sb2cnOgorICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9n
KCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xlYXItcmVzb3VyY2UtcmVxdWVzdC1sb2cnOgorICAg
ICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1h
bmQgPT0gJ2dldC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9nZXRfcmVz
b3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xvZy1yZXNvdXJjZS1y
ZXF1ZXN0JzoKKyAgICAgICAgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHF1ZXJ5LmdldCgn
cGF0aCcsIFsnJ10pWzBdKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisg
ICAgICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAgICAgICAgICAg
ICdVbmtub3duIGNvbW1hbmQ6IHt9XG4nLmZvcm1hdChjb21tYW5kKQorICAgICAgICApCisgICAg
ICAgIHN5cy5leGl0KDApCitlbHNlOgorICAgIHJlcXVlc3RfcGF0aCA9IHF1ZXJ5LmdldCgncGF0
aCcsIFsnJ10pWzBdCisgICAgZ2VuZXJhdGVfcmVzcG9uc2UocmVxdWVzdF9wYXRoKQoKUHJvcGVy
dHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAj
IworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9wb3J0YWJpbGl0eUxheWVyLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIucHkJKHJldmlz
aW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmls
aXR5TGF5ZXIucHkJKHdvcmtpbmcgY29weSkKQEAgLTc5LDcgKzc5LDcgQEAgZGVmIGdldF9zdGF0
ZShmaWxlLCBkZWZhdWx0PSdVbmluaXRpYWxpegogICAgICAgICByZXR1cm4gZmlsZS5yZWFkKCkK
IAogCi1kZWYgc2V0X3N0YXRlKHN0YXRlLCBmaWxlKToKK2RlZiBzZXRfc3RhdGUoZmlsZSwgc3Rh
dGUpOgogICAgIHdpdGggb3BlbihmaWxlLCAndycpIGFzIG9wZW5fZmlsZToKICAgICAgICAgb3Bl
bl9maWxlLndyaXRlKHN0YXRlKQogICAgIHJldHVybiBzdGF0ZQpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRv
LXZpZGVvLWlmLWFjY2VwdGVkLnBocAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShu
b25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotPD9waHAKLWlmIChzdHJwb3MoJF9TRVJWRVJb
J0hUVFBfQUNDRVBUJ10sICd2aWRlby8qJykgIT09IGZhbHNlKSB7Ci0gICAgaGVhZGVyKCdIVFRQ
LzEuMSAzMDEgTW92ZWQgUGVybWFuZW50bHknKTsKLSAgICBoZWFkZXIoJ0xvY2F0aW9uOiAnIC4g
JF9HRVRbJ3ZpZGVvJ10pOwotICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG11
c3QtcmV2YWxpZGF0ZScpOwotICAgIHJldHVybjsKLX0KLQotaGVhZGVyKCdIVFRQLzEuMSA0MDAg
QmFkIFJlcXVlc3QnKTsKLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5w
eQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRp
cmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE5
IEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJv
bSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK3ZpZGVvID0gcGFyc2VfcXMob3MuZW52
aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0
KCd2aWRlbycsIFsnJ10pWzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcbicpCisKK2lmICd2aWRlby8qJyBpbiBvcy5lbnZpcm9uLmdldCgnSFRUUF9BQ0NF
UFQnLCAnJyk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ3N0YXR1czogMzAxXHJc
bicKKyAgICAgICAgJ0xvY2F0aW9uOiB7fVxyXG4nCisgICAgICAgICdDYWNoZS1Db250cm9sOiBu
by1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlXHJcblxyXG4nLmZvcm1hdCh2aWRlbykKKyAgICApCisg
ICAgc3lzLmV4aXQoMCkKKworc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDBcclxuXHJcbicp
CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9y
ZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhl
Y3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5w
aHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQt
dGVtcC1maWxlLnBocAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICsw
LDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYg
KCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMg
cmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBf
ZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmlsZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1dF9jb250ZW50
cygkdG1wRmlsZSwgInRlc3QiKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0byB3cml0ZSB0
byBmaWxlOiAiIC4gJHRtcEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLWlmICghdW5saW5r
KCR0bXBGaWxlKSkgewotICAgIGVjaG8gIkZBSUw6IFVuYWJsZSB0byBkZWxldGUgZmlsZTogIiAu
ICR0bXBGaWxlIC4gIlxuIjsKLSAgICBleGl0KCk7Ci19Ci0/PgoKUHJvcGVydHkgY2hhbmdlcyBv
bjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocApf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCkRlbGV0ZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0xICswLDAgIyMKLSoKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5weQkocmV2aXNpb24gMjc2MjYxKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0yLDE3ICsyLDEyIEBACiBpbXBvcnQgb3MKIGltcG9ydCBzeXMKIGlt
cG9ydCB0ZW1wZmlsZQotCiBmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKIAotcXVl
cnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKQotc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRl
bXBkaXIoKSwgcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnc3RhdGUudHh0J10pWzBdKQorZmlsZW5h
bWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1lJywgWyc0MDQudHh0J10pWzBdCitzdGF0ZV9m
aWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiAKLXN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcbicpCi1zeXMuc3Rkb3V0
LndyaXRlKCdcclxuJykKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1s
XHJcblxyXG4nKQogCi10cnk6Ci0gICAgaWYgb3MucGF0aC5leGlzdHMoc3RhdGVGaWxlKToKLSAg
ICAgICAgb3MucmVtb3ZlKHN0YXRlRmlsZSkKLWV4Y2VwdCBPU0Vycm9yOgotICAgIHByaW50KCdG
QUlMOiB1bmFibGUgdG8gd3JpdGUgdG8gZmlsZToge30nLmZvcm1hdChzdGF0ZUZpbGUpKQoraWYg
b3MucGF0aC5leGlzdHMoc3RhdGVfZmlsZSk6CisgICAgb3MucmVtb3ZlKHN0YXRlX2ZpbGUpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBocAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBo
cAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
c2xvdy1pbWFnZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi11c2xl
ZXAoNDAwMDAwKTsKLWhlYWRlcigiQ29udGVudC1UeXBlOiBpbWFnZS9wbmciKTsKLUByZWFkZmls
ZSgic3F1YXJlMTAwLnBuZyIpOwotPz4KLQotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9zbG93LWltYWdlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDEyIEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0
IHN5cworaW1wb3J0IHRpbWUKKwordGltZS5zbGVlcCgwLjQpCisKK3N5cy5zdGRvdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogaW1hZ2UvcG5nXHJcblxyXG4nKQord2l0aCBvcGVuKCdzcXVhcmUxMDAu
cG5nJywgJ3JiJykgYXMgb3Blbl9maWxlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgIHN5
cy5zdGRvdXQuYnVmZmVyLndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCgpQcm9wZXJ0eSBjaGFuZ2Vz
IG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnB5Cl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvc2xvdy1ub3RpZnktZG9uZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5waHAJKHJldmlzaW9uIDI3NjI2MSkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwCShu
b25leGlzdGVudCkKQEAgLTEsOCArMCwwIEBACi08P3BocAotdXNsZWVwKDEwMDAwMCk7Ci0/Pgot
RE9ORSEKLTxzY3JpcHQ+Ci1pZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7Ci08L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQkobm9uZXhpc3RlbnQpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTMgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1w
b3J0IHN5cworaW1wb3J0IHRpbWUKKwordGltZS5zbGVlcCgwLjEpCisKK3N5cy5zdGRvdXQud3Jp
dGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorcHJpbnQoJycnRE9ORSEKKzxz
Y3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25l
KCk7Cis8L3NjcmlwdD4nJycpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5Cl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2
bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9w
ZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1m
aWxlLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90
b3VjaC10ZW1wLWZpbGUucGhwCShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucGhwCShub25leGlzdGVudCkKQEAgLTEs
MjIgKzAsMCBAQAotPD9waHAKLXJlcXVpcmVfb25jZSAncG9ydGFiaWxpdHlMYXllci5waHAnOwot
Ci1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewotICAgIGVjaG8gIkZBSUw6IE5vIHRlbXAgZGly
IHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kdG1wRmlsZSA9IHN5c19nZXRf
dGVtcF9kaXIoKSAuICIvIiAuICRfR0VUWydmaWxlbmFtZSddOwotCi0kc3RhdCA9IHN0YXQoJHRt
cEZpbGUpOwotaWYgKCEkc3RhdCkgewotICAgIGVjaG8gIkZBSUw6IHN0YXQoKSBjYWxsIGZhaWxl
ZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kbXRpbWUgPSAkc3RhdFsnbXRpbWUnXSArIDE7Ci0K
LWlmICghdG91Y2goJHRtcEZpbGUsICRtdGltZSkpIHsKLSAgICBlY2hvICJGQUlMOiB0b3VjaCgp
IGNhbGwgZmFpbGVkLlxuIjsKLX0KLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnB5CShyZXZpc2lvbiAyNzYyNjEpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkJKHdv
cmtpbmcgY29weSkKQEAgLTUsMTAgKzUsNyBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUK
IGZyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3Bs
aXQoJzovY3lnd2luJylbLTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5k
aXJuYW1lKG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQotZmlsZW5h
bWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2ZpbGVu
YW1lID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9i
bGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogdG1wRmls
ZVBhdGggPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKIAog
c3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1wLWZpbGUucGhwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAt
ZmlsZS5waHAJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNyArMCwwIEBA
Ci08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLWlmICghc3lz
X2dldF90ZW1wX2RpcigpKSB7Ci0gICAgZWNobyAiRkFJTDogTm8gdGVtcCBkaXIgd2FzIHJldHVy
bmVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSR0bXBGaWxlID0gc3lzX2dldF90ZW1wX2Rpcigp
IC4gIi8iIC4gJF9HRVRbJ2ZpbGVuYW1lJ107Ci0KLWlmICghZmlsZV9wdXRfY29udGVudHMoJHRt
cEZpbGUsICRfR0VUWydkYXRhJ10pKSB7Ci0gICAgZWNobyAiRkFJTDogdW5hYmxlIHRvIHdyaXRl
IHRvIGZpbGU6ICIgLiAkdG1wRmlsZSAuICJcbiI7Ci0gICAgZXhpdCgpOwotfQotCi1lY2hvICR0
bXBGaWxlOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRl
LXRlbXAtZmlsZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy93cml0ZS10ZW1wLWZpbGUucHkJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQkod29ya2luZyBjb3B5KQpA
QCAtNSwyMiArNSwxNCBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUKIGZyb20gdXJsbGli
LnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3BsaXQoJzovY3lnd2lu
JylbLTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBh
dGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQogcXVlcnkgPSBwYXJzZV9xcyhv
cy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVl
KQotZmlsZW5hbWUgPSBxdWVyeS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KK2Zp
bGVuYW1lID0gcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCddKVswXQogZGF0YSA9IHF1
ZXJ5LmdldCgnZGF0YScsIFsnJ10pWzBdCiAKLXRtcEZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZp
bGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKK3RtcF9maWxlID0gb3MucGF0aC5qb2luKHRlbXBm
aWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIAotdHJ5OgotICAgIGZpbGUgPSBvcGVuKHRtcEZpbGUs
ICd3JykKLSAgICBmaWxlLndyaXRlKGRhdGEpCi0gICAgZmlsZS5jbG9zZSgpCi1leGNlcHQ6Ci0g
ICAgc3lzLnN0ZG91dC53cml0ZShmJ0ZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiB7dG1w
RmlsZX1cbicpCi0gICAgc3lzLmV4aXQoMCkKK3dpdGggb3Blbih0bXBfZmlsZSwgJ3cnKSBhcyBv
cGVuX2ZpbGU6CisgICAgb3Blbl9maWxlLndyaXRlKGRhdGEpCiAKLXN5cy5zdGRvdXQud3JpdGUo
Zid7dG1wRmlsZX1cbicpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorc3lzLnN0ZG91dC53
cml0ZSh0bXBfZmlsZSkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvWEZy
YW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFsbG93Lmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVP
cHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAko
cmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJh
bWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMTAsNiArMTAsNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIp
IHsKIDwvc2NyaXB0PgogPC9oZWFkPgogPGhlYWQ+Ci08aWZyYW1lIHNyYz0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcu
MC4wLjElM0E4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0
aW9ucy1mcmFtZS1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dpIj48L2lmcmFtZT4KKzxp
ZnJhbWUgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNy
Yy5weT9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25z
L3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtZnJhbWUtYW5jZXN0b3JzLXNhbWUtb3JpZ2luLWFs
bG93LmNnaSI+PC9pZnJhbWU+CiA8L2hlYWQ+CiA8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9yZXNvdXJjZXMvYWxsb3ctaWYt
b3JpZ2luLnB5CShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkJKHdvcmtpbmcgY29weSkKQEAgLTMz
LDcgKzMzLDEwIEBAIGlmIGFsbG93Q3JlZHM6CiBpZiBhbGxvd0NhY2hlOgogICAgIHN5cy5zdGRv
dXQud3JpdGUoJ0NhY2hlLUNvbnRyb2w6IG1heC1hZ2U9MTAwXHJcbicpCiAKLXN5cy5zdGRvdXQu
d3JpdGUoJ0NvbnRlbnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KGNvbnRlbnRUeXBlKSkKK3N5
cy5zdGRvdXQud3JpdGUoCisgICAgJ0NvbnRlbnQtTGVuZ3RoOiB7fVxyXG4nCisgICAgJ0NvbnRl
bnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KG9zLnBhdGguZ2V0c2l6ZShvcy5wYXRoLmpvaW4o
Jy8nLmpvaW4oX19maWxlX18uc3BsaXQoJy8nKVswOi0xXSksIG5hbWUpKSwgY29udGVudFR5cGUp
CispCiBzeXMuc3Rkb3V0LmZsdXNoKCkKIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oJy8nLmpvaW4o
X19maWxlX18uc3BsaXQoJy8nKVswOi0xXSksIG5hbWUpLCAncmInKSBhcyBmaWxlOgogICAgIHN5
cy5zdGRvdXQuYnVmZmVyLndyaXRlKGZpbGUucmVhZCgpKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc3dpcGUvc3dpcGUtYmFjay13aXRo
LW91dHN0YW5kaW5nLWxvYWQtY2FuY2VsbGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1j
YW5jZWxsYXRpb24uaHRtbAkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24u
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsNyBAQCB3aW5kb3cub25sb2FkID0gZnVu
Y3Rpb24gKCkgewogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgZG9jdW1lbnQuYm9keS5p
bm5lckhUTUwgPSBpc0ZpcnN0UGFnZSgpID8gImZpcnN0IiA6ICI8aWZyYW1lIHNyYz0nL3Jlc291
cmNlcy9zbG93LWltYWdlLnBocCc+IjsKKyAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGlz
Rmlyc3RQYWdlKCkgPyAiZmlyc3QiIDogIjxpZnJhbWUgc3JjPScvcmVzb3VyY2VzL3Nsb3ctaW1h
Z2UucHknPiI7CiAKICAgICBpZiAoaXNGaXJzdFBhZ2UoKSkgewogICAgICAgICBpZiAoaGFzSW5p
dGlhbGl6ZWRTd2lwZVRlc3QoKSkgewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3Jr
LWVycm9yLmh0bWwJKHJldmlzaW9uIDI3NjI2MSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3Qvc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvci5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQogZnVuY3Rpb24gc2V0
TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVz
dDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZjb21tYW5kPSIg
KyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9w
ZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9eG1saHR0cHJl
cXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCkBA
IC0zNCw3ICszNCw3IEBAIGZ1bmN0aW9uIG9uUmVhZHlTdGF0ZUNoYW5nZSgpCiBzZXROZXR3b3Jr
RW5hYmxlZChmYWxzZSk7CiB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiB4aHIub25y
ZWFkeXN0YXRlY2hhbmdlID0gb25SZWFkeVN0YXRlQ2hhbmdlOwoteGhyLm9wZW4oJ0dFVCcsICcv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRl
LWFmdGVyLW5ldHdvcmstZXJyb3ImcGF0aD0vJywgdHJ1ZSk7Cit4aHIub3BlbignR0VUJywgJy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1h
ZnRlci1uZXR3b3JrLWVycm9yJnBhdGg9LycsIHRydWUpOwogeGhyLnNlbmQobnVsbCk7CiAKIDwv
c2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLWludmFsaWRhdGlvbi5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jl
c291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtaW52YWxpZGF0aW9u
LnB5CShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtaW52
YWxpZGF0aW9uLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNiw3ICszNiw3IEBAIGlmIHN0YXRlID09
ICdVbmluaXRpYWxpemVkJzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAx
MFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUo
J09wdGlvbnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAn
T3B0aW9uc1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OCw3ICs0OCw3
IEBAIGVsaWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxuJwogICAg
ICAgICAgICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAgICAgICBz
ZXRfc3RhdGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0
YXRlRmlsZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAg
LTYxLDcgKzYxLDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAgICAgICAg
ICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzOiB4LXdlYmtpdC10ZXN0XHJcbicKICAgICAg
ICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnU2Vjb25kT1BUSU9O
U1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdTZWNvbmRP
UFRJT05TU2VudCcpCiAgICAgZWxpZiBvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9
PSAnUFVUJzoKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAgICAgICAgICdBY2Nlc3Mt
Q29udHJvbC1BbGxvdy1PcmlnaW46IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMFxyXG4nCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29u
dHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJv
bC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weQkocmV2aXNpb24gMjc2MjYxKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNv
bnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHkJKHdvcmtpbmcgY29weSkKQEAg
LTM3LDcgKzM3LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAg
J0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDFcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAg
ICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdPcHRpb25zU2VudCcsIHN0YXRlRmlsZSkKKyAgICAg
ICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ09wdGlvbnNTZW50JykKICAgICBlbHNlOgogICAgICAg
ICBmYWlsKCkKIApAQCAtNDksNyArNDksNyBAQCBlbGlmIHN0YXRlID09ICdPcHRpb25zU2VudCc6
CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdQQVNTOiBGaXJzdCBQVVQgcmVxdWVz
dC4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdGaXJzdFBVVFNlbnQnLCBzdGF0ZUZp
bGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGaXJzdFBVVFNlbnQnKQogICAgIGVs
c2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC02Myw3ICs2Myw3IEBAIGVsaWYgc3RhdGUgPT0gJ0Zp
cnN0UFVUU2VudCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMVxyXG4n
CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ1NlY29u
ZE9QVElPTlNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAn
U2Vjb25kT1BUSU9OU1NlbnQnKQogICAgIGVsaWYgb3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfTUVU
SE9EJykgPT0gJ1BVVCc6CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCiAgICAgICAgICAgICAn
QWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiBodHRwOi8vMTI3LjAuMC4xOjgwMDBcclxuJwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNj
ZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9s
LWJhc2ljLXByZWZsaWdodC1jYWNoZS5weQkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFz
aWMtcHJlZmxpZ2h0LWNhY2hlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNyw3ICszNyw3IEBAIGlm
IHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1N
YXgtQWdlOiAxMFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBz
ZXRfc3RhdGUoJ09wdGlvbnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3Rh
dGVGaWxlLCAnT3B0aW9uc1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00
OSw3ICs0OSw3IEBAIGVsaWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdc
clxuJwogICAgICAgICAgICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQot
ICAgICAgICBzZXRfc3RhdGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0
X3N0YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFp
bCgpCiAKQEAgLTY5LDcgKzY5LDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAg
ICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzOiB4LXdlYmtpdC10ZXN0XHJc
bicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRkFJ
TFNlY29uZE9QVElPTlNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVG
aWxlLCAnRkFJTFNlY29uZE9QVElPTlNTZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkK
IApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMv
YWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250
cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5weQkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wt
cHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5CSh3b3JraW5nIGNvcHkpCkBAIC01Myw3ICs1Myw3IEBA
IGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAg
ICAgICAgICAnRkFJTDogVGhpcyByZXF1ZXN0IHNob3VsZCBub3QgYmUgZGlzcGxheWVkXG4nCiAg
ICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdEZW5pZWQnLCBzdGF0ZUZpbGUpCisgICAgICAg
IHNldF9zdGF0ZShzdGF0ZUZpbGUsICdEZW5pZWQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwo
c3RhdGUpCiAKQEAgLTY3LDcgKzY3LDcgQEAgZWxpZiBzdGF0ZSA9PSAnRGVuaWVkJzoKICAgICAg
ICAgICAgICdQQVNTOiBSZXF1ZXN0IHN1Y2Nlc3NmdWxseSBibG9ja2VkLlxuJwogICAgICAgICAp
CiAgICAgZWxzZToKLSAgICAgICAgc2V0X3N0YXRlKCdEZW55IElnbm9yZWQnLCBzdGF0ZUZpbGUp
CisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdEZW55IElnbm9yZWQnKQogICAgICAgICBm
YWlsKHN0YXRlKQogCiBlbGlmIHN0YXRlID09ICdEZW55IElnbm9yZWQnOgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8tY3VzdG9tLWhlYWRl
ci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5CShyZXZpc2lvbiAyNzYyNjEpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0b20taGVh
ZGVyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBAIHN0YXRlRmlsZSA9IG9zLnBh
dGguam9pbih0ZW1wZmlsZS5nZXR0ZW0KIAogaWYgb3MuZW52aXJvbi5nZXQoJ1JFUVVFU1RfTUVU
SE9EJykgPT0gJ09QVElPTlMnOgogICAgIGlmIG9zLmVudmlyb24uZ2V0KCdIVFRQX1hfQ1VTVE9N
X0hFQURFUicpOgotICAgICAgICBzZXRfc3RhdGUoJ0ZBSUwnLCBzdGF0ZUZpbGUpCisgICAgICAg
IHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMJykKICAgICBlbHNlOgotICAgICAgICBzZXRfc3Rh
dGUoJ1BBU1MnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdQQVNT
JykKIGVsc2U6CiAgICAgaWYgb3MuZW52aXJvbi5nZXQoJ0hUVFBfWF9DVVNUT01fSEVBREVSJyk6
CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoZ2V0X3N0YXRlKHN0YXRlRmlsZSwgZGVmYXVsdD0n
RkFJTCcpKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3JlZGlyZWN0LWNy
b3NzLW9yaWdpbi10cmlwbWluZS5weQkocmV2aXNpb24gMjc2MjYxKQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2lu
LXRyaXBtaW5lLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNywxMyArMzcsMTMgQEAgaWYgbWV0aG9k
ID09ICdPUFRJT05TJzoKIAogIyBPbmx5IGFsbG93IHNpbXBsZSBjcm9zcy1zaXRlIHJlcXVlc3Rz
IC0gc2luY2Ugd2UgZGlkIG5vdCBhbGxvdyBwcmVmbGlnaHQsIHRoaXMgaXMgYWxsIHdlIHNob3Vs
ZCBldmVyIGdldC4KIGlmIG1ldGhvZCBub3QgaW4gWydHRVQnLCAnSEVBRCcsICdQT1NUJ106Ci0g
ICAgc2V0X3N0YXRlKCdGQUlMLiBOb24tc2ltcGxlIG1ldGhvZCB7fS4nLmZvcm1hdChtZXRob2Qp
LCBzdGF0ZUZpbGUpCisgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwuIE5vbi1zaW1wbGUg
bWV0aG9kIHt9LicuZm9ybWF0KG1ldGhvZCkpCiAgICAgc3lzLmV4aXQoMCkKIAogaWYgY29udGVu
dCBhbmQgbm90IHJlLm1hdGNoKHInXmFwcGxpY2F0aW9uXC94XC13d3dcLWZvcm1cLXVybGVuY29k
ZWQoOy4rKT8kJywgY29udGVudFR5cGUpIFwKICAgICBhbmQgbm90IHJlLm1hdGNoKHInXm11bHRp
cGFydFwvZm9ybVwtZGF0YSg7LispPyQnLCBjb250ZW50VHlwZSkgXAogICAgIGFuZCBub3QgcmUu
bWF0Y2gocidedGV4dFwvcGxhaW4oOy4rKT8kJywgY29udGVudFR5cGUpOgotICAgIHNldF9zdGF0
ZSgnRkFJTC4gTm9uLXNpbXBsZSBjb250ZW50IHR5cGU6IHt9LicuZm9ybWF0KGNvbnRlbnRUeXBl
KSwgc3RhdGVGaWxlKQorICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMLiBOb24tc2ltcGxl
IGNvbnRlbnQgdHlwZToge30uJy5mb3JtYXQoY29udGVudFR5cGUpKQogCiBpZiBvcy5lbnZpcm9u
LmdldCgnSFRUUF9YX1dFQktJVF9URVNUJyk6Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBDdXN0b20g
aGVhZGVyIHNlbnQgd2l0aCBhIHNpbXBsZSByZXF1ZXN0LicsIHN0YXRlRmlsZSkKKyAgICBzZXRf
c3RhdGUoc3RhdGVGaWxlLCAnRkFJTC4gQ3VzdG9tIGhlYWRlciBzZW50IHdpdGggYSBzaW1wbGUg
cmVxdWVzdC4nKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9y
ZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1cmVzLnB5Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL3Jl
bWVtYmVyLWJhZC1wYXNzd29yZC9jb3VudC1mYWlsdXJlcy5weQkocmV2aXNpb24gMjc2MjYxKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1i
ZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1cmVzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNiw3
ICszNiw3IEBAIGlmIGNvbW1hbmQ6CiAgICAgaWYgY29tbWFuZCA9PSAnc3RhdHVzJzoKICAgICAg
ICAgc3lzLnN0ZG91dC53cml0ZShnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpCiAg
ICAgZWxpZiBjb21tYW5kID09ICdyZXNldCc6Ci0gICAgICAgIHN5cy5zdGRvdXQud3JpdGUoc2V0
X3N0YXRlKCcwJywgc3RhdGVGaWxlKSkKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZShzZXRfc3Rh
dGUoc3RhdGVGaWxlLCAnMCcpKQogICAgIHN5cy5leGl0KDApCiAKIGNyZWRlbnRpYWxzID0gYmFz
ZTY0LmI2NGRlY29kZShvcy5lbnZpcm9uLmdldCgnSFRUUF9BVVRIT1JJWkFUSU9OJywgJyBPZz09
Jykuc3BsaXQoJyAnKVsxXSkuZGVjb2RlKCkuc3BsaXQoJzonKQpAQCAtNTcsNCArNTcsNCBAQCBl
bHNlOgogICAgICAgICAnQXV0aGVudGljYXRpb24gY2FuY2VsZWQnCiAgICAgKQogICAgIGlmIHVz
ZXJuYW1lOgotICAgICAgICBzZXRfc3RhdGUoc3RyKGludChnZXRfc3RhdGUoc3RhdGVGaWxlLCBk
ZWZhdWx0PScwJykpICsgMSksIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmls
ZSwgc3RyKGludChnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpICsgMSkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426496</attachid>
            <date>2021-04-19 17:26:49 -0700</date>
            <delta_ts>2021-04-20 11:24:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210419192643.patch</filename>
            <type>text/plain</type>
            <size>146340</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjI3OCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNC0xOSAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzY3MjcwNTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24taHRtbC54
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5
OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlm
ZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
Y2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1m
cmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFn
ZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0
ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1h
Z2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1
ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1hbmQpOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1l
eHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJh
c2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25z
ZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZl
dGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUt
cmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9w
dGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5
LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUt
c2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2Vz
L2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9pbWFn
ZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL3dl
YnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzOgor
ICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6CisgICAg
ICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9s
b2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9h
ZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRf
b25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMtYXV0aC5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGg6
IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
cmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA6IFJlbW92ZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weTogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAgICAoZ2Vu
ZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBlKToKKyAg
ICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0ZV9yZXNv
dXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3Vu
dF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCk6
CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAg
KGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRsZV9sb2df
cmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFi
aWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0
LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy90b3Vj
aC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy93cml0
ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlmLW9yaWdp
bi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFu
ZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1p
bnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHk6Cisg
ICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRy
b2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5w
eToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0
b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weToKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQt
ZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1h
ZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEtMDQtMTkgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFttYWMtd2syXSBMYXlvdXRUZXN0IGZhc3QvbWVk
aWFzdHJlYW0vZ2V0VXNlck1lZGlhLXdlYmF1ZGlvLmh0bWwgaXMgYSBmbGFreSB0aW1lb3V0Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCShy
ZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxi
YWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24gc2V0TmV0
d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0
ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICAgICAgcmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtZmFs
bGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOwogICAgICAgICByZXEuc2VuZCgiIik7CiAgICAgfSBjYXRjaCAoZXgpIHsKICAgICAgICAg
bG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsgc2ltdWxhdG9yIFVSTCIpOwpAQCAtNDMsNyArNDMs
NyBAQCBmdW5jdGlvbiBsb2FkKHVybCkKICAgICB9CiB9CiAKLXZhciB0ZXN0VVJMID0gIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtZmFsbGJhY2smcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vdC1pbi1jYWNoZS50eHQiOwordmFyIHRlc3RVUkwgPSAiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2FjaGUudHh0IjsKIHZhciBub25leGlzdGVudFVS
TCA9ICJyZXNvdXJjZXMvZG9lcy1ub3QtZXhpc3QiOwogdmFyIHJlZGlyZWN0VVJMID0gInJlc291
cmNlcy9mYWxsYmFjay1yZWRpcmVjdC5weSI7CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFz
aC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaC5odG1sCShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3Vy
Y2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtNSw3ICs1LDcgQEAKIDxkaXY+ICAgICAgICBCZWZvcmUgeW91IGNsaWNrIHRoZSBsaW5rIHRo
YXQgdGVzdHMgdGhlIGFwcGNhY2hlIGZhbGxiYWNrLCBwbGVhc2UgbWFrZSBzdXJlIHRoZSBzZXJ2
ZXIgaXMgZG93biBvciBkaXNjb25uZWN0IHlvdXIgZGV2aWNlIGZyb20gYW55IGRhdGEgY29ubmVj
dGlvbiBzbyB0aGUgY29ubmVjdGlvbiByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIgd2lsbCBmYWlsLgog
PC9kaXY+CiAKLTxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVy
cm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhl
IHNlcnZlciBpcyBkb3duIG9yIHRoZSBjbGllbnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEg
Y29ubmVjdGlvbiwgdGhpcyB3aWxsIHZlcmlmeSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0
aGUgY3Jhc2guIDwvYT4KKzxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdv
cmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCIgPiBjbGljayB0aGlzIGxpbmsgd2hl
biB0aGUgc2VydmVyIGlzIGRvd24gb3IgdGhlIGNsaWVudCBkZXZpY2UgZG9lc24ndCBoYXZlIGEg
ZGF0YSBjb25uZWN0aW9uLCB0aGlzIHdpbGwgdmVyaWZ5IGlmIHRoZSBmYWxsYmFjayB3aWxsIGNh
dXNlIHRoZSBjcmFzaC4gPC9hPgogCiAKIDxzY3JpcHQ+CkBAIC0xMyw3ICsxMyw3IEBACiBmdW5j
dGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0
dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKQEAgLTI2LDcgKzI2LDcgQEAgZnVu
Y3Rpb24gcnVuVGVzdCgpCiB7CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgICAg
IHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKLSAgICAgICAgd2luZG93LmxvY2F0aW9uPSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2Ut
ZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7Cisg
ICAgICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jh
c2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7CiAgICAgfQogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1oYXNoLmh0bWwJ
KHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1oYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAgZnVu
Y3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsK
ICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291
cmNlLWhhc2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwg
ZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApAQCAtMjgsNyArMjgsNyBAQCBmdW5jdGlv
biBmcmFtZUNyZWF0ZWQoKQogICAgICAgICBzdGFnZSA9IDE7CiAgICAgICAgIHNldE5ldHdvcmtF
bmFibGVkKGZhbHNlKTsKICAgICAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImlmcmFtZSIpOwotICAgICAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZy
YW1lLmh0bWwjYmFyIik7CisgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWlu
LXJlc291cmNlLWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFz
aC1mcmFtZS5odG1sI2JhciIpOwogICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlm
cik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgbG9nKCJTVUNDRVNTIik7CkBAIC00Myw3ICs0Myw3
IEBAIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgZnJhbWUKIHZhciBzdGFnZSA9
IDA7CiBzZXROZXR3b3JrRW5hYmxlZCh0cnVlKTsKIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpZnJhbWUiKTsKLWlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNv
dXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJh
bWUuaHRtbCNmb28iKTsKK2lmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNl
LWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5o
dG1sI2ZvbyIpOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogCiA8L3NjcmlwdD4K
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIGZ1
bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEgPSBuZXcgWE1M
SHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxz
ZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1h
bmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICBy
ZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bXVsdGktZmFsbGJhY2suaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbXVsdGktZmFsbGJhY2suaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMjEsNyArMjEsNyBAQCBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAg
ICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3Qi
IDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tdWx0aS1mYWxsYmFjayZj
b21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAg
ICAgICAgIHJlcS5zZW5kKCIiKTsKICAgICB9IGNhdGNoIChleCkgewogICAgICAgICBsb2coIkNh
bm5vdCBhY2Nlc3MgbmV0d29yayBzaW11bGF0b3IgVVJMLCBleCA9ICIgKyBleCk7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwueGh0bWwJKHJldmlz
aW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwu
eGh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiA8aHRtbCB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMTk5OS94aHRtbCIKLSAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QiPgorICAgICAgbWFuaWZlc3Q9Ii9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0Ij4KIDxoZWFkPjx0aXRsZS8+PC9o
ZWFkPgogPGJvZHk+CiA8cD5UZXN0IHRoYXQgbm9uLUhUTUwgbWFpbiByZXNvdXJjZXMgd29yayB3
aXRoIGFwcGxpY2F0aW9uIGNhY2hlIGNvcnJlY3RseS48L3A+CkBAIC0xOSwxNCArMTksMTQgQEAg
ZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRt
bCZhbXA7Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVj
dCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCiBmdW5j
dGlvbiBjcmVhdGVGcmFtZSgpCiB7CiAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImlmcmFtZSIpOwotICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvYWJlLnBuZyIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1w
O3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nIik7CiAgICAgaWZyLm9ubG9hZCA9IGZy
YW1lQ3JlYXRlZDsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CkBAIC00
Myw3ICs0Myw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRo
YXQgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGNhY2hlLgogICAgIHRyeSB7CiAgICAgICAgIHZhciBy
ZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtw
YXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKKyAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2Fj
aGUudHh0IiwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgpOwogICAgIH0gY2F0Y2ggKGUpIHsK
ICAgICAgICAgaWYgKGUuY29kZSA9PSBET01FeGNlcHRpb24uTkVUV09SS19FUlIpCkBAIC01OCw3
ICs1OCw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRoYXQg
ZXhpc3RzIGluIHRoZSBjYWNoZS4KICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0KCk7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1s
JmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKICAgICAg
ICAgcmVxLnNlbmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAiRkFJTFVSRTogQ291bGQgbm90IGxvYWQg
ZGF0YSBmcm9tIGNhY2hlIgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9v
ZmZsaW5lLWFjY2Vzcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5lLWFjY2Vzcy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCwxNCArMTgsMTQgQEAgZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBz
ZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwog
ICAgIHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQogewogICAgIHZh
ciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBpZnIuc2V0QXR0
cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MtZnJhbWUuaHRtbCIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKICAgICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbAkocmV2aXNpb24gMjc2MjY4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtOTEsNyArOTEsNyBAQCBmdW5jdGlvbiB0ZXN0NSgpCiBmdW5jdGlv
biByZXNldE1hbmlmZXN0KCkKIHsKICAgICBpZiAoYXBwbGljYXRpb25DYWNoZS5zdGF0dXMgIT0g
YXBwbGljYXRpb25DYWNoZS5VTkNBQ0hFRCAmJiBhcHBsaWNhdGlvbkNhY2hlLnN0YXR1cyAhPSBh
cHBsaWNhdGlvbkNhY2hlLk9CU09MRVRFKSB7Ci0gICAgICAgIHRpbWVvdXRJZCA9IHNldFRpbWVv
dXQocmVzZXRNYW5pZmVzdCwgMTAwKTsKKyAgICAgICAgdGltZW91dElkID0gc2V0VGltZW91dChy
ZXNldE1hbmlmZXN0LCA0MDApOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0xMDQsNyAr
MTA0LDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbm5vdXBkYXRlID0gdGVzdDsKIGFwcGxpY2F0aW9u
Q2FjaGUub25jYWNoZWQgPSB0ZXN0OwogCiAvLyBJZiB0aGUgbWFuaWZlc3Qgc2NyaXB0IGhhcHBl
bmVkIHRvIGJlIGluIGEgd3Jvbmcgc3RhdGUsIHJlc2V0IGl0LgotdmFyIHRpbWVvdXRJZCA9IHNl
dFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgMTAwKTsKK3ZhciB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0
KHJlc2V0TWFuaWZlc3QsIDQwMCk7CiAKIDwvc2NyaXB0PgogPC9ib2R5PgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWlsLW9uLXVwZGF0ZS0yLnB5CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5CSh3b3JraW5nIGNv
cHkpCkBAIC0yNiw3ICsyNiw3IEBAIGlmIGNvbW1hbmQgPT0gJ3Jlc2V0JzoKICAgICAgICAgb3Mu
cmVtb3ZlKHRtcF9maWxlKQogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nKQogZWxpZiBjb21tYW5kID09ICdkZWxldGUnOgotICAgIHNldF9zdGF0
ZSgnRGVsZXRlZCcsIHRtcF9maWxlKQorICAgIHNldF9zdGF0ZSh0bXBfZmlsZSwgJ0RlbGV0ZWQn
KQogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4n
KQogZWxpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24t
dXBkYXRlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQkod29y
a2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNyBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAg
ICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBz
ZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdE
ZWxldGVkJykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxy
XG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQu
d3JpdGUoCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWxsYmFjay5tYW5pZmVzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL3Jlc291cmNlcy9mYWxsYmFjay5tYW5pZmVzdAkocmV2aXNpb24gMjc2MjY4KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZl
c3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiBDQUNIRSBNQU5JRkVTVAogRkFMTEJB
Q0s6Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD8gc2ltcGxlLnR4dAorL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT8gc2ltcGxlLnR4dAogZmFsbGJhY2stcmVkaXJlY3Qg
c2ltcGxlLnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxlLnR4dApcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2Vz
L21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1m
cmFtZS5weQkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS5weQkod29ya2luZyBj
b3B5KQpAQCAtNCw2ICs0LDYgQEAgaW1wb3J0IHN5cwogCiBzeXMuc3Rkb3V0LndyaXRlKAogICAg
ICdzdGF0dXM6IDMwMlxyXG4nCi0gICAgJ0xvY2F0aW9uOiBodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1y
ZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWxcclxuJworICAgICdMb2NhdGlvbjogaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNh
Y2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9y
ZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWxcclxuJwogICAgICdD
b250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJwogKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5p
ZmVzdAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNo
ZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdAkod29ya2luZyBjb3B5
KQpAQCAtMSw0ICsxLDQgQEAKIENBQ0hFIE1BTklGRVNUCi1odHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1y
ZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWwKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1h
aW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sCiBORVRXT1JLOgotaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFuZAoraHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1m
YWxsYmFjay5tYW5pZmVzdAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNSArMSw1IEBACiBDQUNIRSBNQU5JRkVTVAogRkFMTEJBQ0s6Ci0vcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD8gc2ltcGxlLnR4dAorL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT8gc2ltcGxlLnR4dAogZG9lcy1ub3QgZW1wdHkudHh0CiBkb2VzLW5vdC1l
eGlzdCBzaW1wbGUudHh0CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jl
c291cmNlcy9ub24taHRtbC5tYW5pZmVzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdAkocmV2aXNpb24gMjc2
MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0
bWwubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsOCArMSw4IEBACiBDQUNIRSBNQU5JRkVT
VAogL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1w
bGUudHh0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5v
bi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nCi0vcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9ub24taHRtbC5tYW5pZmVzdAorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUu
dHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0
bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5wbmcKKy9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJj
ZXMvbm9uLWh0bWwubWFuaWZlc3QKIE5FVFdPUks6CiAvZmF2aWNvbi5pY28KLS9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KKy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZjb21t
YW5kPQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2Zm
bGluZS1hY2Nlc3MtZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAot
PGh0bWwgbWFuaWZlc3Q9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBw
Y2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLm1hbmlmZXN0Ij4KKzxodG1sIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3Vy
Y2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Ij4KIDxkaXYgaWQ9cmVzdWx0PjwvZGl2PgogPHNj
cmlwdD4KIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQpAQCAtMTEsNyArMTEsNyBAQCBhcHBsaWNhdGlv
bkNhY2hlLm9ucHJvZ3Jlc3MgPSBmdW5jdGlvbigpCiBhcHBsaWNhdGlvbkNhY2hlLm9udXBkYXRl
cmVhZHkgPSBmdW5jdGlvbigpIHsgbG9nKCJ1cGRhdGVyZWFkeSIpIH0KIGFwcGxpY2F0aW9uQ2Fj
aGUub25vYnNvbGV0ZSA9IGZ1bmN0aW9uKCkgeyBsb2coIm9ic29sZXRlIikgfQogPC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJj
ZXMvb2ZmbGluZS1hY2Nlc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIAogYXBwbGljYXRpb25D
YWNoZS5vbmNhY2hlZCA9IGZ1bmN0aW9uKCkgeyBsb2coImNhY2hlZCIpOyB0ZXN0KCkgfQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCSh3b3JraW5n
IGNvcHkpCkBAIC02LDcgKzYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgIHRyeSB7CiAgICAg
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5l
LWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKKyAg
ICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3NpbXBs
ZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICBpZiAocmVx
LnJlc3BvbnNlVGV4dCA9PSAiSGVsbG8sIFdvcmxkISIpCiAgICAgICAgICAgICBwYXJlbnQucG9z
dE1lc3NhZ2UoImRvbmUiLCAiKiIpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFu
aWZlc3QJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9z
aW1wbGUudHh0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hl
LW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5q
cworL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUt
YWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1s
CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1h
Y2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Cisv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nl
c3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3NpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL3JlbW92ZS1jYWNoZS5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkJKHJl
dmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL3JlbW92ZS1jYWNoZS5weQkod29ya2luZyBjb3B5KQpAQCAtMjgsMTQgKzI4LDE0IEBAIGlm
IGNvbW1hbmQgPT0gJ3Jlc2V0JzoKICAgICAgICAgb3MucmVtb3ZlKHRtcF9maWxlKQogICAgIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBj
b21tYW5kID09ICdkZWxldGUnOgotICAgIHNldF9zdGF0ZSgnRGVsZXRlZCcsIHRtcF9maWxlKQor
ICAgIHNldF9zdGF0ZSh0bXBfZmlsZSwgJ0RlbGV0ZWQnKQogICAgIHN5cy5zdGRvdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBzdGF0ZSA9PSAnVW5pbml0
aWFsaXplZCc6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAgICAgJ0NvbnRlbnQtVHlwZTog
dGV4dC9jYWNoZS1tYW5pZmVzdFxyXG5cclxuJwogICAgICAgICAnQ0FDSEUgTUFOSUZFU1RcbicK
ICAgICAgICAgJ05FVFdPUks6XG4nCi0gICAgICAgICdyZW1vdmUtY2FjaGUucHk/Y29tbWFuZD1c
biInCisgICAgICAgICdyZW1vdmUtY2FjaGUucHk/Y29tbWFuZD1cbicKICAgICApCiBlbGlmIHN0
YXRlID09ICdEZWxldGVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApAQCAtNDMsNCArNDMsNCBA
QCBlbGlmIHN0YXRlID09ICdEZWxldGVkJzoKICAgICAgICAgJ0NvbnRlbnQtVHlwZTogdGV4dC9o
dG1sXHJcblxyXG4nCiAgICAgKQogZWxzZToKLSAgICBzeXMuc3RvZHV0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisg
ICAgc3lzLnN0b2R1dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJl
dmFsaWRhdGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fj
aGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWwJKHJldmlzaW9uIDI3NjI2
OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmct
cmV2YWxpZGF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAgZnVuY3Rp
b24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgbG9nKHN0YXRlID8gIkVuYWJsaW5n
IG5ldHdvcmsiIDogIkRpc2FibGluZyBuZXR3b3JrIik7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxI
dHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJmNv
bW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAg
ICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1j
YWNoZS1uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24mY29tbWFuZD0iICsgKHN0YXRl
ID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsK
IH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1mcmFn
bWVudC1pZGVudGlmaWVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYWNoZS9zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyLmh0bWwJKHJldmlzaW9uIDI3
NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21l
bnQtaWRlbnRpZmllci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBACiAgICAg
ICAgIHsKICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICAgICAgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUt
c3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsK
KyAgICAgICAgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFn
bWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgICAg
IHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0
OwogICAgICAgICAgICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQxLDE4ICs0MSwxOCBAQAogICAKICAg
ICA8c3R5bGU+CiAgICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1
cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CisgICAgICAgICAgICBi
YWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlm
aWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNkaXYn
KTsKICAgICAgICAgfQogICAgICAgICBwIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IHVybCgnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNwJyk7CisgICAgICAgICAgICBi
YWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlm
aWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNwJyk7
CiAgICAgICAgIH0KICAgICA8L3N0eWxlPgogCiA8L2hlYWQ+CiA8Ym9keT4KICAgICA8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7Ij48L2Rpdj4KLSAgICA8aW1nIHNyYz0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcxIj4KLSAgICA8aW1nIHNyYz0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1j
YWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcyIj4KKyAgICA8aW1nIHNyYz0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hl
LXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzEiPgorICAgIDxpbWcgc3JjPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3Vi
cmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1nMiI+CiAgICAgCiAgIFRlc3QgdGhhdCByZXNvdXJjZXMg
d2l0aCBmcmFnbWVudCBpZGVudGlmaWVycyBhcmUgbG9hZGVkIG9ubHkgb25jZS4KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJp
bmctcmV2YWxpZGF0aW9uLWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9u
LWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xICsxIEBACi08aW1nIHNyYz0iL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jYWNoZS1uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlk
YXRpb24mcGF0aD0vbWlzYy9yZXNvdXJjZXMvY29tcGFzcy5qcGcmYWxsb3ctY2FjaGluZz0xIj4K
KzxpbWcgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0
d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVzb3VyY2VzL2NvbXBh
c3MuanBnJmFsbG93LWNhY2hpbmc9MSI+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nv
b2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29r
aWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmln
aW4tcGFnZS5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWluLWNyb3Nz
LW9yaWdpbi1wYWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAgYXN5bmMg
ZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYXdhaXQgc2V0Q29va2llKCJpbXBsaWNpdC1zdHJpY3Qi
LCAiNiIsIHsiU2FtZVNpdGUiOiBudWxsLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsK
ICAgICBhd2FpdCBzZXRDb29raWUoInN0cmljdC1iZWNhdXNlLWludmFsaWQtU2FtZVNpdGUtdmFs
dWUiLCAiNiIsIHsiU2FtZVNpdGUiOiAiaW52YWxpZCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6
ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgibGF4IiwgIjYiLCB7IlNhbWVTaXRlIjogIkxh
eCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwotICAgIHdpbmRvdy5sb2NhdGlvbi5o
cmVmID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBo
cD9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJj
ZXMvY2xpY2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZy
YW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLnB5IjsKKyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9
ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9
aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvY2xp
Y2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWlu
LWNyb3NzLW9yaWdpbi1wYWdlLnB5IjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3At
bGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBh
Z2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2Ft
ZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlm
cmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZl
bC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRl
c3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjQiLCB7IlNhbWVT
aXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0
Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjQiLCB7IlNh
bWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBh
d2FpdCBzZXRDb29raWUoImxheCIsICI0IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6
IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8v
bG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0Ev
LzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVy
bGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0YXJnZXQlM0RfdG9wIjsK
KyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3Vy
Y2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29r
aWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvY2xpY2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNo
LWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1pbi1jcm9z
cy1vcmlnaW4tcGFnZS5weSUyNnRhcmdldCUzRF90b3AiOwogfQogcnVuVGVzdCgpOwogPC9zY3Jp
cHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNo
LWluLWNyb3NzLW9yaWdpbi1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUu
aHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVz
L3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTExLDcgKzExLDcgQEAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYXdhaXQg
c2V0Q29va2llKCJpbXBsaWNpdC1zdHJpY3QiLCAiMyIsIHsiU2FtZVNpdGUiOiBudWxsLCAiTWF4
LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoInN0cmljdC1i
ZWNhdXNlLWludmFsaWQtU2FtZVNpdGUtdmFsdWUiLCAiMyIsIHsiU2FtZVNpdGUiOiAiaW52YWxp
ZCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgi
bGF4IiwgIjMiLCB7IlNhbWVTaXRlIjogIkxheCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIv
In0pOwotICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBocD9zcmM9aHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nv
b2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0
bWwiOworICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5P3NyYz1odHRwOi8vbG9jYWxob3N0OjgwMDAvY29v
a2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUuaHRt
bCI7CiB9CiBydW5UZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2
MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3ggewogICAgICAg
aGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJraXQtYm9yZGVy
LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWJv
cmRlci1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3Jk
ZXIxLmpwZyIpIDEwIDEwIDEwIDEwIHN0cmV0Y2g7CisgICAgICAtd2Via2l0LWJvcmRlci1pbWFn
ZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWJvcmRlci1p
bWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3JkZXIxLmpw
ZyIpIDEwIDEwIDEwIDEwIHN0cmV0Y2g7CiAgICAgfQogICAgIAogICAgIC5ib3JkZXJlZCB7Ci0g
ICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMi5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOworICAgICAg
LXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9Ym9yZGVyMi5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOwogICAgIH0KICAgICAK
ICAgPC9zdHlsZT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1s
b2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3Nz
LWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvY3NzLWltYWdlLWxvYWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwy
NiArOSwyNiBAQAogICAgIC5ib3ggewogICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQxLmpwZyIpOworICAgICAgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1p
bWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5k
MS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLmJhY2tncm91bmQgewotICAgICAgYmFja2dyb3Vu
ZC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dy
b3VuZDIuanBnIik7CisgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOwogICAgIH0KICAgICAKICAg
ICAuY29udGVudCB7Ci0gICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMS5qcGciKTsKKyAgICAgIGNvbnRlbnQ6IHVybCgi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTEuanBnIik7
CiAgICAgfQogCiAgICAgLnRlc3QgewotICAgICAgY29udGVudDogdXJsKCIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTIuanBnIikgImZvb3B5IiB1cmwo
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2Fk
aW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMy5qcGci
KTsKKyAgICAgIGNvbnRlbnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9Y29udGVudC1pbWFnZTIuanBnIikgImZvb3B5IiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UzLmpwZyIpOwogICAgIH0KICAgICAKICAgICB1
bCB7Ci0gICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1saXN0LWltYWdlMS5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6
IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTEuanBn
Iik7CiAgICAgfQogICAgIC5saXN0IHsKLSAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UyLmpwZyIpOworICAg
ICAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1saXN0LWltYWdlMi5qcGciKTsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1z
aGFwZS5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9jc3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3
IEBACiAgICAgICAgIGZsb2F0OiBsZWZ0OwogICAgICAgICB3aWR0aDogMjAwcHg7CiAgICAgICAg
IGhlaWdodDogMjAwcHg7Ci0gICAgICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCIvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocD9uYW1lPXNxdWFyZTEwMC5wbmcmc3RhbGxBdD0wJnN0
YWxsRm9yPTEiKTsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoIi9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucHk/bmFtZT1zcXVhcmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZv
cj0xIik7CiAgICAgfQogPC9zdHlsZT4KIDwvaGVhZD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY3NzL2ZvbnQtZmFjZS1zcmMtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2ZvbnQtZmFjZS1zcmMtbG9hZGluZy5odG1sCShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Utc3JjLWxv
YWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNyBAQCBmdW5jdGlvbiBzdGFy
dFRlc3QoKSB7CiAgICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PSB4aHIuRE9ORSkKICAgICAg
ICAgICAgIGZvcmNlU3R5bGVTZWxlY3RvclJlY3JlYXRpb24oKTsKICAgICB9OwotICAgIHhoci5v
cGVuKCdHRVQnLCAnL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwPycgKyBmaWxlbmFtZSwg
dHJ1ZSk7CisgICAgeGhyLm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5w
eT8nICsgZmlsZW5hbWUsIHRydWUpOwogICAgIHhoci5zZW5kKCk7CiB9CiAKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL21hc2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL21hc2staW1hZ2UtbG9hZGluZy5odG1sCShy
ZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdl
LWxvYWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3gg
ewogICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJr
aXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tYXNrMS5qcGciKTsKKyAgICAgIC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1tYXNrLWltYWdlLWxvYWRpbmcm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAg
ICAKICAgICAubWFza2VkIHsKLSAgICAgIC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5n
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKKyAgICAgIC13
ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWNzcy1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1hc2syLmpwZyIpOwogICAgIH0KICAgICAKICAgPC9zdHlsZT4KSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVmbGVjdGlvbi1tYXNr
LWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvcmVmbGVjdGlvbi1tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3ggewogICAgICAgaGVpZ2h0OiAxMDBweDsK
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEw
cHggdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNp
dG9uLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWFzazEuanBnIik7CisgICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2st
aW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBn
Iik7CiAgICAgfQogICAgIAogICAgIC5yZWZsZWN0ZWQgewotICAgICAgLXdlYmtpdC1ib3gtcmVm
bGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y3NzLXJlZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKKyAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJl
bG93IDEwcHggdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLXJl
ZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tYXNrMi5qcGciKTsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1s
b2FkLTItZXhwZWN0ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTItZXhwZWN0ZWQu
aHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVy
dGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0aW9uIGxvYWRB
bmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAgICAgCiAg
ICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3Mv
dmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUt
YWZ0ZXItaW1hZ2UtbG9hZC0yLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQt
Mi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0PgogICAgIGZ1
bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAg
ICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLWV4
cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVy
dGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLWV4cGVjdGVkLmh0bWwJKHJl
dmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFs
aWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC05LDcgKzksNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0
aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2Fs
LWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMy5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTUsNyArMTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBs
b2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAg
IAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGln
bi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjI2
OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5
LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAg
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgp
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGlu
ZS1hZnRlci1pbWFnZS1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1sCShy
ZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1h
bGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1
LDcgKzE1LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVz
dC1sb2dnaW5nLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3Jl
c291cmNlcy9yZXF1ZXN0LWxvZ2dpbmcuanMJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1ZXN0LWxvZ2dpbmcuanMJKHdvcmtpbmcg
Y29weSkKQEAgLTMsNyArMyw3IEBAIHZhciBSZXNvdXJjZUxvZ2dpbmcgPSB7CiAgICAgewogICAg
ICAgICB0cnkgewogICAgICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAg
ICAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD0iICsgdGhpcy50ZXN0TmFtZSArICImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7Cisg
ICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD0iICsgdGhpcy50ZXN0TmFtZSArICImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CiAg
ICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9u
c2VUZXh0OwogICAgICAgICB9IGNhdGNoIChleCkgewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25zZS1ib2R5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25zZS1ib2R5Lmh0bWwJKHJldmlzaW9u
IDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVzcG9uc2Ut
Ym9keS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBAIHByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAgICAgdmFyIGNsb25l
OwotICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCcpLnRoZW4oZnVuY3Rpb24ocmVzKSB7CisgICAgcmV0
dXJuIGZldGNoKCcvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRp
b249MiZkZWxheT0xMDAnKS50aGVuKGZ1bmN0aW9uKHJlcykgewogICAgICAgICBhc3NlcnRfZXF1
YWxzKHJlcy5zdGF0dXMsIDIwMCk7CiAgICAgICAgIC8vIEFsbCBkYXRhIHNob3VsZCBub3QgYmUg
ZW5xdWV1ZWQgeWV0LgogICAgICAgICBjbG9uZSA9IHJlcy5jbG9uZSgpOwpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZldGNoaW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZldGNo
aW5nLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNCw3ICsx
NCw3IEBACiAgICAgICAgIAogdmFyIHRlc3QgPSBhc3luY190ZXN0KCJFbnN1cmluZyB0aGF0IGZl
dGNoIHJlc3BvbnNlIGJvZHkgcHJvbWlzZSBpcyBub3QgZnVsZmlsbGVkIHdoZW4gd2luZG93IGlz
IGNsb3NlZCIpOwogdGVzdC5zdGVwKGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTEwMDAi
OworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/
aXRlcmF0aW9uPTUmZGVsYXk9MTAwMCI7CiAgICAgZmV0Y2godXJsKS50aGVuKHRlc3Quc3RlcF9m
dW5jKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uu
c3RhdHVzLCAyMDApOwogICAgICAgICByZXNwb25zZS50ZXh0KCkudGhlbih0ZXN0LnN0ZXBfZnVu
YyhmdW5jdGlvbihidWZmZXIpIHsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gv
ZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgtcmVmZXJyZXIuaHRtbAkocmV2aXNpb24g
Mjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKICAgPGJvZHk+CiAg
ICAgPHNjcmlwdD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybCA9ICJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5w
aHA/aXRlcmF0aW9uPTEmZGVsYXk9MSZjb3JzPXRydWUiOworICAgIHZhciB1cmwgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRl
cmF0aW9uPTEmZGVsYXk9MSZjb3JzPXRydWUiOwogICAgIHJldHVybiBmZXRjaCh1cmwsIHsibW9k
ZSI6ICJjb3JzIiwgInJlZmVycmVyIjogImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZWZlcnJlciJ9
KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnR5
cGUsICJjb3JzIik7CiAgICAgICAgIHJldHVybiByZXNwb25zZS5hcnJheUJ1ZmZlcigpLnRoZW4o
KGFycmF5QnVmZmVyKSA9PiB7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Zl
dGNoaW5nLXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1l
LXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAy
NzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUtcmVz
b3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTEsMTEgKzEsMTEgQEAKIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBp
biBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRy
dWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxo
b3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9u
PTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nl
c3MgY29udHJvbCBjaGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9h
ZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0
PTEgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90
IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50
aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9h
ZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVz
dD0yIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNo
IEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93
Q2FjaGU9dHJ1ZSZ0ZXN0PTIgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KIENPTlNPTEUg
TUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29udHJvbC1BbGxvdy1Pcmln
aW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNo
IEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxv
d0NhY2hlPXRydWUmdGVzdD0zIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCitDT05TT0xF
IE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAm
Y29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNo
ZWNrcy4KIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29u
dHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xF
IE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAw
JmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBj
aGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9j
YWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRp
b249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQgZHVlIHRvIGFj
Y2VzcyBjb250cm9sIGNoZWNrcy4KIAogUEFTUyBFbnN1cmUgY29ycyBjaGVja3Mgd29yayB3aGVu
IGxvYWRpbmcgaW4gcGFyYWxsZWwgdGhlIHNhbWUgcmVzb3VyY2Ugd2l0aCBkaWZmZXJlbnQgbW9k
ZXMKIFBBU1MgRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIHN1Y2Nlc3NpdmVs
eSB0aGUgc2FtZSByZXNvdXJjZSB3aXRoIGRpZmZlcmVudCBtb2RlcwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50
LW9wdGlvbnMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNo
L2ZldGNoaW5nLXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy5odG1sCShyZXZp
c2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNh
bWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC05LDggKzksOCBAQAogICA8Ym9keT4KICAgICA8c2NyaXB0PgogcHJvbWlzZV90ZXN0KGZ1bmN0
aW9uKHQpIHsKLSAgICB2YXIgdXJsMSA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2Vz
L2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9
dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKLSAgICB2YXIgdXJsMiA9ICJodHRwOi8vbG9j
YWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIjsKKyAgICB2
YXIgdXJsMSA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTEiOworICAgIHZhciB1cmwyID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZj
b3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiI7CiAgICAgcmV0dXJuIFByb21pc2UuYWxs
KFsKICAgICAgICAgICAgIGZldGNoKHVybDEsIHsibW9kZSI6ICJuby1jb3JzIn0pLnRoZW4oKHJl
c3BvbnNlKSA9PiB7CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBl
LCAib3BhcXVlIik7CkBAIC0zNiw4ICszNiw4IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7
CiB9LCAnRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVsIHRo
ZSBzYW1lIHJlc291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzJyk7CiAKIHByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybDMgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZj
b3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7Ci0gICAgdmFyIHVybDQgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9NCI7Cisg
ICAgdmFyIHVybDMgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0Nh
Y2hlPXRydWUmdGVzdD0zIjsKKyAgICB2YXIgdXJsNCA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAv
cmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0x
MDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOwogICAgIHJldHVybiBmZXRjaCh1
cmwzLCB7Im1vZGUiOiAiY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICBhc3Nl
cnRfZXF1YWxzKHJlc3BvbnNlLnR5cGUsICJjb3JzIik7CiAgICAgICAgIHJldHVybiByZXNwb25z
ZS5hcnJheUJ1ZmZlcigpLnRoZW4oKGFycmF5QnVmZmVyKSA9PiB7CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5LXdoaWxlLWxvYWRpbmcuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1i
b2R5LXdoaWxlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEzLDcgKzEzLDcgQEAKICAgICA8c2NyaXB0PgogCiBwcm9taXNlX3Rl
c3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIw
MCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCku
dGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNl
LnN0YXR1cywgMjAwKTsKQEAgLTI3LDcgKzI3LDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkg
ewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS50ZXh0KCkgd2hlbiBzdGlsbCBmZXRjaGlu
ZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0y
MDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsK
ICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAg
IGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCAyMDApOwpAQCAtNDEsNyArNDEsNyBAQCBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7CiB9LCAiVGVzdGluZyBjYWxsaW5nIFJlc3BvbnNlLmFy
cmF5QnVmZmVyKCkgd2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChm
dW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsK
ICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVu
KGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3Rh
dHVzLCAyMDApOwpAQCAtNTUsNyArNTUsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7CiB9
LCAiVGVzdGluZyBjYWxsaW5nIFJlc3BvbnNlLmJsb2IoKSB3aGVuIHN0aWxsIGZldGNoaW5nIGRh
dGEiKTsKIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7
CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9p
dGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5nRmxhZyA9IGZhbHNlOwogICAg
IHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RlY29kZS1zbG93LWxvYWQtc3Rh
dGljLWltYWdlLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW1hZ2VzL2RlY29kZS1zbG93LWxvYWQtc3RhdGljLWltYWdlLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTUsNyArNSw3IEBACiAgICAgPGRpdj48L2Rpdj4KICAgICA8c2NyaXB0PgogICAgICAg
ICBmdW5jdGlvbiByZWplY3RlZEltYWdlU291cmNlVVJMKCkgewotICAgICAgICAgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCIKKyAg
ICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5weSIKICAgICAgICAgICAgICAgICAgKyAiP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFn
ZXMvcmVzb3VyY2VzLzEwMHgxMDAtcmVkLnBzZCIgCiAgICAgICAgICAgICAgICAgICsgIiZtaW1l
VHlwZT1pbWFnZSUyRnZuZC5hZG9iZS5waG90b3Nob3AiCiAgICAgICAgICAgICAgICAgICsgIiZz
dGFsbEF0PTEwMjQiOwpAQCAtMTMsNyArMTMsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgZnVu
Y3Rpb24gcmVzb2x2ZWRJbWFnZVNvdXJjZVVSTCgpIHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAg
ICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucHkiCiAgICAgICAgICAgICAgICAgICsgIj9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jl
c291cmNlcy9ncmVlbi00MDB4NDAwLnBuZyIgCiAgICAgICAgICAgICAgICAgICsgIiZtaW1lVHlw
ZT1pbWFnZSUyRnBuZyIKICAgICAgICAgICAgICAgICAgKyAiJnN0YWxsQXQ9MTAyNCI7CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1sb2FkLWxh
cmdlLWltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFn
ZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYy
NjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1s
b2FkLWxhcmdlLWltYWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDcgQEAKICAg
ICAgICAgLy8gVGhlIG1heGltdW0gYnVmZmVyaW5nIGludGVydmFsIGZvciBJbWFnZVJlc291cmNl
IGlzIDUwMG1zLiBDaG9vc2Ugc3RhbGxGb3IKICAgICAgICAgLy8gc3VjaCB0aGF0IHRoZSBpbWFn
ZSBidWZmZXJpbmcgaXMgZGlzYWJsZWQgaW4gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KICAgICAgICAg
ZnVuY3Rpb24gc2xvd0xhcmdlSW1hZ2VTb3VyY2VVUkwoKSB7Ci0gICAgICAgICAgICByZXR1cm4g
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIgorICAg
ICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5k
LXN0YWxsLnB5IgogICAgICAgICAgICAgICAgICArICI/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdl
cy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmciIAogICAgICAgICAgICAgICAgICArICImbWlt
ZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAgICAgICAgICAgICAgICsgIiZzdGFsbEF0PTUxMiIKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZ2lmLXByb2dy
ZXNzaXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvZ2lmLXByb2dyZXNzaXZlLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
Niw3ICs2LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRT
dGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gZ2lmSW1hZ2UoKQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9pbWFnZS1zdXBw
b3J0cy12aWRlby5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2ltYWdlcy9pbWFnZS1zdXBwb3J0cy12aWRlby5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDYgKzEsNiBAQAogPHBpY3R1cmU+Ci0gICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVk
aXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwP3ZpZGVvPXRlc3QubXA0IiB0eXBlPSJ2aWRl
by9tcDQiPgotICAgIDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVv
LWlmLWFjY2VwdGVkLnBocD92aWRlbz10ZXN0Lm9ndiIgdHlwZT0idmlkZW8vb2d2Ij4KKyAgICA8
c291cmNlIHNyY3NldD0iL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5w
eT92aWRlbz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KKyAgICA8c291cmNlIHNyY3NldD0i
L3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weT92aWRlbz10ZXN0Lm9n
diIgdHlwZT0idmlkZW8vb2d2Ij4KICAgICA8aW1nIHNyYz0iL3Jlc291cmNlcy9zcXVhcmUxMDAu
cG5nIj4KIDwvcGljdHVyZT4KIDxicj4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL2pwZWctcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjY4KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAK
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rp
b24ganBlZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRp
bmctaW1hZ2UtYm9yZGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNCw3ICs0LDcgQEAKICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdz
LnNldEluY29tcGxldGVJbWFnZUJvcmRlckVuYWJsZWQodHJ1ZSk7CiAKICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9p
bWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0
YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFz
dC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5n
JnN0YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKICAgICAgICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWwJKHJldmlz
aW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1h
Z2Utbm8tYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiAgICAgICAg
IGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VCb3JkZXJFbmFibGVkKGZhbHNl
KTsKIAogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIGltZy5z
cmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHA/
bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcmbWlt
ZVR5cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CisgICAgICAgICAgICBp
bWcuc3JjID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwu
cHk/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcm
bWltZVR5cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CiAKICAgICAgICAg
ICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgICAgICB9LCAwKTsKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL21wNC1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJ
KHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL21wNC1w
YXJ0aWFsLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQAogCiAgICAg
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgICAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwog
ICAgIH0KIAogICAgIGZ1bmN0aW9uIG1wNEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFscGhh
Lmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2Vz
L3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3
LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgp
CiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5k
LXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRt
bAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5n
LXBhcnRpYWwtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsK
KyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucHkiOwogfQogCiBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJl
dmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9n
cmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxvYWQuaHRtbAkocmV2aXNpb24g
Mjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxv
YWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0K
IAogZnVuY3Rpb24gd2VicEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAy
NzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZl
LWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0
dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsK
IH0KIAogZnVuY3Rpb24gd2VicEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
bG9hZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9sb2FkaW5nL3ByZWxvYWQtaW1nLXRlc3QuaHRtbAkocmV2aXNpb24gMjc2MjY4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3ByZWxvYWQtaW1nLXRlc3QuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtNiw3ICs2LDcgQEAKICAgewogICAgICAgIHRyeSB7CiAgICAg
ICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLXBy
ZWxvYWQtaW1nLXRlc3QmY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgIHJlcS5v
cGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
cHJlbG9hZC1pbWctdGVzdCZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgICAgcmVx
LnNlbmQobnVsbCk7CiAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0OwogICAgICAg
IH0gY2F0Y2ggKGV4KSB7CkBAIC00OSw3ICs0OSw3IEBACiAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0IiBzcmM9Ii4vcmVzb3VyY2VzL2VtcHR5LmpzIj48L3NjcmlwdD4KIDwvaGVhZD4K
IDxib2R5IG9ubG9hZD0idGVzdCgpIj4KLSAgPGltZyBpZCA9InRlc3RfaW1hZ2UiIHNyYz0iL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRl
c3QmY29tbWFuZD1pbmNyZWFzZS1yZXNvdXJjZS1jb3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNl
cy9wcmVsb2FkLXRlc3QuanBnIiBvbmVycm9yPSJpbWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1l
b3V0KGNoZWNrQWNjZXNzQ291bnQsIDMwMDApIj4KKyAgPGltZyBpZCA9InRlc3RfaW1hZ2UiIHNy
Yz0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctcHJlbG9hZC1p
bWctdGVzdCZjb21tYW5kPWluY3JlYXNlLXJlc291cmNlLWNvdW50JnBhdGg9L2xvYWRpbmcvcmVz
b3VyY2VzL3ByZWxvYWQtdGVzdC5qcGciIG9uZXJyb3I9ImltZ19lcnJvcigpIiBvbmxvYWQ9InNl
dFRpbWVvdXQoY2hlY2tBY2Nlc3NDb3VudCwgMzAwMCkiPgogICA8cD5UaGlzIHRlc3QgaXMgdG8g
dGVzdCB3aGV0aGVyIHByZWxvYWQgaW1hZ2Ugd2lsbCByZXF1aXJlIDIgbW9yZSByZXF1ZXN0cyBv
ciBub3QuPC9wPgogICA8c3BhbiBpZD0ib3V0cHV0UGFuZWwiPlBBU1NFRDwvc3Bhbj4KIDwvYm9k
eT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXItcHJlbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZC5odG1sCShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBA
QAogICAgIHsKICAgICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVl
c3Q7Ci0gICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
JmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgcmVxLnNlbmQobnVsbCk7CiAgICAg
ICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQz
LDM1ICs0MywzNSBAQAogICA8L3NjcmlwdD4KICAgCiAgIDwhLS0gVGhpcyB3aWxsIHRyaWdnZXIg
dGhlIHByZWxvYWQgc2Nhbm5lciAtLT4KLSAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1zY3JpcHQuanMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KIAotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNz
cyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KLSAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWJyYWlsbGUtc2NyZWVuLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3Jl
ZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0iYXVyYWwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hdXJhbC5jc3Mi
PgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhhbmRo
ZWxkLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtdHR5LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+Ci0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1l
bXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmlu
dC0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1wcmludC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS5jc3MiPgorICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFuZGhlbGQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhbi1oYW5kaGVsZC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJv
amVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR2
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+Cisg
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLWVtcHR5LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcmludC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0yLmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkiIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CiAg
IAogPC9oZWFkPgogPGJvZHk+Ci0gIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9aW1h
Z2UuanBnIj4KLSAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1zY3JpcHQtMi5q
cyI+PC9zY3JpcHQ+CisgIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1pbWFnZS5qcGci
PgorICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJl
bG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2Ny
aXB0PgogCiAgIFRlc3Qgc3R5bGVzaGVldCBsb2FkIHNjaGVkdWxpbmcgd2l0aCBwcmVsb2FkIHNj
YW5uZXIuIFJlc291cmNlIGxvYWRzIGZvciBzY3JlZW4gc3R5bGVzaGVldHMgc2hvdWxkIGJlIHNj
aGVkdWxlZCBmaXJzdCwgb3RoZXJzIHNob3VsZCBiZSBzY2hlZHVsZWQgbGFzdC4KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xNCw3ICsxNCw3IEBACiAgICAgewogICAgICB0cnkgewogICAgICAgICAgdmFy
IHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2Up
OworICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgIHJlcS5zZW5kKG51bGwp
OwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNwb25zZVRleHQ7CiAgICAgIH0gY2F0Y2ggKGV4KSB7
CkBAIC00MiwzMyArNDIsMzMgQEAKICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcs
IGVuZFRlc3QsIGZhbHNlKTsKICAgPC9zY3JpcHQ+CiAKLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxs
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1wcmludC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+Ci0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1zY3JlZW4tcXVlcnktZmFpbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYXVyYWwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
YnJhaWxsZS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFuZGhlbGQiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhhbmRoZWxkLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByb2pl
Y3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InR2IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LTIuY3Nz
Ij4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1hbGwtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQi
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0y
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3Mt
Mi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CisgIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1w
dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWFsbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJp
bnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmludC5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6
IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWF1cmFsLmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtYnJhaWxsZS5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFu
ZGhlbGQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcm9qZWN0aW9uLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9InR2IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlhLTIuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LTIu
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLWFsbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmlu
dCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0y
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy0y
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CiAgIAogPC9o
ZWFkPgogPGJvZHk+Ci0gIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxz
Y3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CisgIDxpbWcgc3Jj
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1z
Y3JpcHQuanMiPjwvc2NyaXB0PgogCiAgIFRlc3Qgc3R5bGVzaGVldCBsb2FkIHNjaGVkdWxpbmcu
IFJlc291cmNlIGxvYWRzIGZvciBzY3JlZW4gc3R5bGVzaGVldHMgc2hvdWxkIGJlIHNjaGVkdWxl
ZCBmaXJzdCwgb3RoZXJzIHNob3VsZCBiZSBzY2hlZHVsZWQgbGFzdC4KIApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1v
cGVuLXBhbmVsLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2Nh
bC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWwJKHJldmlz
aW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxl
LWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
Niw3ICsxNiw3IEBAIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogZnVuY3Rpb24gb25GaWxlQ2hhbmdl
KGZpbGUsIGZpbGVQYXRoKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsK
LSAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmls
ZS1sYXN0LW1vZGlmaWVkLnBocD9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBm
YWxzZSk7CisgICAgeGhyLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weT9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQ
YXRoLCBmYWxzZSk7CiAgICAgeGhyLnNlbmQoKTsKICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3
IERhdGUocGFyc2VJbnQoeGhyLnJlc3BvbnNlVGV4dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFs
RGF0ZSA9IGZpbGUubGFzdE1vZGlmaWVkOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9s
b2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRtbAko
cmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3ICsxMyw3IEBA
IGRlc2NyaXB0aW9uKCJUZXN0IEZpbGUubGFzdE1vZGlmaWVkRGF0ZS4KIGZ1bmN0aW9uIG9uRmls
ZURyb3AoZmlsZSwgZmlsZVBhdGgpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVz
dCgpOwotICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9maWxlLWxhc3QtbW9kaWZpZWQucGhwP3BhdGg9Li4vbG9jYWwvZmlsZWFwaS8iICsgZmlsZVBh
dGgsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5P3BhdGg9Li4vbG9jYWwvZmlsZWFwaS8iICsg
ZmlsZVBhdGgsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogICAgIHZhciBleHBlY3RlZERhdGUg
PSBuZXcgRGF0ZShwYXJzZUludCh4aHIucmVzcG9uc2VUZXh0KSAqIDEwMDApOwogICAgIHZhciBh
Y3R1YWxEYXRlID0gZmlsZS5sYXN0TW9kaWZpZWQ7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAtZmlsZS11dGlscy5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAt
ZmlsZS11dGlscy5qcwkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNyArMSw3IEBACiBmdW5jdGlvbiBjcmVhdGVUZW1wRmlsZShmaWxlTmFtZSwgZmls
ZURhdGEpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5v
cGVuKCJQT1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1m
aWxlLnBocD9maWxlbmFtZT0iICsgZmlsZU5hbWUgKyAiJmRhdGE9IiArIGZpbGVEYXRhLCBmYWxz
ZSk7CisgICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy93cml0ZS10ZW1wLWZpbGUucHk/ZmlsZW5hbWU9IiArIGZpbGVOYW1lICsgIiZkYXRhPSIgKyBm
aWxlRGF0YSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiAgICAgaWYgKHhoci5zdGF0dXMgIT0g
MjAwKSB7CiAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgcmVzcG9uc2Ugc3RhdHVzIHJl
Y2VpdmVkOiAiICsgeGhyLnN0YXR1cyk7CkBAIC0yMCwxMyArMjAsMTMgQEAgZnVuY3Rpb24gY3Jl
YXRlVGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYQogZnVuY3Rpb24gdG91Y2hUZW1wRmlsZShmaWxl
TmFtZSkKIHsKICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9w
ZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy90b3VjaC10ZW1wLWZp
bGUucGhwP2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NU
IiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnB5P2Zp
bGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CiAKIGZ1bmN0
aW9uIHJlbW92ZVRlbXBGaWxlKGZpbGVOYW1lKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0
cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxz
ZSk7CisgICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9yZXNldC10ZW1wLWZpbGUucHk/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxzZSk7CiAgICAg
eGhyLnNlbmQoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2sv
dHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLTIuaHRt
bAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFj
ay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLTIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNCw3
ICs0LDcgQEAKIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIHZ0dFRyYWNrKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNs
b3ctbG9hZGluZy5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNCw3ICs0LDcgQEAKIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQog
ewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9s
b2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHZ0dFRyYWNrKCkKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9sYXN0LW1vZGlmaWVkLXBhcnNpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5n
Lmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9s
YXN0LW1vZGlmaWVkLXBhcnNpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNSwxNCArNSwxNCBA
QCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIH0KIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7Ci0g
ICAgZG9jdW1lbnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmll
ZC5waHA/ZGF0ZT0nICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9jdW1l
bnQud3JpdGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9kYXRl
PScgKyBlc2NhcGUodGV4dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnTW9uLCAyMSBO
b3YgMjAwOCAwMTowMzozMyBHTVQnKTsKLXRlc3QoJ1R1ZXNkYXksIDIxIE5vdiAyMDA4IDAxOjAz
OjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMSBOb3YgOTcgMDE6MDM6MzMgR01UJyk7Ci10ZXN0KCdN
b24sIDIxLU5vdi0yMDA4IDAxOjAzOjMzIEdNVCcpOwotdGVzdCgnTW9uLCAyMS1GZWItMjAwOCAw
MTowMzozMyBHTVQnKTsKLXRlc3QoJ01vbiwgMDMtRmViLTIwMDggMDE6MDM6MzMgR01UJyk7Ci10
ZXN0KCdNb24sIDMtTWFyLTIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdUdWUsIDIxIE5vdiAy
MDA4IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnTW9uLCAyMSBOb3YgMTk5NyAwMTowMzozMyBHTVQn
KTsKK3Rlc3QoJ01vbiwgMjEgTm92IDIwMDggMDE6MDM6MzMgR01UJyk7Cit0ZXN0KCdNb24sIDIx
IEZlYiAyMDA4IDAxOjAzOjMzIEdNVCcpOwordGVzdCgnTW9uLCAwMyBGZWIgMjAwOCAwMTowMzoz
MyBHTVQnKTsKK3Rlc3QoJ01vbiwgMDMgTWFyIDIwMDggMDE6MDM6MzMgR01UJyk7CiA8L3Njcmlw
dD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL25vLWxhc3QtbW9k
aWZpZWQuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL25vLWxhc3QtbW9kaWZpZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMyw3ICszLDcgQEAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogCiBm
dW5jdGlvbiB0ZXN0KHRleHQpIHsKLSAgICBkb2N1bWVudC53cml0ZSgnPGlmcmFtZSBzcmM9Ii4u
L3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnBocD9kYXRlPScgKyBlc2NhcGUodGV4dCkgKyAnIj48
L2lmcmFtZT4nKTsKKyAgICBkb2N1bWVudC53cml0ZSgnPGlmcmFtZSBzcmM9Ii4uL3Jlc291cmNl
cy9sYXN0LW1vZGlmaWVkLnB5P2RhdGU9JyArIGVzY2FwZSh0ZXh0KSArICciPjwvaWZyYW1lPicp
OwogfQogCiB0ZXN0KCcnKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9yZXBl
YXQtb3Blbi1jYW5jZWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9yZXBlYXQtb3Blbi1jYW5jZWwuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNSwxMiArNSwxMiBAQCB2YXIgcmVwZWF0Q291bnQgPSAwOwogCiBmdW5jdGlvbiBz
ZW5kUmVxdWVzdCgpIHsKICAgICB2YXIgZmlyc3RSZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsK
LSAgICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgt
ZGVsYXkucGhwP2l0ZXJhdGlvbj0xMDAmZGVsYXk9MSIpOworICAgIGZpcnN0UmVxLm9wZW4oIkdF
VCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MTAw
JmRlbGF5PTEiKTsKIAogICAgIGZpcnN0UmVxLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9u
KCkgewogICAgICAgICBpZiAoZmlyc3RSZXEucmVhZHlTdGF0ZSA9PSBmaXJzdFJlcS5IRUFERVJT
X1JFQ0VJVkVEKSB7CiAgICAgICAgICAgICB2YXIgc2Vjb25kUmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0KCk7Ci0gICAgICAgICAgICBzZWNvbmRSZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvZG93
bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MTAmZGVsYXk9MCIpOworICAgICAg
ICAgICAgc2Vjb25kUmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0
aC1kZWxheS5weT9pdGVyYXRpb249MTAmZGVsYXk9MCIpOwogCiAgICAgICAgICAgICBzZWNvbmRS
ZXEub25sb2FkID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgaWYgKHJlcGVhdENvdW50
KysgPCA0MCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5n
LWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwJ
KHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbmF2aWdhdGlvbi9w
ZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMyw3
ICszLDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgdGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiB9Ci13aW5kb3cubG9jYXRp
b24gPSAiLi4vcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhwIjsKK3dpbmRvdy5sb2NhdGlv
biA9ICIuLi9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weSI7CiA8L3NjcmlwdD48c2NyaXB0
PgogYWxlcnQoJ0ZBSUwgMSBvZiAzJyk7CiA8L3NjcmlwdD48c2NyaXB0PgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2RlbGF5aW5nX29ubG9hZF9saW5rX3ByZWxvYWRfYWZ0
ZXJfZGlzY292ZXJ5X2ltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9wcmVsb2FkL2RlbGF5aW5nX29ubG9hZF9saW5rX3ByZWxvYWRfYWZ0ZXJfZGlzY292ZXJ5
X2ltYWdlLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cHJlbG9hZC9kZWxheWluZ19vbmxvYWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFn
ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICAgIHZhciBmaW5pc2hlZElt
YWdlID0gZmFsc2U7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMv
anMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08bGluayByZWw9cHJlbG9hZCBocmVmPSIuLi9yZXNvdXJj
ZXMvc2xvdy1pbWFnZS5waHAiIGFzPWltYWdlIG9ubG9hZD0iZmluaXNoZWRJbWFnZSA9IHRydWU7
Ij4KKzxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Ii4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5IiBh
cz1pbWFnZSBvbmxvYWQ9ImZpbmlzaGVkSW1hZ2UgPSB0cnVlOyI+CiA8Ym9keT4KIDxzY3JpcHQ+
CiAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKQEAgLTE1
LDcgKzE1LDcgQEAKICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgfSk7CiAg
ICAgdmFyIGltZyA9IG5ldyBJbWFnZSgpOwotICAgIGltZy5zcmMgPSAiLi4vcmVzb3VyY2VzL3Ns
b3ctaW1hZ2UucGhwIjsKKyAgICBpbWcuc3JjID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5
IjsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7CiA8L3NjcmlwdD4KIDwvYm9k
eT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9keW5hbWljX3JlbW92ZV9w
cmVsb2FkX2hyZWYuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3By
ZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHJldmlzaW9uIDI3NjI2OCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9keW5hbWljX3JlbW92ZV9wcmVsb2Fk
X2hyZWYuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCwxNCArOCwxNCBAQAogICAgIGxpbmsuYXMg
PSAiaW1hZ2UiOwogICAgIGxpbmsucmVsID0gInByZWxvYWQiOwogICAgIC8vIENhY2hlLWJ1c3Rp
bmcgaXMgbmVlZGVkIGZvciBzbG93IHJlc291cmNlcy4KLSAgICBsaW5rLmhyZWYgPSAiLi4vcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgbGluay5o
cmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5P3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7
CiAgICAgdmFyIGRvd25sb2FkZWRJbWFnZSA9IGZhbHNlOwogICAgIGRvY3VtZW50LmJvZHkuYXBw
ZW5kQ2hpbGQobGluayk7CiAgICAgbGluay5ocmVmID0gIiI7CiAgICAgd2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKICAgICAgICAgdmFyIGVudHJpZXMgPSBwZXJm
b3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpOwogICAgICAgICBmb3IgKHZhciBp
ID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAgIGlmIChlbnRyaWVz
W2ldLm5hbWUuaW5kZXhPZigic2xvdy1pbWFnZS5waHAiKSAhPSAtMSkKKyAgICAgICAgICAgIGlm
IChlbnRyaWVzW2ldLm5hbWUuaW5kZXhPZigic2xvdy1pbWFnZS5weSIpICE9IC0xKQogICAgICAg
ICAgICAgICAgIGRvd25sb2FkZWRJbWFnZSA9IHRydWU7CiAgICAgICAgIH0KICAgICAgICAgc2hv
dWxkQmVGYWxzZSgiZG93bmxvYWRlZEltYWdlIik7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVyeS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZGVs
YXlpbmdfd2luZG93X29ubG9hZF9iZWZvcmVfZGlzY292ZXJ5Lmh0bWwJKHJldmlzaW9uIDI3NjI2
OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZGVsYXlpbmdfd2luZG93
X29ubG9hZF9iZWZvcmVfZGlzY292ZXJ5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIw
LDcgQEAKICAgICAvLyBUaGUgcmFuZCB2YWx1ZSBpcyBuZWNlc3NhcnkgdG8gY2FjaGUtYnVzdCBz
bG93IHJlc291cmNlcy4KICAgICB2YXIgcmFuZCA9IE1hdGgucmFuZG9tKCk7CiAgICAgZG9jdW1l
bnQud3JpdGUoIjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9zbG93LXNjcmlw
dC5wbD9kZWxheT0yMDA7cmFuZD0iICsgcmFuZCArICInIGFzPXNjcmlwdCBvbmxvYWQ9J3dpbmRv
dy5maW5pc2hlZFNjcmlwdCA9IHRydWU7IHRlc3QoKTsnPiIpOwotICAgIGRvY3VtZW50LndyaXRl
KCI8bGluayByZWw9cHJlbG9hZCBocmVmPScuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHA/cmFu
ZD0iICsgcmFuZCArICInIGFzPWltYWdlIG9ubG9hZD0nd2luZG93LmZpbmlzaGVkSW1hZ2UgPSB0
cnVlOyB0ZXN0KCk7Jz4iKTsKKyAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQg
aHJlZj0nLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHk/cmFuZD0iICsgcmFuZCArICInIGFzPWlt
YWdlIG9ubG9hZD0nd2luZG93LmZpbmlzaGVkSW1hZ2UgPSB0cnVlOyB0ZXN0KCk7Jz4iKTsKIDwv
c2NyaXB0PgogPGJvZHk+CiA8c2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9w
cmVsb2FkL25vdF9ldmljdGluZ19wcmVsb2FkX2F0X29ubG9hZC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9v
bmxvYWQuaHRtbAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9w
cmVsb2FkL25vdF9ldmljdGluZ19wcmVsb2FkX2F0X29ubG9hZC5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC04LDcgKzgsNyBAQAogPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgLy8gVGhlIHJhbmQgdmFsdWUgaXMgbmVjZXNz
YXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCi0gICAgdmFyIGltYWdlVVJMID0gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHA/cmFuZD0iICsgTWF0
aC5yYW5kb20oKTsKKyAgICB2YXIgaW1hZ2VVUkwgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9zbG93LWltYWdlLnB5P3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CiAgICAgZnVuY3Rp
b24gdGVzdCgpIHsKICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAg
IHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShpbWFnZVVSTCkubGVu
Z3RoOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMtYXV0aC5w
aHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMt
YXV0aC5waHAJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2Jhc2ljLWF1dGgucGhwCShub25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotPD9w
aHAKLSAgaWYgKCFpc3NldCgkX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddKSB8fCAhaXNzZXQoJF9S
RVFVRVNUWyd1aWQnXSkgfHwgKCRfUkVRVUVTVFsndWlkJ10gIT0gJF9TRVJWRVJbJ1BIUF9BVVRI
X1VTRVInXSkpIHsKLSAgIGhlYWRlcignV1dXLUF1dGhlbnRpY2F0ZTogQmFzaWMgcmVhbG09Ildl
YktpdCBUZXN0IFJlYWxtIicpOwotICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVk
Jyk7Ci0gICBlY2hvICdBdXRoZW50aWNhdGlvbiBjYW5jZWxlZCc7Ci0gICBleGl0OwotICB9IGVs
c2UgewotICAgZWNobyAiVXNlcjogeyRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ119LCBwYXNzd29y
ZDogeyRfU0VSVkVSWydQSFBfQVVUSF9QVyddfS4iOwotICB9Ci0/PgpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9hdXRo
b3JpemUucGhwCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kaWdlc3QtYXV0aC9hdXRob3JpemUucGhwCShub25leGlzdGVudCkKQEAgLTEsMTkg
KzAsMCBAQAotPD9waHAKLQotcmVxdWlyZV9vbmNlICJkaWdlc3QucGhwIjsKLQotaWYgKGVtcHR5
KCRfU0VSVkVSWydQSFBfQVVUSF9ESUdFU1QnXSkpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4wIDQw
MSBVbmF1dGhvcml6ZWQnKTsKLSAgICBoZWFkZXIoIldXVy1BdXRoZW50aWNhdGU6IERpZ2VzdCBy
ZWFsbT1cInskcmVhbG19XCIscW9wPVwiYXV0aFwiLG5vbmNlPVwieyRub25jZX1cIixvcGFxdWU9
XCJ7JG9wYXF1ZX1cIiIpOwotCi0gICAgZWNobyAiPGgxPllvdSBhcmUgbm90IGFsbG93ZWQgdG8g
c2VlIHRoaXMgc2VjcmV0LjwvaDE+IjsKLX0gZWxzZWlmICghKCRkYXRhID0gaHR0cF9kaWdlc3Rf
cGFyc2UoJF9TRVJWRVJbJ1BIUF9BVVRIX0RJR0VTVCddKSkpIHsKLSAgICBoZWFkZXIoJ0hUVFAv
MS4wIDQwMSBVbmF1dGhvcml6ZWQnKTsKLSAgICBlY2hvICI8aDE+SW52YWxpZCBjcmVkZW50aWFs
cy48L2gxPiI7Ci19IGVsc2VpZiAoISgkdXNlcm5hbWUgPSB2YWxpZGF0ZV9kaWdlc3QoJGRhdGEp
KSkgewotICAgIGhlYWRlcignSFRUUC8xLjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgIGVjaG8g
IjxoMT5Xcm9uZyBjcmVkZW50aWFscy48L2gxPiI7Ci19IGVsc2UgewotICAgIGhlYWRlcignQ29u
dGVudC1UeXBlOiB0ZXh0L3BsYWluJyk7Ci0gICAgZWNobyAnVXNlcjogJyAuICR1c2VybmFtZSAu
ICJcbiI7Ci19CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3Qt
YXV0aC9kaWdlc3QucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2RpZ2VzdC1hdXRoL2RpZ2VzdC5waHAJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1hdXRoL2RpZ2VzdC5waHAJKG5vbmV4
aXN0ZW50KQpAQCAtMSw1MiArMCwwIEBACi08P3BocAotCi0kcmVhbG0gPSAnRGlnZXN0IEF1dGgg
UHJvdGVjdGVkIEFyZWEnOwotJG5vbmNlID0gdW5pcWlkKCk7Ci0kb3BhcXVlID0gbWQ1KCRyZWFs
bSk7Ci0KLSR1c2VybmFtZSA9ICdldmVyeWJvZHknOwotJHBhc3N3b3JkID0gJ2xvdmVzYmVlcic7
Ci0KLWZ1bmN0aW9uIGh0dHBfZGlnZXN0X3BhcnNlKCR0eHQpCi17Ci0gICAgLy8gcHJvdGVjdCBh
Z2FpbnN0IG1pc3NpbmcgZGF0YQotICAgICRuZWVkZWRfcGFydHMgPSBbCi0gICAgICAgICdub25j
ZScgPT4gMSwKLSAgICAgICAgJ25jJyA9PiAxLAotICAgICAgICAnY25vbmNlJyA9PiAxLAotICAg
ICAgICAncW9wJyA9PiAxLAotICAgICAgICAndXNlcm5hbWUnID0+IDEsCi0gICAgICAgICd1cmkn
ID0+IDEsCi0gICAgICAgICdyZXNwb25zZScgPT4gMQotICAgIF07Ci0gICAgJGRhdGEgPSBbXTsK
LSAgICAka2V5cyA9IGltcGxvZGUoJ3wnLCBhcnJheV9rZXlzKCRuZWVkZWRfcGFydHMpKTsKLQot
ICAgIHByZWdfbWF0Y2hfYWxsKCdAKCcgLiAka2V5cyAuICcpPSg/OihbXCciXSkoW15cMl0rPylc
MnwoW15ccyxdKykpQCcsICR0eHQsICRtYXRjaGVzLCBQUkVHX1NFVF9PUkRFUik7Ci0KLSAgICBm
b3JlYWNoICgkbWF0Y2hlcyBhcyAkbSkgewotICAgICAgICAkZGF0YVskbVsxXV0gPSAkbVszXSA/
ICRtWzNdIDogJG1bNF07Ci0gICAgICAgIHVuc2V0KCRuZWVkZWRfcGFydHNbJG1bMV1dKTsKLSAg
ICB9Ci0KLSAgICByZXR1cm4gJG5lZWRlZF9wYXJ0cyA/IGZhbHNlIDogJGRhdGE7Ci19Ci0KLWZ1
bmN0aW9uIHZhbGlkYXRlX2RpZ2VzdCgkZGF0YSkKLXsKLSAgICBnbG9iYWwgJHJlYWxtLCAkdXNl
cm5hbWUsICRwYXNzd29yZDsKLQotICAgIGlmICgkZGF0YVsndXNlcm5hbWUnXSAhPT0gJHVzZXJu
YW1lKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAkQTEgPSBnZXRfbWQ1X29mKCRkYXRh
Wyd1c2VybmFtZSddLCAkcmVhbG0sICRwYXNzd29yZCk7Ci0gICAgJEEyID0gZ2V0X21kNV9vZigk
X1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSwgJGRhdGFbJ3VyaSddKTsKLSAgICAkdmFsaWRfcmVz
cG9uc2UgPSBnZXRfbWQ1X29mKCRBMSwgJGRhdGFbJ25vbmNlJ10sICRkYXRhWyduYyddLCAkZGF0
YVsnY25vbmNlJ10sICRkYXRhWydxb3AnXSwgJEEyKTsKLQotICAgIHJldHVybiAkZGF0YVsncmVz
cG9uc2UnXSA9PSAkdmFsaWRfcmVzcG9uc2UgPyAkdXNlcm5hbWUgOiBudWxsOwotfQotCi1mdW5j
dGlvbiBnZXRfbWQ1X29mKC4uLiRpdGVtcykKLXsKLSAgICByZXR1cm4gbWQ1KGltcGxvZGUoJzon
LCAkaXRlbXMpKTsKLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5waHAJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHAJKG5vbmV4aXN0ZW50
KQpAQCAtMSwyOSArMCwwIEBACi08P3BocAotaGVhZGVyKCJFeHBpcmVzOiBUaHUsIDAxIERlYyAy
MDAzIDE2OjAwOjAwIEdNVCIpOwotCi1pZiAoJF9HRVRbJ2FsbG93Q2FjaGUnXSkgewotICAgIGhl
YWRlcigiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uIik7Ci19IGVsc2UgewotICAgIGhl
YWRlcigiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LW5vLWJ1ZmZlcmluZy1wbGVhc2UiKTsK
LSAgICBoZWFkZXIoIkNhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVzdC1yZXZh
bGlkYXRlIik7Ci0gICAgaGVhZGVyKCJQcmFnbWE6IG5vLWNhY2hlIik7Ci19Ci0KLWlmICgkX0dF
VFsnY29ycyddKSB7Ci0gICAgaGVhZGVyKCJBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46ICoi
KTsKLX0KLQotJGl0ZXJhdGlvbiA9ICRfR0VUWydpdGVyYXRpb24nXTsKLSRkZWxheSA9ICRfR0VU
WydkZWxheSddOwotCi1lY2hvICJbJGl0ZXJhdGlvbiwgJGRlbGF5ICI7Ci0KLWZvciAoJGkgPSAx
OyAkaSA8PSAkaXRlcmF0aW9uOyArKyRpKSB7Ci0gICAgZWNobyAiLCAkaSwgXCJmb29iYXJcIiI7
Ci0gICAgLy8gRm9yY2UgY29udGVudCB0byBiZSBzZW50IHRvIHRoZSBicm93c2VyIGFzIGlzLgot
ICAgIG9iX2ZsdXNoKCk7Ci0gICAgZmx1c2goKTsKLSAgICB1c2xlZXAoJGRlbGF5ICogMTAwMCk7
Ci19Ci1lY2hvICJdIjsKLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5CShub25leGlz
dGVudCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM4IEBACisjIS91c3IvYmlu
L2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHRpbWUKK2Zyb20g
dXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcworCitxdWVyeSA9IHBhcnNlX3FzKG9zLmVudmly
b24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpCithbGxv
d19jYWNoZSA9IHF1ZXJ5LmdldCgnYWxsb3dDYWNoZScsIFtOb25lXSlbMF0KK2NvcnMgPSBxdWVy
eS5nZXQoJ2NvcnMnLCBbTm9uZV0pWzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0V4cGlyZXM6IFRo
dSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UXHJcbicpCisKK2lmIGFsbG93X2NhY2hlIGlzIG5v
dCBOb25lOgorICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24v
anNvblxyXG4nKQorZWxzZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAnQ29udGVu
dC1UeXBlOiBhcHBsaWNhdGlvbi94LW5vLWJ1ZmZlcmluZy1wbGVhc2VcclxuJworICAgICAgICAn
Q2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG5vLXN0b3JlLCBtdXN0LXJldmFsaWRhdGVcclxuJwor
ICAgICAgICAnUHJhZ21hOiBuby1jYWNoZVxyXG4nCisgICAgKQorCitpZiBjb3JzIGlzIG5vdCBO
b25lOgorICAgIHN5cy5zdGRvdXQud3JpdGUoJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbjog
KlxyXG4nKQorCitzeXMuc3Rkb3V0LndyaXRlKCdcclxuJykKKworaXRlcmF0aW9uID0gaW50KHF1
ZXJ5LmdldCgnaXRlcmF0aW9uJywgWzBdKVswXSkKK2RlbGF5ID0gaW50KHF1ZXJ5LmdldCgnZGVs
YXknLCBbMF0pWzBdKQorCitzeXMuc3Rkb3V0LndyaXRlKCdbe30sIHt9ICcuZm9ybWF0KGl0ZXJh
dGlvbiwgZGVsYXkpKQorCitmb3IgaSBpbiByYW5nZSgxLCBpdGVyYXRpb24gKyAxKToKKyAgICBz
eXMuc3Rkb3V0LndyaXRlKCcsIHt9LCAiZm9vYmFyIicuZm9ybWF0KGkpKQorICAgIHN5cy5zdGRv
dXQuZmx1c2goKQorICAgIHRpbWUuc2xlZXAoZGVsYXkgLyAxMDAwKQorCitzeXMuc3Rkb3V0Lndy
aXRlKCddJykKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weQpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46
ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVy
dHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNy
Yy5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNo
by1pZnJhbWUtc3JjLnBocAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE1
ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQ+Ci1pZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICB0
ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOwotfQotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxpZnJhbWUgc3JjPSI8
P3BocCBlY2hvICRfR0VUWydzcmMnXTsgPz4iPjwvaWZyYW1lPgotPC9ib2R5PgotPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZy
YW1lLXNyYy5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyNSBAQAor
IyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2Zyb20gdXJs
bGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcworCitzcmMgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdl
dCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3NyYycs
IFsnJ10pWzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJc
blxyXG4nKQorCitwcmludCgnJyc8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7eworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgdGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Cit9fQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxp
ZnJhbWUgc3JjPSJ7fSI+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0bWw+JycnLmZvcm1hdChzcmMp
KQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
ZWNoby1pZnJhbWUtc3JjLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0w
LDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZp
ZWQucGhwCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwCShub25leGlzdGVudCkKQEAgLTEsNyArMCwwIEBA
Ci08P3BocAotZGF0ZV9kZWZhdWx0X3RpbWV6b25lX3NldCgnVVRDJyk7Ci0kZmlsZVBhdGggPSAk
X0dFVFsncGF0aCddOwotaWYgKGZpbGVfZXhpc3RzKCRmaWxlUGF0aCkpIHsKLSAgICBlY2hvIGRh
dGUoIlUiLCBmaWxlbXRpbWUoJGZpbGVQYXRoKSk7Ci19Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weQko
bm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxh
c3QtbW9kaWZpZWQucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMiBAQAorIyEvdXNyL2Jp
bi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2Zyb20gdXJsbGliLnBhcnNl
IGltcG9ydCBwYXJzZV9xcworCitwYXRoID0gb3MucGF0aC5hYnNwYXRoKHBhcnNlX3FzKG9zLmVu
dmlyb24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpLmdl
dCgncGF0aCcsIFtfX2ZpbGVfX10pWzBdKQorCitzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworaWYgb3MucGF0aC5pc2ZpbGUocGF0aCk6CisgICAg
c3lzLnN0ZG91dC53cml0ZShzdHIob3Muc3RhdChwYXRoKS5zdF9tdGltZSkuc3BsaXQoJy4nKVsw
XSkKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2ZpbGUtbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQoj
IyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucGhw
CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9s
YXN0LW1vZGlmaWVkLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLSAg
ICAkZGF0ZSA9ICRfR0VUWydkYXRlJ107Ci0gICAgaGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAkZGF0
ZSIpOwotPz4KLTxzY3JpcHQ+Ci1kb2N1bWVudC53cml0ZSgobmV3IERhdGUoZG9jdW1lbnQubGFz
dE1vZGlmaWVkKSkudG9VVENTdHJpbmcoKSk7Ci08L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQkobm9uZXhpc3Rl
bnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnB5
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjAgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMK
KworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQor
ZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK2RhdGUgPSBwYXJzZV9xcyhvcy5l
bnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5n
ZXQoJ2RhdGUnLCBbTm9uZV0pWzBdCisKK2lmIGRhdGUgaXMgTm9uZSBvciBkYXRlID09ICcnOgor
ICAgIGRhdGUgPSBkYXRldGltZS51dGNub3coKS5zdHJmdGltZSgnJWEsICVkICViICVZICVIOiVN
OiVTIEdNVCcpCisKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0xhc3QtTW9kaWZpZWQ6IHt9XHJc
bicKKyAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicuZm9ybWF0KGRhdGUpCisp
CisKK3ByaW50KCcnJzxzY3JpcHQ+Citkb2N1bWVudC53cml0ZSgobmV3IERhdGUoZG9jdW1lbnQu
bGFzdE1vZGlmaWVkKSkudG9VVENTdHJpbmcoKSk7Cis8L3NjcmlwdD4nJycpCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVk
LnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAkocmV2aXNpb24gMjc2MjY4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhw
CShub25leGlzdGVudCkKQEAgLTEsNTAgKzAsMCBAQAotPD9waHAKLSRuYW1lID0gJF9HRVRbJ25h
bWUnXTsKLSRzdGFsbEF0ID0gJF9HRVRbJ3N0YWxsQXQnXTsKLSRzdGFsbEZvciA9ICRfR0VUWydz
dGFsbEZvciddOwotJHN0YWxsUmVwZWF0ID0gJF9HRVRbJ3N0YWxsUmVwZWF0J107Ci0kbWltZVR5
cGUgPSAkX0dFVFsnbWltZVR5cGUnXTsKLQotJGZpbGUgPSBmb3BlbigkbmFtZSwgInJiIik7Ci1p
ZiAoISRmaWxlKQotICAgIGRpZSgiQ2Fubm90IG9wZW4gZmlsZS4iKTsKLQotaGVhZGVyKCJDb250
ZW50LVR5cGU6ICIgLiAkbWltZVR5cGUpOwotaGVhZGVyKCJDb250ZW50LUxlbmd0aDogIiAuIGZp
bGVzaXplKCRuYW1lKSk7Ci0KLWlmIChpc3NldCgkc3RhbGxBdCkgJiYgaXNzZXQoJHN0YWxsRm9y
KSkgewotICAgICRzdGFsbEF0ID0gKGludCkkc3RhbGxBdDsKLSAgICBpZiAoJHN0YWxsQXQgPiBm
aWxlc2l6ZSgkbmFtZSkpCi0gICAgICAgIGRpZSgiSW5jb3JyZWN0IHZhbHVlIGZvciBzdGFsbEF0
LiIpOwotCi0gICAgJHdyaXR0ZW5Ub3RhbCA9IDA7Ci0gICAgJGZpbGVTaXplID0gZmlsZXNpemUo
JG5hbWUpOwotCi0gICAgd2hpbGUgKCR3cml0dGVuVG90YWwgPCAkZmlsZVNpemUpIHsKLSAgICAg
ICAgJHN0YWxsQXQgPSBtaW4oJHN0YWxsQXQsICRmaWxlU2l6ZSAtICR3cml0dGVuVG90YWwpOwot
ICAgICAgICAkd3JpdHRlbiA9IDA7Ci0KLSAgICAgICAgd2hpbGUgKCR3cml0dGVuIDwgJHN0YWxs
QXQpIHsKLSAgICAgICAgICAgICR3cml0ZSA9IG1pbigxMDI0LCAkc3RhbGxBdCAtICR3cml0dGVu
KTsKLSAgICAgICAgICAgIGVjaG8oZnJlYWQoJGZpbGUsICR3cml0ZSkpOwotICAgICAgICAgICAg
JHdyaXR0ZW4gKz0gJHdyaXRlOwotICAgICAgICAgICAgZmx1c2goKTsKLSAgICAgICAgICAgIG9i
X2ZsdXNoKCk7Ci0gICAgICAgIH0KLQotICAgICAgICAkd3JpdHRlblRvdGFsICs9ICR3cml0dGVu
OwotICAgICAgICAkcmVtYWluaW5nID0gJGZpbGVTaXplIC0gJHdyaXR0ZW5Ub3RhbDsKLSAgICAg
ICAgaWYgKCEkcmVtYWluaW5nKQotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgdXNsZWVw
KCRzdGFsbEZvciAqIDEwMDAwMDApOwotICAgICAgICBpZiAoIWlzc2V0KCRzdGFsbFJlcGVhdCkg
fHwgISRzdGFsbFJlcGVhdCkKLSAgICAgICAgICAgICRzdGFsbEF0ID0gJHJlbWFpbmluZzsKLSAg
ICB9Ci19IGVsc2UgewotICAgIGVjaG8oZnJlYWQoJGZpbGUsIGZpbGVzaXplKCRuYW1lKSkpOwot
ICAgIGZsdXNoKCk7Ci0gICAgb2JfZmx1c2goKTsKLX0KLWZjbG9zZSgkZmlsZSk7Ci0/PgpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
bG9hZC1hbmQtc3RhbGwucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw2NiBAQAorIyEvdXNy
L2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCitm
cm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5l
bnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQor
bmFtZSA9IHF1ZXJ5LmdldCgnbmFtZScsIFsnJ10pWzBdCitzdGFsbF9hdCA9IHF1ZXJ5LmdldCgn
c3RhbGxBdCcsIFtOb25lXSlbMF0KK3N0YWxsX2ZvciA9IHF1ZXJ5LmdldCgnc3RhbGxGb3InLCBb
Tm9uZV0pWzBdCitzdGFsbF9yZXBlYXQgPSBxdWVyeS5nZXQoJ3N0YWxsUmVwZWF0JywgW05vbmVd
KVswXQorbWltZV90eXBlID0gcXVlcnkuZ2V0KCdtaW1lVHlwZScsIFsnJ10pWzBdCisKK2lmIG5v
dCBvcy5wYXRoLmlzZmlsZShuYW1lKToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKyAgICBzeXMuZXhpdCgwKQorCituYW1lID0gb3MucGF0
aC5hYnNwYXRoKG5hbWUpCisKK29wZW5fZmlsZSA9IG9wZW4obmFtZSwgJ3JiJykKK2ZpbGVfc2l6
ZSA9IG9zLnBhdGguZ2V0c2l6ZShuYW1lKQorY29udGVudCA9IG9wZW5fZmlsZS5yZWFkKCkKKwor
c3lzLnN0ZG91dC53cml0ZSgKKyAgICAnQ29udGVudC1UeXBlOiB7fVxyXG4nCisgICAgJ0NvbnRl
bnQtTGVuZ3RoOiB7fVxyXG5cclxuJy5mb3JtYXQobWltZV90eXBlLCBmaWxlX3NpemUpCispCisK
K2lmIHN0YWxsX2F0IGlzIG5vdCBOb25lIGFuZCBzdGFsbF9mb3IgaXMgbm90IE5vbmU6CisgICAg
c3RhbGxfYXQgPSBpbnQoc3RhbGxfYXQpCisgICAgc3RhbGxfZm9yID0gZmxvYXQoc3RhbGxfZm9y
KQorCisgICAgaWYgc3RhbGxfYXQgPiBmaWxlX3NpemU6CisgICAgICAgIHN5cy5zdGRvdXQud3Jp
dGUoJ0luY29ycmVjdCB2YWx1ZSBmb3Igc3RhbGxBdC4nKQorICAgICAgICBzeXMuZXhpdCgwKQor
CisgICAgd3JpdHRlbl90b3RhbCA9IDAKKyAgICB3aGlsZSB3cml0dGVuX3RvdGFsIDwgZmlsZV9z
aXplOgorICAgICAgICBzdGFsbF9hdCA9IG1pbihzdGFsbF9hdCwgZmlsZV9zaXplIC0gd3JpdHRl
bl90b3RhbCkKKyAgICAgICAgd3JpdHRlbiA9IDAKKworICAgICAgICB3aGlsZSB3cml0dGVuIDwg
c3RhbGxfYXQ6CisgICAgICAgICAgICB3cml0ZSA9IG1pbigxMDI0LCBzdGFsbF9hdCAtIHdyaXR0
ZW4pCisKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgICAgICAgICAgc3lzLnN0
ZG91dC5idWZmZXIud3JpdGUoY29udGVudFt3cml0dGVuX3RvdGFsICsgd3JpdHRlbjp3cml0dGVu
X3RvdGFsICsgd3JpdHRlbiArIHdyaXRlXSkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2go
KQorCisgICAgICAgICAgICB3cml0dGVuICs9IHdyaXRlCisKKyAgICAgICAgd3JpdHRlbl90b3Rh
bCArPSB3cml0dGVuCisgICAgICAgIHJlbWFpbmluZyA9IGZpbGVfc2l6ZSAtIHdyaXR0ZW5fdG90
YWwKKworICAgICAgICBpZiByZW1haW5pbmcgPT0gMDoKKyAgICAgICAgICAgIGJyZWFrCisKKyAg
ICAgICAgdGltZS5zbGVlcChzdGFsbF9mb3IpCisgICAgICAgIGlmIHN0YWxsX3JlcGVhdCBpcyBO
b25lOgorICAgICAgICAgICAgc3RhbGxfYXQgPSByZW1haW5pbmcKK2Vsc2U6CisgICAgc3lzLnN0
ZG91dC5mbHVzaCgpCisgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUoY29udGVudCkKKyAgICBz
eXMuc3Rkb3V0LmZsdXNoKCkKKworb3Blbl9maWxlLmNsb3NlKCkKClByb3BlcnR5IGNoYW5nZXMg
b246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5Cl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAkocmV2aXNpb24gMjc2MjY4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwCShub25leGlzdGVudCkKQEAgLTEsMTk4ICswLDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2Ug
J3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotLy8gVGhpcyBzY3JpcHQgYWN0cyBhcyBhIHN0YXRl
ZnVsIHByb3h5IGZvciByZXRyaWV2aW5nIGZpbGVzLiBXaGVuIHRoZSBzdGF0ZSBpcyBzZXQgdG8K
LS8vIG9mZmxpbmUsIGl0IHNpbXVsYXRlcyBhIG5ldHdvcmsgZXJyb3Igd2l0aCBhIG5vbnNlbnNl
IHJlc3BvbnNlLgotCi1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewotICAgIGhlYWRlcigiSFRU
UC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gIkZBSUw6IE5vIHRl
bXAgZGlyIHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi1pZiAoIWlzc2V0KCRf
R0VUWyd0ZXN0J10pKSB7Ci0gICAgaGVhZGVyKCJIVFRQLzEuMSA1MDAgSW50ZXJuYWwgU2VydmVy
IEVycm9yIik7Ci0gICAgZWNobyAidGVzdCBwYXJhbWV0ZXIgbXVzdCBiZSBzcGVjaWZpZWQgZm9y
IGEgdW5pcXVlIHRlc3QgbmFtZVxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLWZ1bmN0aW9uIHRlbXBQ
YXRoQmFzZSgpCi17Ci0gICAgcmV0dXJuIHN5c19nZXRfdGVtcF9kaXIoKSAuICIvIiAuICRfR0VU
Wyd0ZXN0J107Ci19Ci0KLWZ1bmN0aW9uIHNldFN0YXRlKCRuZXdTdGF0ZSwgJGZpbGUpCi17Ci0g
ICAgZmlsZV9wdXRfY29udGVudHMoJGZpbGUsICRuZXdTdGF0ZSk7Ci19Ci0KLWZ1bmN0aW9uIGdl
dFN0YXRlKCRmaWxlKQotewotICAgIGlmICghZmlsZV9leGlzdHMoJGZpbGUpKSB7Ci0gICAgICAg
IHJldHVybiAiVW5pbml0aWFsaXplZCI7Ci0gICAgfQotICAgIHJldHVybiBmaWxlX2dldF9jb250
ZW50cygkZmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGNvbnRlbnRUeXBlKCRwYXRoKQotewotICAgIGlm
IChwcmVnX21hdGNoKCIvXC5odG1sJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9o
dG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wubWFuaWZlc3QkLyIsICRwYXRoKSkKLSAgICAg
ICAgcmV0dXJuICJ0ZXh0L2NhY2hlLW1hbmlmZXN0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
anMkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJ0ZXh0L2phdmFzY3JpcHQiOwotICAgIGlm
IChwcmVnX21hdGNoKCIvXC54bWwkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNh
dGlvbi94bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC54aHRtbCQvIiwgJHBhdGgpKQotICAg
ICAgICByZXR1cm4gImFwcGxpY2F0aW9uL3hodG1sK3htbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2go
Ii9cLnN2ZyQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gImFwcGxpY2F0aW9uL3N2Zyt4bWwi
OwotICAgIGlmIChwcmVnX21hdGNoKCIvXC54c2wkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJu
ICJhcHBsaWNhdGlvbi94c2x0K3htbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLmdpZiQvIiwg
JHBhdGgpKQotICAgICAgICByZXR1cm4gImltYWdlL2dpZiI7Ci0gICAgaWYgKHByZWdfbWF0Y2go
Ii9cLmpwZyQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gImltYWdlL2pwZWciOwotICAgIGlm
IChwcmVnX21hdGNoKCIvXC5wbmckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJpbWFnZS9w
bmciOwotICAgIHJldHVybiAidGV4dC9wbGFpbiI7Ci19Ci0KLWZ1bmN0aW9uIGdlbmVyYXRlTm9D
YWNoZUhUVFBIZWFkZXIoKQotewotICAgIGhlYWRlcigiRXhwaXJlczogVGh1LCAwMSBEZWMgMjAw
MyAxNjowMDowMCBHTVQiKTsKLSAgICBoZWFkZXIoIkNhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBu
by1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlIik7Ci0gICAgaGVhZGVyKCJQcmFnbWE6IG5vLWNhY2hl
Iik7Ci19Ci0KLWZ1bmN0aW9uIGdlbmVyYXRlUmVzcG9uc2UoJHBhdGgpCi17Ci0gICAgZ2xvYmFs
ICRzdGF0ZUZpbGU7Ci0gICAgJHN0YXRlID0gZ2V0U3RhdGUoJHN0YXRlRmlsZSk7Ci0gICAgaWYg
KCRzdGF0ZSA9PSAiT2ZmbGluZSIpIHsKLSAgICAgICAgIyBTaW11bGF0ZSBhIG5ldHdvcmsgZXJy
b3IgYnkgcmVwbHlpbmcgd2l0aCBhIG5vbnNlbnNlIHJlc3BvbnNlLgotICAgICAgICBoZWFkZXIo
J0hUVFAvMS4xIDMwNyBUZW1wb3JhcnkgUmVkaXJlY3QnKTsKLSAgICAgICAgaGVhZGVyKCdMb2Nh
dGlvbjogJyAuICRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTsgIyBSZWRpcmVjdCB0byBzZWxmLgot
ICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAxJyk7Ci0gICAgICAgIGhlYWRlcignQ29u
dGVudC1MZW5ndGg6IDUnLCBmYWxzZSk7ICMgTXVsdGlwbGUgY29udGVudC1sZW5ndGggaGVhZGVy
cywgc29tZSBuZXR3b3JrIHN0YWNrcyBjYW4gZGV0ZWN0IHRoaXMgY29uZGl0aW9uIGZhc3Rlci4K
LSAgICAgICAgZWNobyAiSW50ZW50aW9uYWxseSBpbmNvcnJlY3QgcmVzcG9uc2UuIjsKLSAgICB9
IGVsc2UgewotICAgICAgICAvLyBBIGxpdHRsZSBzZWN1cnV0eSBjaGVja2luZyBjYW4ndCBodXJ0
LgotICAgICAgICBpZiAoc3Ryc3RyKCRwYXRoLCAiLi4iKSkKLSAgICAgICAgICAgIGV4aXQ7Ci0K
LSAgICAgICAgaWYgKCRwYXRoWzBdID09ICcvJykKLSAgICAgICAgICAgICRwYXRoID0gJy4uJyAu
ICRwYXRoOwotCi0gICAgICAgIGlmICghJF9HRVRbJ2FsbG93LWNhY2hpbmcnXSkKLSAgICAgICAg
ICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLQotICAgICAgICBpZiAoZmlsZV9leGlz
dHMoJHBhdGgpKSB7Ci0gICAgICAgICAgICBoZWFkZXIoIkxhc3QtTW9kaWZpZWQ6ICIgLiBnbWRh
dGUoIkQsIGQgTSBZIEg6aTpzIFQiLCBmaWxlbXRpbWUoJHBhdGgpKSk7Ci0gICAgICAgICAgICBo
ZWFkZXIoIkNvbnRlbnQtVHlwZTogIiAuIGNvbnRlbnRUeXBlKCRwYXRoKSk7Ci0gICAgICAgIAot
ICAgICAgICAgICAgcHJpbnQgZmlsZV9nZXRfY29udGVudHMoJHBhdGgpOwotICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSA0MDQgTm90IEZvdW5kJyk7Ci0gICAg
ICAgIH0KLSAgICB9Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUluY3JlYXNlUmVzb3VyY2VDb3VudENv
bW1hbmQoJHBhdGgpCi17Ci0gICAgJHJlc291cmNlQ291bnRGaWxlID0gdGVtcFBhdGhCYXNlKCkg
LiAiLWNvdW50IjsKLSAgICAkcmVzb3VyY2VDb3VudCA9IGdldFN0YXRlKCRyZXNvdXJjZUNvdW50
RmlsZSk7Ci0gICAgJHBpZWNlcyA9IGV4cGxvZGUoIiAiLCAkcmVzb3VyY2VDb3VudCk7Ci0gICAg
JGNvdW50ID0gMDsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2VzWzBdID09
ICRwYXRoKSB7Ci0gICAgICAgICRjb3VudCA9IDEgKyAkcGllY2VzWzFdOwotICAgIH0gZWxzZSB7
Ci0gICAgICAgICRjb3VudCA9IDE7Ci0gICAgfQotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNv
dXJjZUNvdW50RmlsZSwgJHBhdGggLiAiICIgLiAkY291bnQpOwotICAgIGdlbmVyYXRlUmVzcG9u
c2UoJHBhdGgpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5k
KCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItY291bnQi
OwotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUNvdW50RmlsZSwgMCk7Ci0gICAgZ2Vu
ZXJhdGVOb0NhY2hlSFRUUEhlYWRlcigpOwotICAgIGhlYWRlcignSFRUUC8xLjEgMjAwIE9LJyk7
Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewot
ICAgICRyZXNvdXJjZUNvdW50RmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAg
JHJlc291cmNlQ291bnQgPSBnZXRTdGF0ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVj
ZXMgPSBleHBsb2RlKCIgIiwgJHJlc291cmNlQ291bnQpOwotICAgIGdlbmVyYXRlTm9DYWNoZUhU
VFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoJ0hUVFAvMS4xIDIwMCBPSycpOwotICAgIGlmIChjb3Vu
dCgkcGllY2VzKSA9PSAyICYmICRwaWVjZXNbMF0gPT0gJHBhdGgpIHsKLSAgICAgICAgZWNobyAk
cGllY2VzWzFdOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGVjaG8gMDsKLSAgICB9Ci19Ci0KLWZ1
bmN0aW9uIGhhbmRsZVN0YXJ0UmVzb3VyY2VSZXF1ZXN0c0xvZygpCi17Ci0gICAgJHJlc291cmNl
TG9nRmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1sb2ciOwotICAgIGZpbGVfcHV0X2NvbnRlbnRz
KCRyZXNvdXJjZUxvZ0ZpbGUsICAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUNsZWFyUmVzb3Vy
Y2VSZXF1ZXN0c0xvZygpCi17Ci0gICAgJHJlc291cmNlTG9nRmlsZSA9IHRlbXBQYXRoQmFzZSgp
IC4gIi1sb2ciOwotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUxvZ0ZpbGUsICIiKTsK
LX0KLQotZnVuY3Rpb24gaGFuZGxlR2V0UmVzb3VyY2VSZXF1ZXN0c0xvZygpCi17Ci0gICAgJHJl
c291cmNlTG9nRmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1sb2ciOwotCi0gICAgZ2VuZXJhdGVO
b0NhY2hlSFRUUEhlYWRlcigpOwotICAgIGhlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWlu
Iik7Ci0KLSAgICBwcmludCBmaWxlX2dldF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlKTsKLX0K
LQotZnVuY3Rpb24gaGFuZGxlTG9nUmVzb3VyY2VSZXF1ZXN0KCRwYXRoKQotewotICAgICRyZXNv
dXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICAKLSAgICAkbmV3RGF0
YSA9ICJcbiIuJHBhdGg7Ci0gICAgLy8gRG9jdW1lbnRhdGlvbiBzYXlzIHRoYXQgYXBwZW5kcyBh
cmUgYXRvbWljLgotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUxvZ0ZpbGUsICRuZXdE
YXRhLCBGSUxFX0FQUEVORCk7Ci19Ci0KLSRzdGF0ZUZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICIt
c3RhdGUiOwotJGNvbW1hbmQgPSAkX0dFVFsnY29tbWFuZCddOwotaWYgKCRjb21tYW5kKSB7Ci0g
ICAgaWYgKCRjb21tYW5kID09ICJjb25uZWN0IikKLSAgICAgICAgc2V0U3RhdGUoIk9ubGluZSIs
ICRzdGF0ZUZpbGUpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJkaXNjb25uZWN0IikKLSAg
ICAgICAgc2V0U3RhdGUoIk9mZmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlmICgkY29t
bWFuZCA9PSAiaW5jcmVhc2UtcmVzb3VyY2UtY291bnQiKQotICAgICAgICBoYW5kbGVJbmNyZWFz
ZVJlc291cmNlQ291bnRDb21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYgKCRjb21t
YW5kID09ICJyZXNldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZVJlc2V0UmVzb3Vy
Y2VDb3VudENvbW1hbmQoKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAiZ2V0LXJlc291cmNl
LWNvdW50IikKLSAgICAgICAgaGFuZGxlR2V0UmVzb3VyY2VDb3VudENvbW1hbmQoJF9HRVRbJ3Bh
dGgnXSk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gInN0YXJ0LXJlc291cmNlLXJlcXVlc3Qt
bG9nIikKLSAgICAgICAgaGFuZGxlU3RhcnRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxz
ZSBpZiAoJGNvbW1hbmQgPT0gImNsZWFyLXJlc291cmNlLXJlcXVlc3QtbG9nIikKLSAgICAgICAg
aGFuZGxlQ2xlYXJSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQg
PT0gImdldC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZUdldFJlc291cmNl
UmVxdWVzdHNMb2coKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAibG9nLXJlc291cmNlLXJl
cXVlc3QiKQotICAgICAgICBoYW5kbGVMb2dSZXNvdXJjZVJlcXVlc3QoJF9HRVRbJ3BhdGgnXSk7
Ci0gICAgZWxzZQotICAgICAgICBlY2hvICJVbmtub3duIGNvbW1hbmQ6ICIgLiAkY29tbWFuZCAu
ICJcbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kcmVxdWVzdGVkUGF0aCA9ICRfR0VUWydwYXRoJ107
Ci1nZW5lcmF0ZVJlc3BvbnNlKCRyZXF1ZXN0ZWRQYXRoKTsKLT8+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weQko
bm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE3OCBAQAorIyEvdXNyL2Jp
bi9lbnYgcHl0aG9uMworCisjIFRoaXMgc2NyaXB0IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBm
b3IgcmV0cmlldmluZyBmaWxlcy4gV2hlbiB0aGUgc3RhdGUgaXMgc2V0IHRvCisjIG9mZmxpbmUs
IGl0IHNpbXVsYXRlcyBhIG5ldHdvcmsgZXJyb3Igd2l0aCBhIG5vbnNlbnNlIHJlc3BvbnNlLgor
CitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBkYXRldGltZSBp
bXBvcnQgZGF0ZXRpbWUKK2Zyb20gcG9ydGFiaWxpdHlMYXllciBpbXBvcnQgZ2V0X3N0YXRlLCBz
ZXRfc3RhdGUKK2Zyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcworCitxdWVyeSA9IHBh
cnNlX3FzKG9zLmVudmlyb24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFs
dWVzPVRydWUpCit0ZXN0ID0gcXVlcnkuZ2V0KCd0ZXN0JywgW05vbmVdKVswXQorY29tbWFuZCA9
IHF1ZXJ5LmdldCgnY29tbWFuZCcsIFtOb25lXSlbMF0KKworaWYgdGVzdCBpcyBOb25lOgorICAg
IHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICdzdGF0dXM6IDUwMFxyXG4nCisgICAgICAgICdD
b250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJworICAgICAgICAndGVzdCBwYXJhbWV0ZXIg
bXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgdW5pcXVlIHRlc3QgbmFtZVxuJworICAgICkKKyAgICBz
eXMuZXhpdCgwKQorCisKK2RlZiB0ZW1wX3BhdGhfYmFzZSgpOgorICAgIHJldHVybiBvcy5wYXRo
LmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCB0ZXN0KQorCisKK3N0YXRlX2ZpbGUgPSB0ZW1w
X3BhdGhfYmFzZSgpICsgJy1zdGF0ZScKKworCitkZWYgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9o
ZWFkZXIoKToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAnRXhwaXJlczogVGh1LCAw
MSBEZWMgMjAwMyAxNjowMDowMCBHTVRcclxuJworICAgICAgICAnQ2FjaGUtQ29udHJvbDogbm8t
Y2FjaGUsIG5vLXN0b3JlLCBtdXN0LXJldmFsaWRhdGVcclxuJworICAgICAgICAnUHJhZ21hOiBu
by1jYWNoZVxyXG4nCisgICAgKQorCisKK2RlZiBjb250ZW50X3R5cGUocGF0aCk6CisgICAgcmV0
dXJuIHsKKyAgICAgICAgJ2h0bWwnOiAndGV4dC9odG1sJywKKyAgICAgICAgJ21hbmlmZXN0Jzog
J3RleHQvY2FjaGUtbWFuaWZlc3QnLAorICAgICAgICAnanMnOiAndGV4dC9qYXZhc2NyaXB0JywK
KyAgICAgICAgJ3htbCc6ICdhcHBsaWNhdGlvbi94bWwnLAorICAgICAgICAneGh0bWwnOiAnYXBw
bGljYXRpb24veGh0bWwreG1sJywKKyAgICAgICAgJ3N2Zyc6ICdhcHBsaWNhdGlvbi9zdmcreG1s
JywKKyAgICAgICAgJ3hzbCc6ICdhcHBsaWNhdGlvbi94c2x0K3htbCcsCisgICAgICAgICdnaWYn
OiAnaW1hZ2UvZ2lmJywKKyAgICAgICAgJ2pwZyc6ICdpbWFnZS9qcGVnJywKKyAgICAgICAgJ3Bu
Zyc6ICdpbWFnZS9wbmcnCisgICAgfS5nZXQocGF0aC5zcGxpdCgnLicpWy0xXSwgJ3RleHQvcGxh
aW4nKQorCisKK2RlZiBnZW5lcmF0ZV9yZXNwb25zZShwYXRoKToKKyAgICBzdGF0ZSA9IGdldF9z
dGF0ZShzdGF0ZV9maWxlKQorICAgIGlmIHN0YXRlID09ICdPZmZsaW5lJzoKKyAgICAgICAgIyBT
aW11bGF0ZSBhIG5ldHdvcmsgZXJyb3IgYnkgcmVwbHlpbmcgd2l0aCBhIG5vbnNlbnNlIHJlc3Bv
bnNlLgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAgICAgJ3N0YXR1czogMzA3
XHJcbicKKyAgICAgICAgICAgICdMb2NhdGlvbjoge31cclxuXHJcbicgICMgUmVkaXJlY3QgdG8g
c2VsZi4KKyAgICAgICAgICAgICdJbnRlbnRpb25hbGx5IGluY29ycmVjdCByZXNwb25zZS4nLmZv
cm1hdChvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9VUkknLCAnJykpCisgICAgICAgICkKKyAgICBl
bHNlOgorICAgICAgICAjIEEgbGl0dGxlIHNlY3VydXR5IGNoZWNraW5nIGNhbid0IGh1cnQuCisg
ICAgICAgIGlmICcuLicgaW4gcGF0aDoKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0Nv
bnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgICAgICAgICAgc3lzLmV4aXQoMCkK
KworICAgICAgICBpZiBsZW4ocGF0aCkgPiAwIGFuZCBwYXRoWzBdID09ICcvJzoKKyAgICAgICAg
ICAgIHBhdGggPSAnLi4nICsgcGF0aAorCisgICAgICAgIGlmICdhbGxvdy1jYWNoaW5nJyBub3Qg
aW4gcXVlcnkua2V5cygpOgorICAgICAgICAgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFk
ZXIoKQorCisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAgICAgc3lz
LnN0ZG91dC53cml0ZSgKKyAgICAgICAgICAgICAgICAnTGFzdC1Nb2RpZmllZDoge30gR01UXHJc
bicKKyAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlOiB7fVxyXG5cclxuJy5mb3JtYXQoZGF0
ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChvcy5zdGF0KHBhdGgpLnN0X210aW1lKS5zdHJmdGltZSgn
JWEsICVkICViICVZICVIOiVNOiVTJyksIGNvbnRlbnRfdHlwZShwYXRoKSkKKyAgICAgICAgICAg
ICkKKworICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICdyYicpIGFzIG9wZW5fZmlsZToKKyAg
ICAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICAgICAgICAgICAgICBzeXMuc3Rk
b3V0LmJ1ZmZlci53cml0ZShvcGVuX2ZpbGUucmVhZCgpKQorICAgICAgICBlbHNlOgorICAgICAg
ICAgICAgc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDRcclxuXHJcbicpCisKKworZGVmIGhh
bmRsZV9pbmNyZWF0ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHBhdGgpOgorICAgIHJlc291cmNl
X2NvdW50X2ZpbGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1jb3VudCcKKyAgICByZXNvdXJjZV9j
b3VudCA9IGdldF9zdGF0ZShyZXNvdXJjZV9jb3VudF9maWxlKQorICAgIHBpZWNlcyA9IHJlc291
cmNlX2NvdW50LnNwbGl0KCcgJykKKyAgICBjb3VudCA9IDAKKyAgICBpZiBsZW4ocGllY2VzKSA9
PSAyIGFuZCBwaWVjZXNbMF0gPT0gcGF0aDoKKyAgICAgICAgY291bnQgPSAxICsgaW50KHBpZWNl
c1sxXSkKKyAgICBlbHNlOgorICAgICAgICBjb3VudCA9IDEKKworICAgIHNldF9zdGF0ZShyZXNv
dXJjZV9jb3VudF9maWxlLCAne30ge30nLmZvcm1hdChwYXRoLCBjb3VudCkpCisgICAgZ2VuZXJh
dGVfcmVzcG9uc2UocGF0aCkKKworCitkZWYgaGFuZGxlX3Jlc2V0X3Jlc291cmNlX2NvdW50X2Nv
bW1hbmQoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICct
Y291bnQnCisgICAgc2V0X3N0YXRlKHJlc291cmNlX2NvdW50X2ZpbGUsICcwJykKKyAgICBnZW5l
cmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVz
OiAyMDBcclxuXHJcbicpCisKKworZGVmIGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29tbWFu
ZChwYXRoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICct
Y291bnQnCisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmls
ZSkKKyAgICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAgZ2VuZXJhdGVf
bm9fY2FjaGVfaHR0cF9oZWFkZXIoKQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogMjAw
XHJcblxyXG4nKQorCisgICAgaWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBdID09IHBh
dGg6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKHBpZWNlc1sxXSkpCisgICAgZWxzZToK
KyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgnMCcpCisKKworZGVmIGhhbmRsZV9zdGFydF9yZXNv
dXJjZV9yZXF1ZXN0c19sb2coKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0aF9i
YXNlKCkgKyAnLWxvZycKKyAgICBzZXRfc3RhdGUocmVzb3VyY2VfbG9nX2ZpbGUsICcnKQorICAg
IHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorCisK
K2RlZiBoYW5kbGVfZ2V0X3Jlc291cmNlX3JlcXVlc3RzX2xvZygpOgorICAgIHJlc291cmNlX2xv
Z19maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctbG9nJworICAgIGdlbmVyYXRlX25vX2NhY2hl
X2h0dHBfaGVhZGVyKCkKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKKworICAgIHdpdGggb3BlbihyZXNvdXJjZV9sb2dfZmlsZSwgJ3InKSBh
cyBvcGVuX2ZpbGU6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUob3Blbl9maWxlLnJlYWQoKSkK
KworCitkZWYgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHBhdGgpOgorICAgIHJlc291cmNl
X2xvZ19maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctbG9nJworICAgIG5ld19kYXRhID0gJ1xu
JyArIHBhdGgKKworICAgIHdpdGggb3BlbihyZXNvdXJjZV9sb2dfZmlsZSwgJ2EnKSBhcyBvcGVu
X2ZpbGU6CisgICAgICAgIG9wZW5fZmlsZS53cml0ZShuZXdfZGF0YSkKKworICAgIHN5cy5zdGRv
dXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorCisKK2lmIGNvbW1h
bmQgaXMgbm90IE5vbmU6CisgICAgaWYgY29tbWFuZCA9PSAnY29ubmVjdCc6CisgICAgICAgIHNl
dF9zdGF0ZShzdGF0ZV9maWxlLCAnT25saW5lJykKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgn
Q29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisgICAgZWxpZiBjb21tYW5kID09ICdk
aXNjb25uZWN0JzoKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlX2ZpbGUsICdPZmZsaW5lJykKKyAg
ICAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicp
CisgICAgZWxpZiBjb21tYW5kID09ICdpbmNyZWFzZS1yZXNvdXJjZS1jb3VudCc6CisgICAgICAg
IGhhbmRsZV9pbmNyZWF0ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5LmdldCgncGF0aCcs
IFsnJ10pWzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAncmVzZXQtcmVzb3VyY2UtY291bnQnOgor
ICAgICAgICBoYW5kbGVfcmVzZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCgpCisgICAgZWxpZiBj
b21tYW5kID09ICdnZXQtcmVzb3VyY2UtY291bnQnOgorICAgICAgICBoYW5kbGVfZ2V0X3Jlc291
cmNlX2NvdW50X2NvbW1hbmQocXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0pCisgICAgZWxpZiBj
b21tYW5kID09ICdzdGFydC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9z
dGFydF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKQorICAgIGVsaWYgY29tbWFuZCA9PSAnbGVhci1y
ZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9zdGFydF9yZXNvdXJjZV9yZXF1
ZXN0c19sb2coKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLXJlcXVlc3QtbG9n
JzoKKyAgICAgICAgaGFuZGxlX2dldF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKQorICAgIGVsaWYg
Y29tbWFuZCA9PSAnbG9nLXJlc291cmNlLXJlcXVlc3QnOgorICAgICAgICBoYW5kbGVfbG9nX3Jl
c291cmNlX3JlcXVlc3QocXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0pCisgICAgZWxzZToKKyAg
ICAgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgICAgICdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJworICAgICAgICAgICAgJ1Vua25vd24gY29tbWFuZDoge31cbicuZm9ybWF0
KGNvbW1hbmQpCisgICAgICAgICkKKyAgICAgICAgc3lzLmV4aXQoMCkKK2Vsc2U6CisgICAgcmVx
dWVzdF9wYXRoID0gcXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0KKyAgICBnZW5lcmF0ZV9yZXNw
b25zZShyZXF1ZXN0X3BhdGgpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weQpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBz
dm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJv
cGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5
TGF5ZXIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
cG9ydGFiaWxpdHlMYXllci5weQkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFiaWxpdHlMYXllci5weQkod29ya2luZyBjb3B5KQpAQCAt
NzksNyArNzksNyBAQCBkZWYgZ2V0X3N0YXRlKGZpbGUsIGRlZmF1bHQ9J1VuaW5pdGlhbGl6CiAg
ICAgICAgIHJldHVybiBmaWxlLnJlYWQoKQogCiAKLWRlZiBzZXRfc3RhdGUoc3RhdGUsIGZpbGUp
OgorZGVmIHNldF9zdGF0ZShmaWxlLCBzdGF0ZSk6CiAgICAgd2l0aCBvcGVuKGZpbGUsICd3Jykg
YXMgb3Blbl9maWxlOgogICAgICAgICBvcGVuX2ZpbGUud3JpdGUoc3RhdGUpCiAgICAgcmV0dXJu
IHN0YXRlCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10
by12aWRlby1pZi1hY2NlcHRlZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10
by12aWRlby1pZi1hY2NlcHRlZC5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMCArMCwwIEBACi08
P3BocAotaWYgKHN0cnBvcygkX1NFUlZFUlsnSFRUUF9BQ0NFUFQnXSwgJ3ZpZGVvLyonKSAhPT0g
ZmFsc2UpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4xIDMwMSBNb3ZlZCBQZXJtYW5lbnRseScpOwot
ICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX0dFVFsndmlkZW8nXSk7Ci0gICAgaGVhZGVyKCdD
YWNoZS1Db250cm9sOiBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlJyk7Ci0gICAgcmV0dXJuOwot
fQotCi1oZWFkZXIoJ0hUVFAvMS4xIDQwMCBCYWQgUmVxdWVzdCcpOwotPz4KSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVk
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGly
ZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnB5CShub25leGlzdGVudCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTkgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKwor
aW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMK
KwordmlkZW8gPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBr
ZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3ZpZGVvJywgWycnXSlbMF0KKworc3lzLnN0ZG91
dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuJykKKworaWYgJ3ZpZGVvLyonIGlu
IG9zLmVudmlyb24uZ2V0KCdIVFRQX0FDQ0VQVCcsICcnKToKKyAgICBzeXMuc3Rkb3V0LndyaXRl
KAorICAgICAgICAnc3RhdHVzOiAzMDFcclxuJworICAgICAgICAnTG9jYXRpb246IHt9XHJcbicK
KyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBtdXN0LXJldmFsaWRhdGVcclxuXHJc
bicuZm9ybWF0KHZpZGVvKQorICAgICkKKyAgICBzeXMuZXhpdCgwKQorCitzeXMuc3Rkb3V0Lndy
aXRlKCdzdGF0dXM6IDQwMFxyXG5cclxuJykKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnB5
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwCShyZXZpc2lvbiAyNzYyNjgp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhw
CShub25leGlzdGVudCkKQEAgLTEsMTkgKzAsMCBAQAotPD9waHAKLXJlcXVpcmVfb25jZSAncG9y
dGFiaWxpdHlMYXllci5waHAnOwotCi1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewotICAgIGVj
aG8gIkZBSUw6IE5vIHRlbXAgZGlyIHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgpOwotfQot
Ci0kdG1wRmlsZSA9IHN5c19nZXRfdGVtcF9kaXIoKSAuICIvIiAuICRfR0VUWydmaWxlbmFtZSdd
OwotCi1pZiAoIWZpbGVfcHV0X2NvbnRlbnRzKCR0bXBGaWxlLCAidGVzdCIpKSB7Ci0gICAgZWNo
byAiRkFJTDogdW5hYmxlIHRvIHdyaXRlIHRvIGZpbGU6ICIgLiAkdG1wRmlsZSAuICJcbiI7Ci0g
ICAgZXhpdCgpOwotfQotaWYgKCF1bmxpbmsoJHRtcEZpbGUpKSB7Ci0gICAgZWNobyAiRkFJTDog
VW5hYmxlIHRvIGRlbGV0ZSBmaWxlOiAiIC4gJHRtcEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsK
LX0KLT8+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRGVsZXRlZDogc3ZuOmV4ZWN1dGFi
bGUKIyMgLTEgKzAsMCAjIwotKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1m
aWxlLnB5CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9yZXNldC10ZW1wLWZpbGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTIsMTcgKzIsMTIgQEAK
IGltcG9ydCBvcwogaW1wb3J0IHN5cwogaW1wb3J0IHRlbXBmaWxlCi0KIGZyb20gdXJsbGliLnBh
cnNlIGltcG9ydCBwYXJzZV9xcwogCi1xdWVyeSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdR
VUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpCi1zdGF0ZUZpbGUgPSBv
cy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBxdWVyeS5nZXQoJ2ZpbGVuYW1lJywg
WydzdGF0ZS50eHQnXSlbMF0pCitmaWxlbmFtZSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdR
VUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpLmdldCgnZmlsZW5hbWUn
LCBbJzQwNC50eHQnXSlbMF0KK3N0YXRlX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0
dGVtcGRpcigpLCBmaWxlbmFtZSkKIAotc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0
ZXh0L2h0bWxcclxuJykKLXN5cy5zdGRvdXQud3JpdGUoJ1xyXG4nKQorc3lzLnN0ZG91dC53cml0
ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiAKLXRyeToKLSAgICBpZiBvcy5w
YXRoLmV4aXN0cyhzdGF0ZUZpbGUpOgotICAgICAgICBvcy5yZW1vdmUoc3RhdGVGaWxlKQotZXhj
ZXB0IE9TRXJyb3I6Ci0gICAgcHJpbnQoJ0ZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiB7
fScuZm9ybWF0KHN0YXRlRmlsZSkpCitpZiBvcy5wYXRoLmV4aXN0cyhzdGF0ZV9maWxlKToKKyAg
ICBvcy5yZW1vdmUoc3RhdGVfZmlsZSkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnBocAkobm9uZXhpc3RlbnQpCkBA
IC0xLDcgKzAsMCBAQAotPD9waHAKLXVzbGVlcCg0MDAwMDApOwotaGVhZGVyKCJDb250ZW50LVR5
cGU6IGltYWdlL3BuZyIpOwotQHJlYWRmaWxlKCJzcXVhcmUxMDAucG5nIik7Ci0/PgotCi0KSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQko
bm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWlt
YWdlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5
dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorCit0aW1lLnNsZWVw
KDAuNCkKKworc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiBpbWFnZS9wbmdcclxuXHJc
bicpCit3aXRoIG9wZW4oJ3NxdWFyZTEwMC5wbmcnLCAncmInKSBhcyBvcGVuX2ZpbGU6CisgICAg
c3lzLnN0ZG91dC5mbHVzaCgpCisgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxl
LnJlYWQoKSkKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMg
LTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnBocAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25l
LnBocAkocmV2aXNpb24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvc2xvdy1ub3RpZnktZG9uZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw4ICswLDAgQEAKLTw/
cGhwCi11c2xlZXAoMTAwMDAwKTsKLT8+Ci1ET05FIQotPHNjcmlwdD4KLWlmICh3aW5kb3cudGVz
dFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLTwvc2NyaXB0PgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnB5CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Nsb3ctbm90aWZ5LWRvbmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMyBAQAorIyEv
dXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorCit0aW1lLnNs
ZWVwKDAuMSkKKworc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicpCitwcmludCgnJydET05FIQorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikK
KyAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKzwvc2NyaXB0PicnJykKClByb3BlcnR5IGNo
YW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRv
bmUucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucGhwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5waHAJKHJldmlzaW9uIDI3
NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmls
ZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwyMiArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNl
ICdwb3J0YWJpbGl0eUxheWVyLnBocCc7Ci0KLWlmICghc3lzX2dldF90ZW1wX2RpcigpKSB7Ci0g
ICAgZWNobyAiRkFJTDogTm8gdGVtcCBkaXIgd2FzIHJldHVybmVkLlxuIjsKLSAgICBleGl0KCk7
Ci19Ci0KLSR0bXBGaWxlID0gc3lzX2dldF90ZW1wX2RpcigpIC4gIi8iIC4gJF9HRVRbJ2ZpbGVu
YW1lJ107Ci0KLSRzdGF0ID0gc3RhdCgkdG1wRmlsZSk7Ci1pZiAoISRzdGF0KSB7Ci0gICAgZWNo
byAiRkFJTDogc3RhdCgpIGNhbGwgZmFpbGVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSRtdGlt
ZSA9ICRzdGF0WydtdGltZSddICsgMTsKLQotaWYgKCF0b3VjaCgkdG1wRmlsZSwgJG10aW1lKSkg
ewotICAgIGVjaG8gIkZBSUw6IHRvdWNoKCkgY2FsbCBmYWlsZWQuXG4iOwotfQotPz4KSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZp
bGUucHkJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL3RvdWNoLXRlbXAtZmlsZS5weQkod29ya2luZyBjb3B5KQpAQCAtNSwxMCArNSw3IEBAIGlt
cG9ydCBzeXMKIGltcG9ydCB0ZW1wZmlsZQogZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNl
X3FzCiAKLWZpbGUgPSBfX2ZpbGVfXy5zcGxpdCgnOi9jeWd3aW4nKVstMV0KLWh0dHBfcm9vdCA9
IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKG9zLnBhdGgu
ZGlybmFtZShmaWxlKSkpKQotCi1maWxlbmFtZSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdR
VUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpLmdldCgnZmlsZW5hbWUn
LCBbJ3N0YXRlLnR4dCddKVswXQorZmlsZW5hbWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgn
UVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1l
JywgWyc0MDQudHh0J10pWzBdCiB0bXBGaWxlUGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZmlsZS5n
ZXR0ZW1wZGlyKCksIGZpbGVuYW1lKQogCiBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6
IHRleHQvaHRtbFxyXG5cclxuJykKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL3dyaXRlLXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnBocAkocmV2aXNpb24gMjc2MjY4KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnBocAkobm9u
ZXhpc3RlbnQpCkBAIC0xLDE3ICswLDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2UgJ3BvcnRhYmls
aXR5TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBlY2hvICJG
QUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHRt
cEZpbGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmlsZW5hbWUnXTsKLQot
aWYgKCFmaWxlX3B1dF9jb250ZW50cygkdG1wRmlsZSwgJF9HRVRbJ2RhdGEnXSkpIHsKLSAgICBl
Y2hvICJGQUlMOiB1bmFibGUgdG8gd3JpdGUgdG8gZmlsZTogIiAuICR0bXBGaWxlIC4gIlxuIjsK
LSAgICBleGl0KCk7Ci19Ci0KLWVjaG8gJHRtcEZpbGU7Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQkocmV2aXNp
b24gMjc2MjY4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVt
cC1maWxlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC01LDIyICs1LDE0IEBAIGltcG9ydCBzeXMKIGlt
cG9ydCB0ZW1wZmlsZQogZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCiAKLWZpbGUg
PSBfX2ZpbGVfXy5zcGxpdCgnOi9jeWd3aW4nKVstMV0KLWh0dHBfcm9vdCA9IG9zLnBhdGguZGly
bmFtZShvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKG9zLnBhdGguZGlybmFtZShmaWxl
KSkpKQotCiBxdWVyeSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAn
JyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpCi1maWxlbmFtZSA9IHF1ZXJ5LmdldCgnZmlsZW5h
bWUnLCBbJ3N0YXRlLnR4dCddKVswXQorZmlsZW5hbWUgPSBxdWVyeS5nZXQoJ2ZpbGVuYW1lJywg
Wyc0MDQudHh0J10pWzBdCiBkYXRhID0gcXVlcnkuZ2V0KCdkYXRhJywgWycnXSlbMF0KIAotdG1w
RmlsZSA9IG9zLnBhdGguam9pbih0ZW1wZmlsZS5nZXR0ZW1wZGlyKCksIGZpbGVuYW1lKQordG1w
X2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogCi10cnk6
Ci0gICAgZmlsZSA9IG9wZW4odG1wRmlsZSwgJ3cnKQotICAgIGZpbGUud3JpdGUoZGF0YSkKLSAg
ICBmaWxlLmNsb3NlKCkKLWV4Y2VwdDoKLSAgICBzeXMuc3Rkb3V0LndyaXRlKGYnRkFJTDogdW5h
YmxlIHRvIHdyaXRlIHRvIGZpbGU6IHt0bXBGaWxlfVxuJykKLSAgICBzeXMuZXhpdCgwKQord2l0
aCBvcGVuKHRtcF9maWxlLCAndycpIGFzIG9wZW5fZmlsZToKKyAgICBvcGVuX2ZpbGUud3JpdGUo
ZGF0YSkKIAotc3lzLnN0ZG91dC53cml0ZShmJ3t0bXBGaWxlfVxuJykKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCitzeXMuc3Rkb3V0LndyaXRlKHRtcF9maWxlKQpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNl
c3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9y
cy1zYW1lLW9yaWdpbi1hbGxvdy5odG1sCShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2Vz
dG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMCw2ICsxMCw2
IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogPC9zY3JpcHQ+CiA8L2hlYWQ+CiA8aGVhZD4K
LTxpZnJhbWUgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1l
LXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0
aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLWZyYW1lLWFuY2VzdG9ycy1zYW1lLW9yaWdp
bi1hbGxvdy5jZ2kiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5P3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4
MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1mcmFt
ZS1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dpIj48L2lmcmFtZT4KIDwvaGVhZD4KIDwv
aHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2Fs
bG93LWlmLW9yaWdpbi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkJKHJldmlzaW9uIDI3NjI2OCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlmLW9yaWdp
bi5weQkod29ya2luZyBjb3B5KQpAQCAtMzMsNyArMzMsMTAgQEAgaWYgYWxsb3dDcmVkczoKIGlm
IGFsbG93Q2FjaGU6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ2FjaGUtQ29udHJvbDogbWF4LWFn
ZT0xMDBcclxuJykKIAotc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB7fVxyXG5cclxu
Jy5mb3JtYXQoY29udGVudFR5cGUpKQorc3lzLnN0ZG91dC53cml0ZSgKKyAgICAnQ29udGVudC1M
ZW5ndGg6IHt9XHJcbicKKyAgICAnQ29udGVudC1UeXBlOiB7fVxyXG5cclxuJy5mb3JtYXQob3Mu
cGF0aC5nZXRzaXplKG9zLnBhdGguam9pbignLycuam9pbihfX2ZpbGVfXy5zcGxpdCgnLycpWzA6
LTFdKSwgbmFtZSkpLCBjb250ZW50VHlwZSkKKykKIHN5cy5zdGRvdXQuZmx1c2goKQogd2l0aCBv
cGVuKG9zLnBhdGguam9pbignLycuam9pbihfX2ZpbGVfXy5zcGxpdCgnLycpWzA6LTFdKSwgbmFt
ZSksICdyYicpIGFzIGZpbGU6CiAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUoZmlsZS5yZWFk
KCkpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24u
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJh
Y2std2l0aC1vdXRzdGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sCShyZXZpc2lvbiAyNzYy
NjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRz
dGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01MSw3ICs1
MSw3IEBAIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGlzRmlyc3RQYWdlKCkgPyAiZmly
c3QiIDogIjxpZnJhbWUgc3JjPScvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwJz4iOworICAgIGRv
Y3VtZW50LmJvZHkuaW5uZXJIVE1MID0gaXNGaXJzdFBhZ2UoKSA/ICJmaXJzdCIgOiAiPGlmcmFt
ZSBzcmM9Jy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSc+IjsKIAogICAgIGlmIChpc0ZpcnN0UGFn
ZSgpKSB7CiAgICAgICAgIGlmIChoYXNJbml0aWFsaXplZFN3aXBlVGVzdCgpKSB7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRlLWFmdGVyLW5ldHdvcmst
ZXJyb3IuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3N0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3IuaHRtbAkocmV2aXNpb24gMjc2MjY4KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3
b3JrLWVycm9yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAgZnVuY3Rpb24g
bG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2
YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRl
ci1uZXR3b3JrLWVycm9yJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25u
ZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9y
JmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsK
ICAgICByZXEuc2VuZCgiIik7CiB9CiAKQEAgLTM0LDcgKzM0LDcgQEAgZnVuY3Rpb24gb25SZWFk
eVN0YXRlQ2hhbmdlKCkKIHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKIHZhciB4aHIgPSBuZXcg
WE1MSHR0cFJlcXVlc3QoKTsKIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBvblJlYWR5U3RhdGVD
aGFuZ2U7Ci14aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZwYXRoPS8nLCB0
cnVlKTsKK3hoci5vcGVuKCdHRVQnLCAnL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3ImcGF0aD0vJywgdHJ1
ZSk7CiB4aHIuc2VuZChudWxsKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVm
bGlnaHQtY2FjaGUtaW52YWxpZGF0aW9uLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXBy
ZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkJKHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9s
LWJhc2ljLXByZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkJKHdvcmtpbmcgY29weSkKQEAg
LTM2LDcgKzM2LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAgICAg
J0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDEwXHJcbicKICAgICAgICAgICAgICdcclxuJwogICAg
ICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnT3B0aW9uc1NlbnQnLCBzdGF0ZUZpbGUpCisgICAg
ICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdPcHRpb25zU2VudCcpCiAgICAgZWxzZToKICAgICAg
ICAgZmFpbCgpCiAKQEAgLTQ4LDcgKzQ4LDcgQEAgZWxpZiBzdGF0ZSA9PSAnT3B0aW9uc1NlbnQn
OgogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAnUEFTUzogRmlyc3QgUFVUIHJlcXVl
c3QuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRmlyc3RQVVRTZW50Jywgc3RhdGVG
aWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRmlyc3RQVVRTZW50JykKICAgICBl
bHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNjEsNyArNjEsNyBAQCBlbGlmIHN0YXRlID09ICdG
aXJzdFBVVFNlbnQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LUhlYWRlcnM6
IHgtd2Via2l0LXRlc3RcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAg
ICAgc2V0X3N0YXRlKCdTZWNvbmRPUFRJT05TU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0
X3N0YXRlKHN0YXRlRmlsZSwgJ1NlY29uZE9QVElPTlNTZW50JykKICAgICBlbGlmIG9zLmVudmly
b24uZ2V0KCdSRVFVRVNUX01FVEhPRCcpID09ICdQVVQnOgogICAgICAgICBzeXMuc3Rkb3V0Lndy
aXRlKAogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbjogaHR0cDovLzEy
Ny4wLjAuMTo4MDAwXHJcbicKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJl
cXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS10aW1l
b3V0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVl
c3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS10aW1lb3V0
LnB5CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGlt
ZW91dC5weQkod29ya2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQCBpZiBzdGF0ZSA9PSAnVW5p
bml0aWFsaXplZCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZTogMVxyXG4n
CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ09wdGlv
bnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnT3B0aW9u
c1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OSw3ICs0OSw3IEBAIGVs
aWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAg
ICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAgICAgICBzZXRfc3Rh
dGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmls
ZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTYzLDcg
KzYzLDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAgICAgICAgICdBY2Nl
c3MtQ29udHJvbC1NYXgtQWdlOiAxXHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICAp
Ci0gICAgICAgIHNldF9zdGF0ZSgnU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZpbGUpCisgICAg
ICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdTZWNvbmRPUFRJT05TU2VudCcpCiAgICAgZWxpZiBv
cy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnUFVUJzoKICAgICAgICAgc3lzLnN0
ZG91dC53cml0ZSgKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46IGh0
dHA6Ly8xMjcuMC4wLjE6ODAwMFxyXG4nCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2Fj
aGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5CShyZXZp
c2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jl
c291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUucHkJKHdvcmtpbmcg
Y29weSkKQEAgLTM3LDcgKzM3LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAg
ICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDEwXHJcbicKICAgICAgICAgICAgICdc
clxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnT3B0aW9uc1NlbnQnLCBzdGF0ZUZp
bGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdPcHRpb25zU2VudCcpCiAgICAgZWxz
ZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTQ5LDcgKzQ5LDcgQEAgZWxpZiBzdGF0ZSA9PSAnT3B0
aW9uc1NlbnQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAnUEFTUzogRmlyc3Qg
UFVUIHJlcXVlc3QuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRmlyc3RQVVRTZW50
Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRmlyc3RQVVRTZW50
JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNjksNyArNjksNyBAQCBlbGlmIHN0
YXRlID09ICdGaXJzdFBVVFNlbnQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93
LUhlYWRlcnM6IHgtd2Via2l0LXRlc3RcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAg
ICkKLSAgICAgICAgc2V0X3N0YXRlKCdGQUlMU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZpbGUp
CisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMU2Vjb25kT1BUSU9OU1NlbnQnKQog
ICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVk
LXhzcmYucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVx
dWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5CShy
ZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVkLXhzcmYucHkJKHdvcmtp
bmcgY29weSkKQEAgLTUzLDcgKzUzLDcgQEAgZWxpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6
CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdGQUlMOiBUaGlzIHJlcXVlc3Qgc2hv
dWxkIG5vdCBiZSBkaXNwbGF5ZWRcbicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0Rl
bmllZCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0RlbmllZCcp
CiAgICAgZWxzZToKICAgICAgICAgZmFpbChzdGF0ZSkKIApAQCAtNjcsNyArNjcsNyBAQCBlbGlm
IHN0YXRlID09ICdEZW5pZWQnOgogICAgICAgICAgICAgJ1BBU1M6IFJlcXVlc3Qgc3VjY2Vzc2Z1
bGx5IGJsb2NrZWQuXG4nCiAgICAgICAgICkKICAgICBlbHNlOgotICAgICAgICBzZXRfc3RhdGUo
J0RlbnkgSWdub3JlZCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwg
J0RlbnkgSWdub3JlZCcpCiAgICAgICAgIGZhaWwoc3RhdGUpCiAKIGVsaWYgc3RhdGUgPT0gJ0Rl
bnkgSWdub3JlZCc6CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWN1c3RvbS1oZWFkZXIucHkJ
KHJldmlzaW9uIDI3NjI2OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVl
c3QvcmVzb3VyY2VzL25vLWN1c3RvbS1oZWFkZXIucHkJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkg
KzIzLDkgQEAgc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbQogCiBpZiBv
cy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnT1BUSU9OUyc6CiAgICAgaWYgb3Mu
ZW52aXJvbi5nZXQoJ0hUVFBfWF9DVVNUT01fSEVBREVSJyk6Ci0gICAgICAgIHNldF9zdGF0ZSgn
RkFJTCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwnKQog
ICAgIGVsc2U6Ci0gICAgICAgIHNldF9zdGF0ZSgnUEFTUycsIHN0YXRlRmlsZSkKKyAgICAgICAg
c2V0X3N0YXRlKHN0YXRlRmlsZSwgJ1BBU1MnKQogZWxzZToKICAgICBpZiBvcy5lbnZpcm9uLmdl
dCgnSFRUUF9YX0NVU1RPTV9IRUFERVInKToKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZShnZXRf
c3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PSdGQUlMJykpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tdHJp
cG1pbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVx
dWVzdC9yZXNvdXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5CShyZXZpc2lv
biAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291
cmNlcy9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tdHJpcG1pbmUucHkJKHdvcmtpbmcgY29weSkKQEAg
LTM3LDEzICszNywxMyBAQCBpZiBtZXRob2QgPT0gJ09QVElPTlMnOgogCiAjIE9ubHkgYWxsb3cg
c2ltcGxlIGNyb3NzLXNpdGUgcmVxdWVzdHMgLSBzaW5jZSB3ZSBkaWQgbm90IGFsbG93IHByZWZs
aWdodCwgdGhpcyBpcyBhbGwgd2Ugc2hvdWxkIGV2ZXIgZ2V0LgogaWYgbWV0aG9kIG5vdCBpbiBb
J0dFVCcsICdIRUFEJywgJ1BPU1QnXToKLSAgICBzZXRfc3RhdGUoJ0ZBSUwuIE5vbi1zaW1wbGUg
bWV0aG9kIHt9LicuZm9ybWF0KG1ldGhvZCksIHN0YXRlRmlsZSkKKyAgICBzZXRfc3RhdGUoc3Rh
dGVGaWxlLCAnRkFJTC4gTm9uLXNpbXBsZSBtZXRob2Qge30uJy5mb3JtYXQobWV0aG9kKSkKICAg
ICBzeXMuZXhpdCgwKQogCiBpZiBjb250ZW50IGFuZCBub3QgcmUubWF0Y2gocideYXBwbGljYXRp
b25cL3hcLXd3d1wtZm9ybVwtdXJsZW5jb2RlZCg7LispPyQnLCBjb250ZW50VHlwZSkgXAogICAg
IGFuZCBub3QgcmUubWF0Y2gocidebXVsdGlwYXJ0XC9mb3JtXC1kYXRhKDsuKyk/JCcsIGNvbnRl
bnRUeXBlKSBcCiAgICAgYW5kIG5vdCByZS5tYXRjaChyJ150ZXh0XC9wbGFpbig7LispPyQnLCBj
b250ZW50VHlwZSk6Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBOb24tc2ltcGxlIGNvbnRlbnQgdHlw
ZToge30uJy5mb3JtYXQoY29udGVudFR5cGUpLCBzdGF0ZUZpbGUpCisgICAgc2V0X3N0YXRlKHN0
YXRlRmlsZSwgJ0ZBSUwuIE5vbi1zaW1wbGUgY29udGVudCB0eXBlOiB7fS4nLmZvcm1hdChjb250
ZW50VHlwZSkpCiAKIGlmIG9zLmVudmlyb24uZ2V0KCdIVFRQX1hfV0VCS0lUX1RFU1QnKToKLSAg
ICBzZXRfc3RhdGUoJ0ZBSUwuIEN1c3RvbSBoZWFkZXIgc2VudCB3aXRoIGEgc2ltcGxlIHJlcXVl
c3QuJywgc3RhdGVGaWxlKQorICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMLiBDdXN0b20g
aGVhZGVyIHNlbnQgd2l0aCBhIHNpbXBsZSByZXF1ZXN0LicpCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQv
Y291bnQtZmFpbHVyZXMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1
cmVzLnB5CShyZXZpc2lvbiAyNzYyNjgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQtZmFpbHVyZXMu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTM2LDcgKzM2LDcgQEAgaWYgY29tbWFuZDoKICAgICBpZiBj
b21tYW5kID09ICdzdGF0dXMnOgogICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKGdldF9zdGF0ZShz
dGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkKICAgICBlbGlmIGNvbW1hbmQgPT0gJ3Jlc2V0JzoKLSAg
ICAgICAgc3lzLnN0ZG91dC53cml0ZShzZXRfc3RhdGUoJzAnLCBzdGF0ZUZpbGUpKQorICAgICAg
ICBzeXMuc3Rkb3V0LndyaXRlKHNldF9zdGF0ZShzdGF0ZUZpbGUsICcwJykpCiAgICAgc3lzLmV4
aXQoMCkKIAogY3JlZGVudGlhbHMgPSBiYXNlNjQuYjY0ZGVjb2RlKG9zLmVudmlyb24uZ2V0KCdI
VFRQX0FVVEhPUklaQVRJT04nLCAnIE9nPT0nKS5zcGxpdCgnICcpWzFdKS5kZWNvZGUoKS5zcGxp
dCgnOicpCkBAIC01Nyw0ICs1Nyw0IEBAIGVsc2U6CiAgICAgICAgICdBdXRoZW50aWNhdGlvbiBj
YW5jZWxlZCcKICAgICApCiAgICAgaWYgdXNlcm5hbWU6Ci0gICAgICAgIHNldF9zdGF0ZShzdHIo
aW50KGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkgKyAxKSwgc3RhdGVGaWxlKQor
ICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCBzdHIoaW50KGdldF9zdGF0ZShzdGF0ZUZpbGUs
IGRlZmF1bHQ9JzAnKSkgKyAxKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426573</attachid>
            <date>2021-04-20 11:24:46 -0700</date>
            <delta_ts>2021-04-22 08:30:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210420132445.patch</filename>
            <type>text/plain</type>
            <size>145816</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjMxMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzOSBAQAorMjAyMS0wNC0yMCAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzY3MjcwNTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24taHRtbC54
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5
OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlm
ZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
Y2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1m
cmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFn
ZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0
ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1h
Z2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1
ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1hbmQpOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1l
eHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJh
c2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25z
ZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZl
dGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUt
cmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9w
dGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5
LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUt
c2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2Vz
L2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9pbWFn
ZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL3dl
YnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzOgor
ICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6CisgICAg
ICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9s
b2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL2xhc3QtbW9kaWZpZWQtcGFyc2luZy5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9h
ZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3ByZWxvYWRfYXRf
b25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMtYXV0aC5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGg6
IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13
aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
cmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA6IFJlbW92ZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weTogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAgICAoZ2Vu
ZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBlKToKKyAg
ICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0ZV9yZXNv
dXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3Vu
dF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCk6
CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAg
KGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRsZV9sb2df
cmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFi
aWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1w
LWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0
LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdl
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1k
b25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy90b3Vj
aC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy93cml0
ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlmLW9yaWdp
bi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFu
ZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1p
bnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHk6Cisg
ICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRy
b2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0
cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5w
eToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0
b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weToKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291bnQt
ZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1h
ZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEtMDQtMjAgIEFkaXR5YSBLZWVydGhpICA8
YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyNzU1MjMpOiBbaU9T
XSBPcGFxdWUgc3lzdGVtIGZpbGwgY29sb3JzIGFyZSBpbmNvcnJlY3QgaW4gZGFyayBtb2RlCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9mYWxsYmFjay5odG1sCShy
ZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxi
YWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAgZnVuY3Rpb24gc2V0TmV0
d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0
ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICAgICAgcmVxLm9wZW4o
IkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtZmFs
bGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOwogICAgICAgICByZXEuc2VuZCgiIik7CiAgICAgfSBjYXRjaCAoZXgpIHsKICAgICAgICAg
bG9nKCJDYW5ub3QgYWNjZXNzIG5ldHdvcmsgc2ltdWxhdG9yIFVSTCIpOwpAQCAtNDMsNyArNDMs
NyBAQCBmdW5jdGlvbiBsb2FkKHVybCkKICAgICB9CiB9CiAKLXZhciB0ZXN0VVJMID0gIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtZmFsbGJhY2smcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vdC1pbi1jYWNoZS50eHQiOwordmFyIHRlc3RVUkwgPSAiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLWZhbGxiYWNrJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2FjaGUudHh0IjsKIHZhciBub25leGlzdGVudFVS
TCA9ICJyZXNvdXJjZXMvZG9lcy1ub3QtZXhpc3QiOwogdmFyIHJlZGlyZWN0VVJMID0gInJlc291
cmNlcy9mYWxsYmFjay1yZWRpcmVjdC5weSI7CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFz
aC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaC5odG1sCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3Vy
Y2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2guaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtNSw3ICs1LDcgQEAKIDxkaXY+ICAgICAgICBCZWZvcmUgeW91IGNsaWNrIHRoZSBsaW5rIHRo
YXQgdGVzdHMgdGhlIGFwcGNhY2hlIGZhbGxiYWNrLCBwbGVhc2UgbWFrZSBzdXJlIHRoZSBzZXJ2
ZXIgaXMgZG93biBvciBkaXNjb25uZWN0IHlvdXIgZGV2aWNlIGZyb20gYW55IGRhdGEgY29ubmVj
dGlvbiBzbyB0aGUgY29ubmVjdGlvbiByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIgd2lsbCBmYWlsLgog
PC9kaXY+CiAKLTxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVy
cm9yLWNyYXNoJnBhdGg9ZG9lcy1ub3QtZXhpc3QiID4gY2xpY2sgdGhpcyBsaW5rIHdoZW4gdGhl
IHNlcnZlciBpcyBkb3duIG9yIHRoZSBjbGllbnQgZGV2aWNlIGRvZXNuJ3QgaGF2ZSBhIGRhdGEg
Y29ubmVjdGlvbiwgdGhpcyB3aWxsIHZlcmlmeSBpZiB0aGUgZmFsbGJhY2sgd2lsbCBjYXVzZSB0
aGUgY3Jhc2guIDwvYT4KKzxhIGlkPSAiTGluayIgaHJlZj0iL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdv
cmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCIgPiBjbGljayB0aGlzIGxpbmsgd2hl
biB0aGUgc2VydmVyIGlzIGRvd24gb3IgdGhlIGNsaWVudCBkZXZpY2UgZG9lc24ndCBoYXZlIGEg
ZGF0YSBjb25uZWN0aW9uLCB0aGlzIHdpbGwgdmVyaWZ5IGlmIHRoZSBmYWxsYmFjayB3aWxsIGNh
dXNlIHRoZSBjcmFzaC4gPC9hPgogCiAKIDxzY3JpcHQ+CkBAIC0xMyw3ICsxMyw3IEBACiBmdW5j
dGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0
dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKQEAgLTI2LDcgKzI2LDcgQEAgZnVu
Y3Rpb24gcnVuVGVzdCgpCiB7CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgICAg
IHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKLSAgICAgICAgd2luZG93LmxvY2F0aW9uPSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2Ut
ZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7Cisg
ICAgICAgIHdpbmRvdy5sb2NhdGlvbj0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jh
c2gmcGF0aD1kb2VzLW5vdC1leGlzdCI7CiAgICAgfQogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtaGFzaC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1oYXNoLmh0bWwJ
KHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFp
bi1yZXNvdXJjZS1oYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAgZnVu
Y3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsK
ICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291
cmNlLWhhc2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwg
ZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApAQCAtMjgsNyArMjgsNyBAQCBmdW5jdGlv
biBmcmFtZUNyZWF0ZWQoKQogICAgICAgICBzdGFnZSA9IDE7CiAgICAgICAgIHNldE5ldHdvcmtF
bmFibGVkKGZhbHNlKTsKICAgICAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImlmcmFtZSIpOwotICAgICAgICBpZnIuc2V0QXR0cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVz
b3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1oYXNoLWZy
YW1lLmh0bWwjYmFyIik7CisgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWlu
LXJlc291cmNlLWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFz
aC1mcmFtZS5odG1sI2JhciIpOwogICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlm
cik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgbG9nKCJTVUNDRVNTIik7CkBAIC00Myw3ICs0Myw3
IEBAIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgZnJhbWUKIHZhciBzdGFnZSA9
IDA7CiBzZXROZXR3b3JrRW5hYmxlZCh0cnVlKTsKIHZhciBpZnIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpZnJhbWUiKTsKLWlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNv
dXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLWhhc2gtZnJh
bWUuaHRtbCNmb28iKTsKK2lmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNl
LWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3VyY2UtaGFzaC1mcmFtZS5o
dG1sI2ZvbyIpOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnIpOwogCiA8L3NjcmlwdD4K
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVzb3VyY2UtcmVkaXJlY3QuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIGZ1
bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEgPSBuZXcgWE1M
SHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRp
cmVjdCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxz
ZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1h
bmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICBy
ZXEuc2VuZCgiIik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
bXVsdGktZmFsbGJhY2suaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2FwcGNhY2hlL211bHRpLWZhbGxiYWNrLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbXVsdGktZmFsbGJhY2suaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMjEsNyArMjEsNyBAQCBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAg
ICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9YXBwY2FjaGUtbXVsdGktZmFsbGJhY2smY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3Qi
IDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tdWx0aS1mYWxsYmFjayZj
b21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAg
ICAgICAgIHJlcS5zZW5kKCIiKTsKICAgICB9IGNhdGNoIChleCkgewogICAgICAgICBsb2coIkNh
bm5vdCBhY2Nlc3MgbmV0d29yayBzaW11bGF0b3IgVVJMLCBleCA9ICIgKyBleCk7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwueGh0bWwJKHJldmlz
aW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwu
eGh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiA8aHRtbCB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMTk5OS94aHRtbCIKLSAgICAgIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QiPgorICAgICAgbWFuaWZlc3Q9Ii9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0Ij4KIDxoZWFkPjx0aXRsZS8+PC9o
ZWFkPgogPGJvZHk+CiA8cD5UZXN0IHRoYXQgbm9uLUhUTUwgbWFpbiByZXNvdXJjZXMgd29yayB3
aXRoIGFwcGxpY2F0aW9uIGNhY2hlIGNvcnJlY3RseS48L3A+CkBAIC0xOSwxNCArMTksMTQgQEAg
ZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkK
IHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRt
bCZhbXA7Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFs
c2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVj
dCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCiBmdW5j
dGlvbiBjcmVhdGVGcmFtZSgpCiB7CiAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImlmcmFtZSIpOwotICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtwYXRoPS9hcHBj
YWNoZS9yZXNvdXJjZXMvYWJlLnBuZyIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1w
O3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nIik7CiAgICAgaWZyLm9ubG9hZCA9IGZy
YW1lQ3JlYXRlZDsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CkBAIC00
Myw3ICs0Myw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRo
YXQgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGNhY2hlLgogICAgIHRyeSB7CiAgICAgICAgIHZhciBy
ZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtw
YXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCIsIGZhbHNlKTsKKyAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2Fj
aGUudHh0IiwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgpOwogICAgIH0gY2F0Y2ggKGUpIHsK
ICAgICAgICAgaWYgKGUuY29kZSA9PSBET01FeGNlcHRpb24uTkVUV09SS19FUlIpCkBAIC01OCw3
ICs1OCw3IEBAIGZ1bmN0aW9uIGNhY2hlZCgpCiAgICAgLy8gTG9hZCBhIHJlc291cmNlIHRoYXQg
ZXhpc3RzIGluIHRoZSBjYWNoZS4KICAgICB0cnkgewogICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0KCk7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQiLCBmYWxzZSk7CisgICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1s
JmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKICAgICAg
ICAgcmVxLnNlbmQoKTsKICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAiRkFJTFVSRTogQ291bGQgbm90IGxvYWQg
ZGF0YSBmcm9tIGNhY2hlIgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9v
ZmZsaW5lLWFjY2Vzcy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
YXBwY2FjaGUvb2ZmbGluZS1hY2Nlc3MuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5lLWFjY2Vzcy5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCwxNCArMTgsMTQgQEAgZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBz
ZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1
ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29u
bmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3Mm
Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwog
ICAgIHJlcS5zZW5kKCIiKTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlRnJhbWUoKQogewogICAgIHZh
ciBpZnIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBpZnIuc2V0QXR0
cmlidXRlKCJzcmMiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MtZnJhbWUuaHRtbCIpOworICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0v
YXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwiKTsKICAgICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcik7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbAkocmV2aXNpb24gMjc2MzA4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtOTEsNyArOTEsNyBAQCBmdW5jdGlvbiB0ZXN0NSgpCiBmdW5jdGlv
biByZXNldE1hbmlmZXN0KCkKIHsKICAgICBpZiAoYXBwbGljYXRpb25DYWNoZS5zdGF0dXMgIT0g
YXBwbGljYXRpb25DYWNoZS5VTkNBQ0hFRCAmJiBhcHBsaWNhdGlvbkNhY2hlLnN0YXR1cyAhPSBh
cHBsaWNhdGlvbkNhY2hlLk9CU09MRVRFKSB7Ci0gICAgICAgIHRpbWVvdXRJZCA9IHNldFRpbWVv
dXQocmVzZXRNYW5pZmVzdCwgMTAwKTsKKyAgICAgICAgdGltZW91dElkID0gc2V0VGltZW91dChy
ZXNldE1hbmlmZXN0LCA0MDApOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0xMDQsNyAr
MTA0LDcgQEAgYXBwbGljYXRpb25DYWNoZS5vbm5vdXBkYXRlID0gdGVzdDsKIGFwcGxpY2F0aW9u
Q2FjaGUub25jYWNoZWQgPSB0ZXN0OwogCiAvLyBJZiB0aGUgbWFuaWZlc3Qgc2NyaXB0IGhhcHBl
bmVkIHRvIGJlIGluIGEgd3Jvbmcgc3RhdGUsIHJlc2V0IGl0LgotdmFyIHRpbWVvdXRJZCA9IHNl
dFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgMTAwKTsKK3ZhciB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0
KHJlc2V0TWFuaWZlc3QsIDQwMCk7CiAKIDwvc2NyaXB0PgogPC9ib2R5PgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUtMi5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWlsLW9uLXVwZGF0ZS0yLnB5CShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5CSh3b3JraW5nIGNv
cHkpCkBAIC0yNiw3ICsyNiw3IEBAIGlmIGNvbW1hbmQgPT0gJ3Jlc2V0JzoKICAgICAgICAgb3Mu
cmVtb3ZlKHRtcF9maWxlKQogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nKQogZWxpZiBjb21tYW5kID09ICdkZWxldGUnOgotICAgIHNldF9zdGF0
ZSgnRGVsZXRlZCcsIHRtcF9maWxlKQorICAgIHNldF9zdGF0ZSh0bXBfZmlsZSwgJ0RlbGV0ZWQn
KQogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4n
KQogZWxpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24t
dXBkYXRlLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5CShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS5weQkod29y
a2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNyBAQCBpZiBjb21tYW5kID09ICdyZXNldCc6CiAgICAg
ICAgIG9zLnJlbW92ZSh0bXBfZmlsZSkKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5
cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIGVsaWYgY29tbWFuZCA9PSAnZGVsZXRlJzoKLSAgICBz
ZXRfc3RhdGUoJ0RlbGV0ZWQnLCB0bXBfZmlsZSkKKyAgICBzZXRfc3RhdGUodG1wX2ZpbGUsICdE
ZWxldGVkJykKICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxy
XG5cclxuJykKIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgIHN5cy5zdGRvdXQu
d3JpdGUoCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9m
YWxsYmFjay5tYW5pZmVzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Fw
cGNhY2hlL3Jlc291cmNlcy9mYWxsYmFjay5tYW5pZmVzdAkocmV2aXNpb24gMjc2MzA4KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFsbGJhY2subWFuaWZl
c3QJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiBDQUNIRSBNQU5JRkVTVAogRkFMTEJB
Q0s6Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD8gc2ltcGxlLnR4dAorL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT8gc2ltcGxlLnR4dAogZmFsbGJhY2stcmVkaXJlY3Qg
c2ltcGxlLnR4dAogZG9lcy1ub3QtZXhpc3Qgc2ltcGxlLnR4dApcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2Vz
L21haW4tcmVzb3VyY2UtcmVkaXJlY3QtZnJhbWUucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1m
cmFtZS5weQkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS5weQkod29ya2luZyBj
b3B5KQpAQCAtNCw2ICs0LDYgQEAgaW1wb3J0IHN5cwogCiBzeXMuc3Rkb3V0LndyaXRlKAogICAg
ICdzdGF0dXM6IDMwMlxyXG4nCi0gICAgJ0xvY2F0aW9uOiBodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1y
ZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWxcclxuJworICAgICdMb2NhdGlvbjogaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNh
Y2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9y
ZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWxcclxuJwogICAgICdD
b250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJwogKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21h
aW4tcmVzb3VyY2UtcmVkaXJlY3QubWFuaWZlc3QKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5p
ZmVzdAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNo
ZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdAkod29ya2luZyBjb3B5
KQpAQCAtMSw0ICsxLDQgQEAKIENBQ0hFIE1BTklGRVNUCi1odHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1y
ZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWwKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1h
aW4tcmVzb3VyY2UtcmVkaXJlY3QmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUtMi5odG1sCiBORVRXT1JLOgotaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtcmVkaXJlY3QmY29tbWFuZAoraHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3Vy
Y2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1m
YWxsYmFjay5tYW5pZmVzdAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbXVsdGktZmFsbGJhY2subWFuaWZlc3QJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNSArMSw1IEBACiBDQUNIRSBNQU5JRkVTVAogRkFMTEJBQ0s6Ci0vcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD8gc2ltcGxlLnR4dAorL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT8gc2ltcGxlLnR4dAogZG9lcy1ub3QgZW1wdHkudHh0CiBkb2VzLW5vdC1l
eGlzdCBzaW1wbGUudHh0CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jl
c291cmNlcy9ub24taHRtbC5tYW5pZmVzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdAkocmV2aXNpb24gMjc2
MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0
bWwubWFuaWZlc3QJKHdvcmtpbmcgY29weSkKQEAgLTEsOCArMSw4IEBACiBDQUNIRSBNQU5JRkVT
VAogL2FwcGNhY2hlL25vbi1odG1sLnhodG1sCi0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1w
bGUudHh0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5v
bi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nCi0vcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jl
c291cmNlcy9ub24taHRtbC5tYW5pZmVzdAorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUu
dHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0
bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5wbmcKKy9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJj
ZXMvbm9uLWh0bWwubWFuaWZlc3QKIE5FVFdPUks6CiAvZmF2aWNvbi5pY28KLS9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmY29tbWFuZD0KKy9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZjb21t
YW5kPQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2Zm
bGluZS1hY2Nlc3MtZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAot
PGh0bWwgbWFuaWZlc3Q9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBw
Y2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLm1hbmlmZXN0Ij4KKzxodG1sIG1hbmlmZXN0PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3Vy
Y2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Ij4KIDxkaXYgaWQ9cmVzdWx0PjwvZGl2PgogPHNj
cmlwdD4KIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQpAQCAtMTEsNyArMTEsNyBAQCBhcHBsaWNhdGlv
bkNhY2hlLm9ucHJvZ3Jlc3MgPSBmdW5jdGlvbigpCiBhcHBsaWNhdGlvbkNhY2hlLm9udXBkYXRl
cmVhZHkgPSBmdW5jdGlvbigpIHsgbG9nKCJ1cGRhdGVyZWFkeSIpIH0KIGFwcGxpY2F0aW9uQ2Fj
aGUub25vYnNvbGV0ZSA9IGZ1bmN0aW9uKCkgeyBsb2coIm9ic29sZXRlIikgfQogPC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJj
ZXMvb2ZmbGluZS1hY2Nlc3MuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIAogYXBwbGljYXRpb25D
YWNoZS5vbmNhY2hlZCA9IGZ1bmN0aW9uKCkgeyBsb2coImNhY2hlZCIpOyB0ZXN0KCkgfQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nl
c3MuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLmpzCSh3b3JraW5n
IGNvcHkpCkBAIC02LDcgKzYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgIHRyeSB7CiAgICAg
ICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQi
LCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5l
LWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKKyAg
ICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3NpbXBs
ZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICBpZiAocmVx
LnJlc3BvbnNlVGV4dCA9PSAiSGVsbG8sIFdvcmxkISIpCiAgICAgICAgICAgICBwYXJlbnQucG9z
dE1lc3NhZ2UoImRvbmUiLCAiKiIpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFu
aWZlc3QJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2Fj
aGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0x
LDUgKzEsNSBAQAogQ0FDSEUgTUFOSUZFU1QKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9z
aW1wbGUudHh0Ci0vcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hl
LW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5q
cworL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUt
YWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1s
CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1h
Y2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLm1hbmlmZXN0Cisv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nl
c3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL3NpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MuanMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvcmVzb3VyY2VzL3JlbW92ZS1jYWNoZS5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9yZW1vdmUtY2FjaGUucHkJKHJl
dmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3Vy
Y2VzL3JlbW92ZS1jYWNoZS5weQkod29ya2luZyBjb3B5KQpAQCAtMjgsMTQgKzI4LDE0IEBAIGlm
IGNvbW1hbmQgPT0gJ3Jlc2V0JzoKICAgICAgICAgb3MucmVtb3ZlKHRtcF9maWxlKQogICAgIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBj
b21tYW5kID09ICdkZWxldGUnOgotICAgIHNldF9zdGF0ZSgnRGVsZXRlZCcsIHRtcF9maWxlKQor
ICAgIHNldF9zdGF0ZSh0bXBfZmlsZSwgJ0RlbGV0ZWQnKQogICAgIHN5cy5zdGRvdXQud3JpdGUo
J0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBzdGF0ZSA9PSAnVW5pbml0
aWFsaXplZCc6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAgICAgJ0NvbnRlbnQtVHlwZTog
dGV4dC9jYWNoZS1tYW5pZmVzdFxyXG5cclxuJwogICAgICAgICAnQ0FDSEUgTUFOSUZFU1RcbicK
ICAgICAgICAgJ05FVFdPUks6XG4nCi0gICAgICAgICdyZW1vdmUtY2FjaGUucHk/Y29tbWFuZD1c
biInCisgICAgICAgICdyZW1vdmUtY2FjaGUucHk/Y29tbWFuZD1cbicKICAgICApCiBlbGlmIHN0
YXRlID09ICdEZWxldGVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKApAQCAtNDMsNCArNDMsNCBA
QCBlbGlmIHN0YXRlID09ICdEZWxldGVkJzoKICAgICAgICAgJ0NvbnRlbnQtVHlwZTogdGV4dC9o
dG1sXHJcblxyXG4nCiAgICAgKQogZWxzZToKLSAgICBzeXMuc3RvZHV0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisg
ICAgc3lzLnN0b2R1dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL25ldHdvcmstZXJyb3ItZHVyaW5nLXJl
dmFsaWRhdGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2Fj
aGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWwJKHJldmlzaW9uIDI3NjMw
OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmct
cmV2YWxpZGF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAgZnVuY3Rp
b24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgbG9nKHN0YXRlID8gIkVuYWJsaW5n
IG5ldHdvcmsiIDogIkRpc2FibGluZyBuZXR3b3JrIik7CiAgICAgdmFyIHJlcSA9IG5ldyBYTUxI
dHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y2FjaGUtbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJmNv
bW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAg
ICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1j
YWNoZS1uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24mY29tbWFuZD0iICsgKHN0YXRl
ID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsK
IH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1mcmFn
bWVudC1pZGVudGlmaWVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jYWNoZS9zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyLmh0bWwJKHJldmlzaW9uIDI3
NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvc3VicmVzb3VyY2UtZnJhZ21l
bnQtaWRlbnRpZmllci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBACiAgICAg
ICAgIHsKICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgdmFyIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKLSAgICAgICAgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y2FjaGUt
c3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsK
KyAgICAgICAgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFn
bWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgICAgICAg
IHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0
OwogICAgICAgICAgICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQxLDE4ICs0MSwxOCBAQAogICAKICAg
ICA8c3R5bGU+CiAgICAgICAgIGRpdiB7Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1
cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjZGl2Jyk7CisgICAgICAgICAgICBi
YWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlm
aWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNkaXYn
KTsKICAgICAgICAgfQogICAgICAgICBwIHsKLSAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IHVybCgnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNwJyk7CisgICAgICAgICAgICBi
YWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlm
aWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNwJyk7
CiAgICAgICAgIH0KICAgICA8L3N0eWxlPgogCiA8L2hlYWQ+CiA8Ym9keT4KICAgICA8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7Ij48L2Rpdj4KLSAgICA8aW1nIHNyYz0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcxIj4KLSAgICA8aW1nIHNyYz0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1j
YWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcyIj4KKyAgICA8aW1nIHNyYz0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hl
LXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzEiPgorICAgIDxpbWcgc3JjPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtc3Vi
cmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1nMiI+CiAgICAgCiAgIFRlc3QgdGhhdCByZXNvdXJjZXMg
d2l0aCBmcmFnbWVudCBpZGVudGlmaWVycyBhcmUgbG9hZGVkIG9ubHkgb25jZS4KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJp
bmctcmV2YWxpZGF0aW9uLWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9u
LWZyYW1lLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y2FjaGUvcmVzb3VyY2VzL25ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbi1mcmFtZS5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xICsxIEBACi08aW1nIHNyYz0iL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jYWNoZS1uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlk
YXRpb24mcGF0aD0vbWlzYy9yZXNvdXJjZXMvY29tcGFzcy5qcGcmYWxsb3ctY2FjaGluZz0xIj4K
KzxpbWcgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y2FjaGUtbmV0
d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uJnBhdGg9L21pc2MvcmVzb3VyY2VzL2NvbXBh
c3MuanBnJmFsbG93LWNhY2hpbmc9MSI+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nv
b2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29r
aWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmln
aW4tcGFnZS5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWluLWNyb3Nz
LW9yaWdpbi1wYWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAgYXN5bmMg
ZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYXdhaXQgc2V0Q29va2llKCJpbXBsaWNpdC1zdHJpY3Qi
LCAiNiIsIHsiU2FtZVNpdGUiOiBudWxsLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsK
ICAgICBhd2FpdCBzZXRDb29raWUoInN0cmljdC1iZWNhdXNlLWludmFsaWQtU2FtZVNpdGUtdmFs
dWUiLCAiNiIsIHsiU2FtZVNpdGUiOiAiaW52YWxpZCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6
ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgibGF4IiwgIjYiLCB7IlNhbWVTaXRlIjogIkxh
eCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwotICAgIHdpbmRvdy5sb2NhdGlvbi5o
cmVmID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBo
cD9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJj
ZXMvY2xpY2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZy
YW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLnB5IjsKKyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9
ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9
aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvY2xp
Y2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZyYW1lLWlu
LWNyb3NzLW9yaWdpbi1wYWdlLnB5IjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3At
bGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBh
Z2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2Ft
ZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlm
cmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZl
bC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGFzeW5jIGZ1bmN0aW9uIHJ1blRl
c3QoKQogICAgIGF3YWl0IHNldENvb2tpZSgiaW1wbGljaXQtc3RyaWN0IiwgIjQiLCB7IlNhbWVT
aXRlIjogbnVsbCwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0
Q29va2llKCJzdHJpY3QtYmVjYXVzZS1pbnZhbGlkLVNhbWVTaXRlLXZhbHVlIiwgIjQiLCB7IlNh
bWVTaXRlIjogImludmFsaWQiLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBh
d2FpdCBzZXRDb29raWUoImxheCIsICI0IiwgeyJTYW1lU2l0ZSI6ICJMYXgiLCAiTWF4LUFnZSI6
IDEwMCwgInBhdGgiOiAiLyJ9KTsKLSAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8v
bG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0Ev
LzEyNy4wLjAuMSUzQTgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2NsaWNrLWh5cGVy
bGluay5weSUzRmhyZWYlM0RmZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHklMjZ0YXJnZXQlM0RfdG9wIjsK
KyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3Vy
Y2VzL2VjaG8taWZyYW1lLXNyYy5weT9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29r
aWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvY2xpY2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNo
LWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1pbi1jcm9z
cy1vcmlnaW4tcGFnZS5weSUyNnRhcmdldCUzRF90b3AiOwogfQogcnVuVGVzdCgpOwogPC9zY3Jp
cHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNo
LWluLWNyb3NzLW9yaWdpbi1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUu
aHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVz
L3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTExLDcgKzExLDcgQEAgYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYXdhaXQg
c2V0Q29va2llKCJpbXBsaWNpdC1zdHJpY3QiLCAiMyIsIHsiU2FtZVNpdGUiOiBudWxsLCAiTWF4
LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9KTsKICAgICBhd2FpdCBzZXRDb29raWUoInN0cmljdC1i
ZWNhdXNlLWludmFsaWQtU2FtZVNpdGUtdmFsdWUiLCAiMyIsIHsiU2FtZVNpdGUiOiAiaW52YWxp
ZCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgi
bGF4IiwgIjMiLCB7IlNhbWVTaXRlIjogIkxheCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIv
In0pOwotICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBocD9zcmM9aHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nv
b2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0
bWwiOworICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5P3NyYz1odHRwOi8vbG9jYWxob3N0OjgwMDAvY29v
a2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUuaHRt
bCI7CiB9CiBydW5UZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL2JvcmRlci1pbWFnZS1sb2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2
MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3ggewogICAgICAg
aGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJraXQtYm9yZGVy
LWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWJv
cmRlci1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3Jk
ZXIxLmpwZyIpIDEwIDEwIDEwIDEwIHN0cmV0Y2g7CisgICAgICAtd2Via2l0LWJvcmRlci1pbWFn
ZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWJvcmRlci1p
bWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3JkZXIxLmpw
ZyIpIDEwIDEwIDEwIDEwIHN0cmV0Y2g7CiAgICAgfQogICAgIAogICAgIC5ib3JkZXJlZCB7Ci0g
ICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9Ym9yZGVyMi5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOworICAgICAg
LXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWNzcy1ib3JkZXItaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1
ZXN0JnBhdGg9Ym9yZGVyMi5qcGciKSAxMCAxMCAxMCAxMCBzdHJldGNoOwogICAgIH0KICAgICAK
ICAgPC9zdHlsZT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS1s
b2FkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3Nz
LWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvY3NzLWltYWdlLWxvYWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwy
NiArOSwyNiBAQAogICAgIC5ib3ggewogICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRo
OiAxMDBweDsKLSAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQxLmpwZyIpOworICAgICAgYmFja2dyb3VuZC1p
bWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1p
bWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iYWNrZ3JvdW5k
MS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLmJhY2tncm91bmQgewotICAgICAgYmFja2dyb3Vu
ZC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dy
b3VuZDIuanBnIik7CisgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJhY2tncm91bmQyLmpwZyIpOwogICAgIH0KICAgICAKICAg
ICAuY29udGVudCB7Ci0gICAgICBjb250ZW50OiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMS5qcGciKTsKKyAgICAgIGNvbnRlbnQ6IHVybCgi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTEuanBnIik7
CiAgICAgfQogCiAgICAgLnRlc3QgewotICAgICAgY29udGVudDogdXJsKCIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTIuanBnIikgImZvb3B5IiB1cmwo
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2Fk
aW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMy5qcGci
KTsKKyAgICAgIGNvbnRlbnQ6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9Y29udGVudC1pbWFnZTIuanBnIikgImZvb3B5IiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UzLmpwZyIpOwogICAgIH0KICAgICAKICAgICB1
bCB7Ci0gICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1saXN0LWltYWdlMS5qcGciKTsKKyAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6
IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2Ut
bG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1pbWFnZTEuanBn
Iik7CiAgICAgfQogICAgIC5saXN0IHsKLSAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UyLmpwZyIpOworICAg
ICAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1saXN0LWltYWdlMi5qcGciKTsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvY3NzLWltYWdlLXZhbHVlZC1z
aGFwZS5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9jc3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3
IEBACiAgICAgICAgIGZsb2F0OiBsZWZ0OwogICAgICAgICB3aWR0aDogMjAwcHg7CiAgICAgICAg
IGhlaWdodDogMjAwcHg7Ci0gICAgICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCIvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocD9uYW1lPXNxdWFyZTEwMC5wbmcmc3RhbGxBdD0wJnN0
YWxsRm9yPTEiKTsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoIi9yZXNvdXJj
ZXMvbG9hZC1hbmQtc3RhbGwucHk/bmFtZT1zcXVhcmUxMDAucG5nJnN0YWxsQXQ9MCZzdGFsbEZv
cj0xIik7CiAgICAgfQogPC9zdHlsZT4KIDwvaGVhZD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY3NzL2ZvbnQtZmFjZS1zcmMtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2ZvbnQtZmFjZS1zcmMtbG9hZGluZy5odG1sCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Utc3JjLWxv
YWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNyBAQCBmdW5jdGlvbiBzdGFy
dFRlc3QoKSB7CiAgICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PSB4aHIuRE9ORSkKICAgICAg
ICAgICAgIGZvcmNlU3R5bGVTZWxlY3RvclJlY3JlYXRpb24oKTsKICAgICB9OwotICAgIHhoci5v
cGVuKCdHRVQnLCAnL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwPycgKyBmaWxlbmFtZSwg
dHJ1ZSk7CisgICAgeGhyLm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5w
eT8nICsgZmlsZW5hbWUsIHRydWUpOwogICAgIHhoci5zZW5kKCk7CiB9CiAKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL21hc2staW1hZ2UtbG9hZGluZy5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL21hc2staW1hZ2UtbG9hZGluZy5odG1sCShy
ZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdl
LWxvYWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3gg
ewogICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJr
aXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tYXNrMS5qcGciKTsKKyAgICAgIC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1tYXNrLWltYWdlLWxvYWRpbmcm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOwogICAgIH0KICAg
ICAKICAgICAubWFza2VkIHsKLSAgICAgIC13ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtbWFzay1pbWFnZS1sb2FkaW5n
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKKyAgICAgIC13
ZWJraXQtbWFzay1ib3gtaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWNzcy1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1hc2syLmpwZyIpOwogICAgIH0KICAgICAKICAgPC9zdHlsZT4KSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3JlZmxlY3Rpb24tbWFzay1pbWFnZS1sb2FkaW5nLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVmbGVjdGlvbi1tYXNr
LWltYWdlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvcmVmbGVjdGlvbi1tYXNrLWltYWdlLWxvYWRpbmcuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtOSwxMSArOSwxMSBAQAogICAgIC5ib3ggewogICAgICAgaGVpZ2h0OiAxMDBweDsK
ICAgICAgIHdpZHRoOiAxMDBweDsKLSAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJlbG93IDEw
cHggdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1yZWZsZWNp
dG9uLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWFzazEuanBnIik7CisgICAgICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgi
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1yZWZsZWNpdG9uLW1hc2st
aW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEuanBn
Iik7CiAgICAgfQogICAgIAogICAgIC5yZWZsZWN0ZWQgewotICAgICAgLXdlYmtpdC1ib3gtcmVm
bGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rl
c3Q9Y3NzLXJlZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tYXNrMi5qcGciKTsKKyAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6IGJl
bG93IDEwcHggdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLXJl
ZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tYXNrMi5qcGciKTsKICAgICB9CiAgICAgCiAgIDwvc3R5bGU+CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1s
b2FkLTItZXhwZWN0ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTItZXhwZWN0ZWQu
aHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVy
dGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLWV4cGVjdGVkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0aW9uIGxvYWRB
bmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9CiAgICAgCiAg
ICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3Mv
dmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0yLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUt
YWZ0ZXItaW1hZ2UtbG9hZC0yLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQt
Mi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0PgogICAgIGZ1
bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAg
ICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLWV4
cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVy
dGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLWV4cGVjdGVkLmh0bWwJKHJl
dmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFs
aWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1leHBlY3RlZC5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC05LDcgKzksNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwo
KQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1bmN0
aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2Fs
LWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMy5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTUsNyArMTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBs
b2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAg
IAogICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGln
bi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDI3NjMw
OCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5l
LWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5
LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAg
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgp
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGlu
ZS1hZnRlci1pbWFnZS1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC5odG1sCShy
ZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1h
bGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1
LDcgKzE1LDcgQEAKIDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiOworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZXNvdXJjZXMvcmVxdWVz
dC1sb2dnaW5nLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3Jl
c291cmNlcy9yZXF1ZXN0LWxvZ2dpbmcuanMJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1ZXN0LWxvZ2dpbmcuanMJKHdvcmtpbmcg
Y29weSkKQEAgLTMsNyArMyw3IEBAIHZhciBSZXNvdXJjZUxvZ2dpbmcgPSB7CiAgICAgewogICAg
ICAgICB0cnkgewogICAgICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAg
ICAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD0iICsgdGhpcy50ZXN0TmFtZSArICImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7Cisg
ICAgICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD0iICsgdGhpcy50ZXN0TmFtZSArICImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CiAg
ICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9u
c2VUZXh0OwogICAgICAgICB9IGNhdGNoIChleCkgewpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25zZS1ib2R5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25zZS1ib2R5Lmh0bWwJKHJldmlzaW9u
IDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvY2xvbmUtcmVzcG9uc2Ut
Ym9keS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBAIHByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7CiAgICAgdmFyIGNsb25l
OwotICAgIHJldHVybiBmZXRjaCgnL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCcpLnRoZW4oZnVuY3Rpb24ocmVzKSB7CisgICAgcmV0
dXJuIGZldGNoKCcvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRp
b249MiZkZWxheT0xMDAnKS50aGVuKGZ1bmN0aW9uKHJlcykgewogICAgICAgICBhc3NlcnRfZXF1
YWxzKHJlcy5zdGF0dXMsIDIwMCk7CiAgICAgICAgIC8vIEFsbCBkYXRhIHNob3VsZCBub3QgYmUg
ZW5xdWV1ZWQgeWV0LgogICAgICAgICBjbG9uZSA9IHJlcy5jbG9uZSgpOwpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZldGNoaW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZldGNo
aW5nLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvY2xvc2luZy13aGlsZS1mZXRjaGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNCw3ICsx
NCw3IEBACiAgICAgICAgIAogdmFyIHRlc3QgPSBhc3luY190ZXN0KCJFbnN1cmluZyB0aGF0IGZl
dGNoIHJlc3BvbnNlIGJvZHkgcHJvbWlzZSBpcyBub3QgZnVsZmlsbGVkIHdoZW4gd2luZG93IGlz
IGNsb3NlZCIpOwogdGVzdC5zdGVwKGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTEwMDAi
OworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/
aXRlcmF0aW9uPTUmZGVsYXk9MTAwMCI7CiAgICAgZmV0Y2godXJsKS50aGVuKHRlc3Quc3RlcF9m
dW5jKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uu
c3RhdHVzLCAyMDApOwogICAgICAgICByZXNwb25zZS50ZXh0KCkudGhlbih0ZXN0LnN0ZXBfZnVu
YyhmdW5jdGlvbihidWZmZXIpIHsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gv
ZmV0Y2gtY29ycy13aXRoLXJlZmVycmVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgtcmVmZXJyZXIuaHRtbAkocmV2aXNpb24g
Mjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKICAgPGJvZHk+CiAg
ICAgPHNjcmlwdD4KIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybCA9ICJo
dHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5w
aHA/aXRlcmF0aW9uPTEmZGVsYXk9MSZjb3JzPXRydWUiOworICAgIHZhciB1cmwgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRl
cmF0aW9uPTEmZGVsYXk9MSZjb3JzPXRydWUiOwogICAgIHJldHVybiBmZXRjaCh1cmwsIHsibW9k
ZSI6ICJjb3JzIiwgInJlZmVycmVyIjogImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZWZlcnJlciJ9
KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnR5
cGUsICJjb3JzIik7CiAgICAgICAgIHJldHVybiByZXNwb25zZS5hcnJheUJ1ZmZlcigpLnRoZW4o
KGFycmF5QnVmZmVyKSA9PiB7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Zl
dGNoaW5nLXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1l
LXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9wdGlvbnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAy
NzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUtcmVz
b3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTEsMTEgKzEsMTEgQEAKIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBp
biBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRy
dWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxo
b3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9u
PTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIGR1ZSB0byBhY2Nl
c3MgY29udHJvbCBjaGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9h
ZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0
PTEgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90
IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50
aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9h
ZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxh
eS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVz
dD0yIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNo
IEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93
Q2FjaGU9dHJ1ZSZ0ZXN0PTIgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KIENPTlNPTEUg
TUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29udHJvbC1BbGxvdy1Pcmln
aW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xFIE1FU1NBR0U6IEZldGNo
IEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxv
d0NhY2hlPXRydWUmdGVzdD0zIGR1ZSB0byBhY2Nlc3MgY29udHJvbCBjaGVja3MuCitDT05TT0xF
IE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAm
Y29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNo
ZWNrcy4KIENPTlNPTEUgTUVTU0FHRTogQ2Fubm90IHVzZSB3aWxkY2FyZCBpbiBBY2Nlc3MtQ29u
dHJvbC1BbGxvdy1PcmlnaW4gd2hlbiBjcmVkZW50aWFscyBmbGFnIGlzIHRydWUuCi1DT05TT0xF
IE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAw
JmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD00IGR1ZSB0byBhY2Nlc3MgY29udHJvbCBj
aGVja3MuCitDT05TT0xFIE1FU1NBR0U6IEZldGNoIEFQSSBjYW5ub3QgbG9hZCBodHRwOi8vbG9j
YWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRp
b249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQgZHVlIHRvIGFj
Y2VzcyBjb250cm9sIGNoZWNrcy4KIAogUEFTUyBFbnN1cmUgY29ycyBjaGVja3Mgd29yayB3aGVu
IGxvYWRpbmcgaW4gcGFyYWxsZWwgdGhlIHNhbWUgcmVzb3VyY2Ugd2l0aCBkaWZmZXJlbnQgbW9k
ZXMKIFBBU1MgRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIHN1Y2Nlc3NpdmVs
eSB0aGUgc2FtZSByZXNvdXJjZSB3aXRoIGRpZmZlcmVudCBtb2RlcwpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50
LW9wdGlvbnMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNo
L2ZldGNoaW5nLXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy5odG1sCShyZXZp
c2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNh
bWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC05LDggKzksOCBAQAogICA8Ym9keT4KICAgICA8c2NyaXB0PgogcHJvbWlzZV90ZXN0KGZ1bmN0
aW9uKHQpIHsKLSAgICB2YXIgdXJsMSA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2Vz
L2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9
dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0xIjsKLSAgICB2YXIgdXJsMiA9ICJodHRwOi8vbG9j
YWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIjsKKyAgICB2
YXIgdXJsMSA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9
dHJ1ZSZ0ZXN0PTEiOworICAgIHZhciB1cmwyID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNv
dXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZj
b3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiI7CiAgICAgcmV0dXJuIFByb21pc2UuYWxs
KFsKICAgICAgICAgICAgIGZldGNoKHVybDEsIHsibW9kZSI6ICJuby1jb3JzIn0pLnRoZW4oKHJl
c3BvbnNlKSA9PiB7CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS50eXBl
LCAib3BhcXVlIik7CkBAIC0zNiw4ICszNiw4IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbih0KSB7
CiB9LCAnRW5zdXJlIGNvcnMgY2hlY2tzIHdvcmsgd2hlbiBsb2FkaW5nIGluIHBhcmFsbGVsIHRo
ZSBzYW1lIHJlc291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVzJyk7CiAKIHByb21pc2VfdGVzdChm
dW5jdGlvbih0KSB7Ci0gICAgdmFyIHVybDMgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZj
b3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyI7Ci0gICAgdmFyIHVybDQgPSAiaHR0cDov
L2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9NCI7Cisg
ICAgdmFyIHVybDMgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1q
c29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0Nh
Y2hlPXRydWUmdGVzdD0zIjsKKyAgICB2YXIgdXJsNCA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAv
cmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0x
MDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQiOwogICAgIHJldHVybiBmZXRjaCh1
cmwzLCB7Im1vZGUiOiAiY29ycyJ9KS50aGVuKChyZXNwb25zZSkgPT4gewogICAgICAgICBhc3Nl
cnRfZXF1YWxzKHJlc3BvbnNlLnR5cGUsICJjb3JzIik7CiAgICAgICAgIHJldHVybiByZXNwb25z
ZS5hcnJheUJ1ZmZlcigpLnRoZW4oKGFycmF5QnVmZmVyKSA9PiB7CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5LXdoaWxlLWxvYWRpbmcuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1i
b2R5LXdoaWxlLWxvYWRpbmcuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9mZXRjaC9nZXQtcmVzcG9uc2UtYm9keS13aGlsZS1sb2FkaW5nLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEzLDcgKzEzLDcgQEAKICAgICA8c2NyaXB0PgogCiBwcm9taXNlX3Rl
c3QoZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIw
MCI7CiAgICAgdmFyIGxvYWRpbmdGbGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCku
dGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNl
LnN0YXR1cywgMjAwKTsKQEAgLTI3LDcgKzI3LDcgQEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkg
ewogfSwgIlRlc3RpbmcgY2FsbGluZyBSZXNwb25zZS50ZXh0KCkgd2hlbiBzdGlsbCBmZXRjaGlu
ZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0y
MDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXku
cHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsKICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsK
ICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAg
IGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCAyMDApOwpAQCAtNDEsNyArNDEsNyBAQCBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7CiB9LCAiVGVzdGluZyBjYWxsaW5nIFJlc3BvbnNlLmFy
cmF5QnVmZmVyKCkgd2hlbiBzdGlsbCBmZXRjaGluZyBkYXRhIik7CiAKIHByb21pc2VfdGVzdChm
dW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0yMDAiOworICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTUmZGVsYXk9MjAwIjsK
ICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICByZXR1cm4gZmV0Y2godXJsKS50aGVu
KGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2Uuc3Rh
dHVzLCAyMDApOwpAQCAtNTUsNyArNTUsNyBAQCBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7CiB9
LCAiVGVzdGluZyBjYWxsaW5nIFJlc3BvbnNlLmJsb2IoKSB3aGVuIHN0aWxsIGZldGNoaW5nIGRh
dGEiKTsKIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7
CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9p
dGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5nRmxhZyA9IGZhbHNlOwogICAg
IHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9kZWNvZGUtc2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RlY29kZS1zbG93LWxvYWQtc3Rh
dGljLWltYWdlLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW1hZ2VzL2RlY29kZS1zbG93LWxvYWQtc3RhdGljLWltYWdlLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTUsNyArNSw3IEBACiAgICAgPGRpdj48L2Rpdj4KICAgICA8c2NyaXB0PgogICAgICAg
ICBmdW5jdGlvbiByZWplY3RlZEltYWdlU291cmNlVVJMKCkgewotICAgICAgICAgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCIKKyAg
ICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5weSIKICAgICAgICAgICAgICAgICAgKyAiP25hbWU9Li4vLi4vLi4vZmFzdC9pbWFn
ZXMvcmVzb3VyY2VzLzEwMHgxMDAtcmVkLnBzZCIgCiAgICAgICAgICAgICAgICAgICsgIiZtaW1l
VHlwZT1pbWFnZSUyRnZuZC5hZG9iZS5waG90b3Nob3AiCiAgICAgICAgICAgICAgICAgICsgIiZz
dGFsbEF0PTEwMjQiOwpAQCAtMTMsNyArMTMsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgZnVu
Y3Rpb24gcmVzb2x2ZWRJbWFnZVNvdXJjZVVSTCgpIHsKLSAgICAgICAgICAgIHJldHVybiAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiCisgICAgICAg
ICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucHkiCiAgICAgICAgICAgICAgICAgICsgIj9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jl
c291cmNlcy9ncmVlbi00MDB4NDAwLnBuZyIgCiAgICAgICAgICAgICAgICAgICsgIiZtaW1lVHlw
ZT1pbWFnZSUyRnBuZyIKICAgICAgICAgICAgICAgICAgKyAiJnN0YWxsQXQ9MTAyNCI7CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1sb2FkLWxh
cmdlLWltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFn
ZXMvZHJhdy1wYXR0ZXJuLXNsb3ctbG9hZC1sYXJnZS1pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYz
MDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1s
b2FkLWxhcmdlLWltYWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDcgQEAKICAg
ICAgICAgLy8gVGhlIG1heGltdW0gYnVmZmVyaW5nIGludGVydmFsIGZvciBJbWFnZVJlc291cmNl
IGlzIDUwMG1zLiBDaG9vc2Ugc3RhbGxGb3IKICAgICAgICAgLy8gc3VjaCB0aGF0IHRoZSBpbWFn
ZSBidWZmZXJpbmcgaXMgZGlzYWJsZWQgaW4gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KICAgICAgICAg
ZnVuY3Rpb24gc2xvd0xhcmdlSW1hZ2VTb3VyY2VVUkwoKSB7Ci0gICAgICAgICAgICByZXR1cm4g
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIgorICAg
ICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5k
LXN0YWxsLnB5IgogICAgICAgICAgICAgICAgICArICI/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdl
cy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmciIAogICAgICAgICAgICAgICAgICArICImbWlt
ZVR5cGU9aW1hZ2UlMkZwbmciCiAgICAgICAgICAgICAgICAgICsgIiZzdGFsbEF0PTUxMiIKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2dpZi1wcm9ncmVzc2l2ZS1sb2FkLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZ2lmLXByb2dy
ZXNzaXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvZ2lmLXByb2dyZXNzaXZlLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
Niw3ICs2LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRT
dGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gZ2lmSW1hZ2UoKQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvaW1hZ2Utc3VwcG9ydHMtdmlkZW8uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9pbWFnZS1zdXBw
b3J0cy12aWRlby5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2ltYWdlcy9pbWFnZS1zdXBwb3J0cy12aWRlby5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDYgKzEsNiBAQAogPHBpY3R1cmU+Ci0gICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMvcmVk
aXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwP3ZpZGVvPXRlc3QubXA0IiB0eXBlPSJ2aWRl
by9tcDQiPgotICAgIDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVv
LWlmLWFjY2VwdGVkLnBocD92aWRlbz10ZXN0Lm9ndiIgdHlwZT0idmlkZW8vb2d2Ij4KKyAgICA8
c291cmNlIHNyY3NldD0iL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5w
eT92aWRlbz10ZXN0Lm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KKyAgICA8c291cmNlIHNyY3NldD0i
L3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weT92aWRlbz10ZXN0Lm9n
diIgdHlwZT0idmlkZW8vb2d2Ij4KICAgICA8aW1nIHNyYz0iL3Jlc291cmNlcy9zcXVhcmUxMDAu
cG5nIj4KIDwvcGljdHVyZT4KIDxicj4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL2pwZWctcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2MzA4KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAK
IGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rp
b24ganBlZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRp
bmctaW1hZ2UtYm9yZGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtNCw3ICs0LDcgQEAKICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdz
LnNldEluY29tcGxldGVJbWFnZUJvcmRlckVuYWJsZWQodHJ1ZSk7CiAKICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBpbWcuc3JjID0gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9Li4vLi4vLi4vZmFzdC9p
bWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5nJnN0
YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOworICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5P25hbWU9Li4vLi4vLi4vZmFz
dC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nJm1pbWVUeXBlPWltYWdlJTJGcG5n
JnN0YWxsQXQ9MCZzdGFsbEZvcj0xMDAiOwogCiAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKICAgICAgICAgfSwgMCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2lt
YWdlcy9sb2FkaW5nLWltYWdlLW5vLWJvcmRlci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWwJKHJldmlz
aW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1h
Z2Utbm8tYm9yZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiAgICAgICAg
IGludGVybmFscy5zZXR0aW5ncy5zZXRJbmNvbXBsZXRlSW1hZ2VCb3JkZXJFbmFibGVkKGZhbHNl
KTsKIAogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIGltZy5z
cmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHA/
bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcmbWlt
ZVR5cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CisgICAgICAgICAgICBp
bWcuc3JjID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwu
cHk/bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcm
bWltZVR5cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CiAKICAgICAgICAg
ICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgICAgICB9LCAwKTsKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL21wNC1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9tcDQtcGFydGlhbC1sb2FkLmh0bWwJ
KHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL21wNC1w
YXJ0aWFsLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQAogCiAgICAg
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgICAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwog
ICAgIH0KIAogICAgIGZ1bmN0aW9uIG1wNEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLW5vLWFscGhh
Lmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2Vz
L3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3
LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgp
CiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5k
LXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0aWFsLWxvYWQuaHRt
bAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5n
LXBhcnRpYWwtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1
cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsK
KyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucHkiOwogfQogCiBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9wbmctcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwJKHJl
dmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9n
cmVzc2l2ZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW1hZ2VzL3dlYnAtcGFydGlhbC1sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxvYWQuaHRtbAkocmV2aXNpb24g
Mjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxv
YWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0K
IAogZnVuY3Rpb24gd2VicEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1h
Z2VzL3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvaW1hZ2VzL3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAy
NzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXByb2dyZXNzaXZl
LWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0
dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsK
IH0KIAogZnVuY3Rpb24gd2VicEltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
bG9hZGluZy9wcmVsb2FkLWltZy10ZXN0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9sb2FkaW5nL3ByZWxvYWQtaW1nLXRlc3QuaHRtbAkocmV2aXNpb24gMjc2MzA4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3ByZWxvYWQtaW1nLXRlc3QuaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtNiw3ICs2LDcgQEAKICAgewogICAgICAgIHRyeSB7CiAgICAg
ICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLXBy
ZWxvYWQtaW1nLXRlc3QmY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICAgIHJlcS5v
cGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
cHJlbG9hZC1pbWctdGVzdCZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgICAgcmVx
LnNlbmQobnVsbCk7CiAgICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0OwogICAgICAg
IH0gY2F0Y2ggKGV4KSB7CkBAIC00OSw3ICs0OSw3IEBACiAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0IiBzcmM9Ii4vcmVzb3VyY2VzL2VtcHR5LmpzIj48L3NjcmlwdD4KIDwvaGVhZD4K
IDxib2R5IG9ubG9hZD0idGVzdCgpIj4KLSAgPGltZyBpZCA9InRlc3RfaW1hZ2UiIHNyYz0iL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLXByZWxvYWQtaW1nLXRl
c3QmY29tbWFuZD1pbmNyZWFzZS1yZXNvdXJjZS1jb3VudCZwYXRoPS9sb2FkaW5nL3Jlc291cmNl
cy9wcmVsb2FkLXRlc3QuanBnIiBvbmVycm9yPSJpbWdfZXJyb3IoKSIgb25sb2FkPSJzZXRUaW1l
b3V0KGNoZWNrQWNjZXNzQ291bnQsIDMwMDApIj4KKyAgPGltZyBpZCA9InRlc3RfaW1hZ2UiIHNy
Yz0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctcHJlbG9hZC1p
bWctdGVzdCZjb21tYW5kPWluY3JlYXNlLXJlc291cmNlLWNvdW50JnBhdGg9L2xvYWRpbmcvcmVz
b3VyY2VzL3ByZWxvYWQtdGVzdC5qcGciIG9uZXJyb3I9ImltZ19lcnJvcigpIiBvbmxvYWQ9InNl
dFRpbWVvdXQoY2hlY2tBY2Nlc3NDb3VudCwgMzAwMCkiPgogICA8cD5UaGlzIHRlc3QgaXMgdG8g
dGVzdCB3aGV0aGVyIHByZWxvYWQgaW1hZ2Ugd2lsbCByZXF1aXJlIDIgbW9yZSByZXF1ZXN0cyBv
ciBub3QuPC9wPgogICA8c3BhbiBpZD0ib3V0cHV0UGFuZWwiPlBBU1NFRDwvc3Bhbj4KIDwvYm9k
eT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXItcHJlbG9hZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbG9jYWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZC5odG1sCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQsNyArMTQsNyBA
QAogICAgIHsKICAgICAgdHJ5IHsKICAgICAgICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVl
c3Q7Ci0gICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
JmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAgICAgcmVxLnNlbmQobnVsbCk7CiAgICAg
ICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAgICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQz
LDM1ICs0MywzNSBAQAogICA8L3NjcmlwdD4KICAgCiAgIDwhLS0gVGhpcyB3aWxsIHRyaWdnZXIg
dGhlIHByZWxvYWQgc2Nhbm5lciAtLT4KLSAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1zY3JpcHQuanMiPjwvc2NyaXB0PgorICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9c2NyaXB0LmpzIj48L3NjcmlwdD4KIAotICA8bGluayByZWw9c3R5bGVzaGVldCBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNz
cyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQuY3NzIj4KLSAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNo
ZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlh
LWJyYWlsbGUtc2NyZWVuLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3Jl
ZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBt
ZWRpYT0iYXVyYWwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hdXJhbC5jc3Mi
PgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9ImhhbmRoZWxkIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhhbmRo
ZWxkLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVk
aWEtdHR5LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0diIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+Ci0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1l
bXB0eS0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmlu
dC0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJodHRwOi8v
MTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MtMi5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwtMi5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1wcmludC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3MuY3NzIj4KKyAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1hdXJhbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS5jc3MiPgorICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFuZGhlbGQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhbi1oYW5kaGVsZC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJv
amVjdGlvbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR2
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS0yLmNzcyI+Cisg
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLWVtcHR5LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
eT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcmludC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0yLmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkiIGhyZWY9Imh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KKyAg
PGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4tMi5jc3MiPgorICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CiAg
IAogPC9oZWFkPgogPGJvZHk+Ci0gIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9aW1h
Z2UuanBnIj4KLSAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1zY3JpcHQtMi5q
cyI+PC9zY3JpcHQ+CisgIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1pbWFnZS5qcGci
PgorICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJl
bG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LTIuanMiPjwvc2Ny
aXB0PgogCiAgIFRlc3Qgc3R5bGVzaGVldCBsb2FkIHNjaGVkdWxpbmcgd2l0aCBwcmVsb2FkIHNj
YW5uZXIuIFJlc291cmNlIGxvYWRzIGZvciBzY3JlZW4gc3R5bGVzaGVldHMgc2hvdWxkIGJlIHNj
aGVkdWxlZCBmaXJzdCwgb3RoZXJzIHNob3VsZCBiZSBzY2hlZHVsZWQgbGFzdC4KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXIuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xNCw3ICsxNCw3IEBACiAgICAgewogICAgICB0cnkgewogICAgICAgICAgdmFy
IHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2Up
OworICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsKICAgICAgICAgIHJlcS5zZW5kKG51bGwp
OwogICAgICAgICAgcmV0dXJuIHJlcS5yZXNwb25zZVRleHQ7CiAgICAgIH0gY2F0Y2ggKGV4KSB7
CkBAIC00MiwzMyArNDIsMzMgQEAKICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcs
IGVuZFRlc3QsIGZhbHNlKTsKICAgPC9zY3JpcHQ+CiAKLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVl
dCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxs
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1wcmludC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
c2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5jc3MiPgotICA8bGluayBy
ZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1zdWNjZXNzLmNzcyI+Ci0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1t
ZWRpYS1zY3JlZW4tcXVlcnktZmFpbC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0iYXVyYWwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYXVyYWwuY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxl
c2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEt
YnJhaWxsZS5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFuZGhlbGQiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhhbmRoZWxkLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByb2pl
Y3Rpb24uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InR2IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR2LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEtMi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LTIuY3Nz
Ij4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1hbGwtMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQi
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3MiPgotICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0y
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3Mt
Mi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CisgIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5jc3MiPgorICA8
bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1w
dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRp
bmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLWFsbC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJp
bnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmludC5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6
IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWF1cmFsLmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtYnJhaWxsZS5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFu
ZGhlbGQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5
bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcm9qZWN0aW9uLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9InR2IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4KKyAgPGxpbmsgcmVs
PXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlhLTIuY3NzIj4KKyAgPGxpbmsg
cmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LTIu
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZw
YXRoPW1lZGlhLWFsbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmlu
dCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0
eWxlc2hlZXQgbWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0y
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy0y
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4iIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNzcyI+CisgIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDAwMDBweCkiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFpbC0yLmNzcyI+CiAgIAogPC9o
ZWFkPgogPGJvZHk+Ci0gIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWltYWdlLmpwZyI+Ci0gIDxz
Y3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CisgIDxpbWcgc3Jj
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJj
ZS1yZXF1ZXN0JnBhdGg9aW1hZ2UuanBnIj4KKyAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1z
Y3JpcHQuanMiPjwvc2NyaXB0PgogCiAgIFRlc3Qgc3R5bGVzaGVldCBsb2FkIHNjaGVkdWxpbmcu
IFJlc291cmNlIGxvYWRzIGZvciBzY3JlZW4gc3R5bGVzaGVldHMgc2hvdWxkIGJlIHNjaGVkdWxl
ZCBmaXJzdCwgb3RoZXJzIHNob3VsZCBiZSBzY2hlZHVsZWQgbGFzdC4KIApJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1v
cGVuLXBhbmVsLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2Nh
bC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWwJKHJldmlz
aW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxl
LWxhc3QtbW9kaWZpZWQtdXNpbmctb3Blbi1wYW5lbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
Niw3ICsxNiw3IEBAIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogZnVuY3Rpb24gb25GaWxlQ2hhbmdl
KGZpbGUsIGZpbGVQYXRoKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsK
LSAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZmls
ZS1sYXN0LW1vZGlmaWVkLnBocD9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQYXRoLCBm
YWxzZSk7CisgICAgeGhyLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weT9wYXRoPS4uL2xvY2FsL2ZpbGVhcGkvIiArIGZpbGVQ
YXRoLCBmYWxzZSk7CiAgICAgeGhyLnNlbmQoKTsKICAgICB2YXIgZXhwZWN0ZWREYXRlID0gbmV3
IERhdGUocGFyc2VJbnQoeGhyLnJlc3BvbnNlVGV4dCkgKiAxMDAwKTsKICAgICB2YXIgYWN0dWFs
RGF0ZSA9IGZpbGUubGFzdE1vZGlmaWVkOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9s
b2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRtbAko
cmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3ICsxMyw3IEBA
IGRlc2NyaXB0aW9uKCJUZXN0IEZpbGUubGFzdE1vZGlmaWVkRGF0ZS4KIGZ1bmN0aW9uIG9uRmls
ZURyb3AoZmlsZSwgZmlsZVBhdGgpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVz
dCgpOwotICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9maWxlLWxhc3QtbW9kaWZpZWQucGhwP3BhdGg9Li4vbG9jYWwvZmlsZWFwaS8iICsgZmlsZVBh
dGgsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5P3BhdGg9Li4vbG9jYWwvZmlsZWFwaS8iICsg
ZmlsZVBhdGgsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogICAgIHZhciBleHBlY3RlZERhdGUg
PSBuZXcgRGF0ZShwYXJzZUludCh4aHIucmVzcG9uc2VUZXh0KSAqIDEwMDApOwogICAgIHZhciBh
Y3R1YWxEYXRlID0gZmlsZS5sYXN0TW9kaWZpZWQ7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAtZmlsZS11dGlscy5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAt
ZmlsZS11dGlscy5qcwkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9sb2NhbC9maWxlYXBpL3Jlc291cmNlcy90ZW1wLWZpbGUtdXRpbHMuanMJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNyArMSw3IEBACiBmdW5jdGlvbiBjcmVhdGVUZW1wRmlsZShmaWxlTmFtZSwgZmls
ZURhdGEpCiB7CiAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5v
cGVuKCJQT1NUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvd3JpdGUtdGVtcC1m
aWxlLnBocD9maWxlbmFtZT0iICsgZmlsZU5hbWUgKyAiJmRhdGE9IiArIGZpbGVEYXRhLCBmYWxz
ZSk7CisgICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy93cml0ZS10ZW1wLWZpbGUucHk/ZmlsZW5hbWU9IiArIGZpbGVOYW1lICsgIiZkYXRhPSIgKyBm
aWxlRGF0YSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiAgICAgaWYgKHhoci5zdGF0dXMgIT0g
MjAwKSB7CiAgICAgICAgIHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWQgcmVzcG9uc2Ugc3RhdHVzIHJl
Y2VpdmVkOiAiICsgeGhyLnN0YXR1cyk7CkBAIC0yMCwxMyArMjAsMTMgQEAgZnVuY3Rpb24gY3Jl
YXRlVGVtcEZpbGUoZmlsZU5hbWUsIGZpbGVEYQogZnVuY3Rpb24gdG91Y2hUZW1wRmlsZShmaWxl
TmFtZSkKIHsKICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9w
ZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy90b3VjaC10ZW1wLWZp
bGUucGhwP2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOworICAgIHhoci5vcGVuKCJQT1NU
IiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnB5P2Zp
bGVuYW1lPSIgKyBmaWxlTmFtZSwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiB9CiAKIGZ1bmN0
aW9uIHJlbW92ZVRlbXBGaWxlKGZpbGVOYW1lKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0
cFJlcXVlc3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxz
ZSk7CisgICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9yZXNldC10ZW1wLWZpbGUucHk/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxzZSk7CiAgICAg
eGhyLnNlbmQoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2sv
dHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLTIuaHRt
bAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFj
ay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLTIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNCw3
ICs0LDcgQEAKIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogewotICAgIHJldHVy
biAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOwor
ICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFs
bC5weSI7CiB9CiAKIGZ1bmN0aW9uIHZ0dFRyYWNrKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNs
b3ctbG9hZGluZy5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmcuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNCw3ICs0LDcgQEAKIDxzY3JpcHQ+CiBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQog
ewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1z
dGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9s
b2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHZ0dFRyYWNrKCkKSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9sYXN0LW1vZGlmaWVkLXBhcnNpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvbGFzdC1tb2RpZmllZC1wYXJzaW5n
Lmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9s
YXN0LW1vZGlmaWVkLXBhcnNpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNSw3ICs1LDcgQEAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiB9CiAKIGZ1bmN0aW9uIHRlc3QodGV4dCkgewotICAg
IGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIHNyYz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQu
cGhwP2RhdGU9JyArIGVzY2FwZSh0ZXh0KSArICciPjwvaWZyYW1lPicpOworICAgIGRvY3VtZW50
LndyaXRlKCc8aWZyYW1lIHNyYz0iLi4vcmVzb3VyY2VzL2xhc3QtbW9kaWZpZWQucHk/ZGF0ZT0n
ICsgZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CiB9CiAKIHRlc3QoJ01vbiwgMjEgTm92
IDIwMDggMDE6MDM6MzMgR01UJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mv
bm8tbGFzdC1tb2RpZmllZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9uby1sYXN0LW1vZGlmaWVkLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKIAogZnVuY3Rpb24gdGVzdCh0ZXh0KSB7Ci0gICAgZG9jdW1lbnQud3Jp
dGUoJzxpZnJhbWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHA/ZGF0ZT0nICsg
ZXNjYXBlKHRleHQpICsgJyI+PC9pZnJhbWU+Jyk7CisgICAgZG9jdW1lbnQud3JpdGUoJzxpZnJh
bWUgc3JjPSIuLi9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weT9kYXRlPScgKyBlc2NhcGUodGV4
dCkgKyAnIj48L2lmcmFtZT4nKTsKIH0KIAogdGVzdCgnJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2FuY2VsLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVwZWF0LW9wZW4tY2Fu
Y2VsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTUsMTIgKzUsMTIgQEAgdmFyIHJlcGVhdENvdW50
ID0gMDsKIAogZnVuY3Rpb24gc2VuZFJlcXVlc3QoKSB7CiAgICAgdmFyIGZpcnN0UmVxID0gbmV3
IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgZmlyc3RSZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMv
ZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MTAwJmRlbGF5PTEiKTsKKyAg
ICBmaXJzdFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVs
YXkucHk/aXRlcmF0aW9uPTEwMCZkZWxheT0xIik7CiAKICAgICBmaXJzdFJlcS5vbnJlYWR5c3Rh
dGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKGZpcnN0UmVxLnJlYWR5U3RhdGUg
PT0gZmlyc3RSZXEuSEVBREVSU19SRUNFSVZFRCkgewogICAgICAgICAgICAgdmFyIHNlY29uZFJl
cSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICAgICAgc2Vjb25kUmVxLm9wZW4oIkdF
VCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTEw
JmRlbGF5PTAiKTsKKyAgICAgICAgICAgIHNlY29uZFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNl
cy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0aW9uPTEwJmRlbGF5PTAiKTsKIAog
ICAgICAgICAgICAgc2Vjb25kUmVxLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAg
ICAgIGlmIChyZXBlYXRDb3VudCsrIDwgNDApCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BlbmRpbmctbG9jYXRpb24t
Y2hhbmdlLWFzc2VydC5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL25hdmlnYXRpb24vcGVuZGluZy1sb2NhdGlvbi1jaGFuZ2UtYXNzZXJ0Lmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAg
IHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OwogfQotd2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnBo
cCI7Cit3aW5kb3cubG9jYXRpb24gPSAiLi4vcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucHki
OwogPC9zY3JpcHQ+PHNjcmlwdD4KIGFsZXJ0KCdGQUlMIDEgb2YgMycpOwogPC9zY3JpcHQ+PHNj
cmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWluZ19vbmxv
YWRfbGlua19wcmVsb2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9kZWxheWluZ19vbmxvYWRfbGlua19wcmVs
b2FkX2FmdGVyX2Rpc2NvdmVyeV9pbWFnZS5odG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9hZF9h
ZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAK
ICAgICB2YXIgZmluaXNoZWRJbWFnZSA9IGZhbHNlOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgotPGxpbmsgcmVsPXByZWxv
YWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwIiBhcz1pbWFnZSBvbmxvYWQ9ImZp
bmlzaGVkSW1hZ2UgPSB0cnVlOyI+Cis8bGluayByZWw9cHJlbG9hZCBocmVmPSIuLi9yZXNvdXJj
ZXMvc2xvdy1pbWFnZS5weSIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5pc2hlZEltYWdlID0gdHJ1ZTsi
PgogPGJvZHk+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
ZnVuY3Rpb24oKSB7CkBAIC0xNSw3ICsxNSw3IEBACiAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpOwogICAgIH0pOwogICAgIHZhciBpbWcgPSBuZXcgSW1hZ2UoKTsKLSAgICBpbWcuc3Jj
ID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCI7CisgICAgaW1nLnNyYyA9ICIuLi9yZXNv
dXJjZXMvc2xvdy1pbWFnZS5weSI7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWcp
OwogPC9zY3JpcHQ+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxv
YWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJlZi5odG1s
CShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvZHlu
YW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTgsMTQgKzgs
MTQgQEAKICAgICBsaW5rLmFzID0gImltYWdlIjsKICAgICBsaW5rLnJlbCA9ICJwcmVsb2FkIjsK
ICAgICAvLyBDYWNoZS1idXN0aW5nIGlzIG5lZWRlZCBmb3Igc2xvdyByZXNvdXJjZXMuCi0gICAg
bGluay5ocmVmID0gIi4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocD9yYW5kPSIgKyBNYXRoLnJh
bmRvbSgpOworICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weT9yYW5k
PSIgKyBNYXRoLnJhbmRvbSgpOwogICAgIHZhciBkb3dubG9hZGVkSW1hZ2UgPSBmYWxzZTsKICAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspOwogICAgIGxpbmsuaHJlZiA9ICIiOwog
ICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAg
IHZhciBlbnRyaWVzID0gcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKTsK
ICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRyaWVzLmxlbmd0aDsgKytpKSB7Ci0gICAg
ICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ctaW1hZ2UucGhwIikgIT0g
LTEpCisgICAgICAgICAgICBpZiAoZW50cmllc1tpXS5uYW1lLmluZGV4T2YoInNsb3ctaW1hZ2Uu
cHkiKSAhPSAtMSkKICAgICAgICAgICAgICAgICBkb3dubG9hZGVkSW1hZ2UgPSB0cnVlOwogICAg
ICAgICB9CiAgICAgICAgIHNob3VsZEJlRmFsc2UoImRvd25sb2FkZWRJbWFnZSIpOwpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2Fk
X2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3ByZWxvYWQvbm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVyeS5o
dG1sCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQv
bm90X2RlbGF5aW5nX3dpbmRvd19vbmxvYWRfYmVmb3JlX2Rpc2NvdmVyeS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgLy8gVGhlIHJhbmQgdmFsdWUgaXMgbmVjZXNz
YXJ5IHRvIGNhY2hlLWJ1c3Qgc2xvdyByZXNvdXJjZXMuCiAgICAgdmFyIHJhbmQgPSBNYXRoLnJh
bmRvbSgpOwogICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9cHJlbG9hZCBocmVmPScuLi9y
ZXNvdXJjZXMvc2xvdy1zY3JpcHQucGw/ZGVsYXk9MjAwO3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1z
Y3JpcHQgb25sb2FkPSd3aW5kb3cuZmluaXNoZWRTY3JpcHQgPSB0cnVlOyB0ZXN0KCk7Jz4iKTsK
LSAgICBkb2N1bWVudC53cml0ZSgiPGxpbmsgcmVsPXByZWxvYWQgaHJlZj0nLi4vcmVzb3VyY2Vz
L3Nsb3ctaW1hZ2UucGhwP3JhbmQ9IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRv
dy5maW5pc2hlZEltYWdlID0gdHJ1ZTsgdGVzdCgpOyc+Iik7CisgICAgZG9jdW1lbnQud3JpdGUo
IjxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9zbG93LWltYWdlLnB5P3JhbmQ9
IiArIHJhbmQgKyAiJyBhcz1pbWFnZSBvbmxvYWQ9J3dpbmRvdy5maW5pc2hlZEltYWdlID0gdHJ1
ZTsgdGVzdCgpOyc+Iik7CiA8L3NjcmlwdD4KIDxib2R5PgogPHNjcmlwdD4KSW5kZXg6IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9vbmxvYWQu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2
aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9ub3RfZXZpY3RpbmdfcHJlbG9hZF9hdF9vbmxvYWQu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAKIDxzY3JpcHQgc3JjPSIvanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIC8vIFRoZSBy
YW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNsb3cgcmVzb3VyY2VzLgotICAg
IHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3Nsb3ctaW1h
Z2UucGhwP3JhbmQ9IiArIE1hdGgucmFuZG9tKCk7CisgICAgdmFyIGltYWdlVVJMID0gImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weT9yYW5kPSIgKyBNYXRoLnJh
bmRvbSgpOwogICAgIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CiAgICAgICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZvcm1hbmNlLmdldEVudHJpZXNC
eU5hbWUoaW1hZ2VVUkwpLmxlbmd0aDsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VzL2Jhc2ljLWF1dGgucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBocAkobm9uZXhpc3RlbnQpCkBA
IC0xLDEwICswLDAgQEAKLTw/cGhwCi0gIGlmICghaXNzZXQoJF9TRVJWRVJbJ1BIUF9BVVRIX1VT
RVInXSkgfHwgIWlzc2V0KCRfUkVRVUVTVFsndWlkJ10pIHx8ICgkX1JFUVVFU1RbJ3VpZCddICE9
ICRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pKSB7Ci0gICBoZWFkZXIoJ1dXVy1BdXRoZW50aWNh
dGU6IEJhc2ljIHJlYWxtPSJXZWJLaXQgVGVzdCBSZWFsbSInKTsKLSAgIGhlYWRlcignSFRUUC8x
LjAgNDAxIFVuYXV0aG9yaXplZCcpOwotICAgZWNobyAnQXV0aGVudGljYXRpb24gY2FuY2VsZWQn
OwotICAgZXhpdDsKLSAgfSBlbHNlIHsKLSAgIGVjaG8gIlVzZXI6IHskX1NFUlZFUlsnUEhQX0FV
VEhfVVNFUiddfSwgcGFzc3dvcmQ6IHskX1NFUlZFUlsnUEhQX0FVVEhfUFcnXX0uIjsKLSAgfQot
Pz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1hdXRoL2F1
dGhvcml6ZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvYXV0aG9yaXplLnBocAkobm9u
ZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTw/cGhwCi0KLXJlcXVpcmVfb25jZSAiZGlnZXN0
LnBocCI7Ci0KLWlmIChlbXB0eSgkX1NFUlZFUlsnUEhQX0FVVEhfRElHRVNUJ10pKSB7Ci0gICAg
aGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgaGVhZGVyKCJXV1ctQXV0
aGVudGljYXRlOiBEaWdlc3QgcmVhbG09XCJ7JHJlYWxtfVwiLHFvcD1cImF1dGhcIixub25jZT1c
Inskbm9uY2V9XCIsb3BhcXVlPVwieyRvcGFxdWV9XCIiKTsKLQotICAgIGVjaG8gIjxoMT5Zb3Ug
YXJlIG5vdCBhbGxvd2VkIHRvIHNlZSB0aGlzIHNlY3JldC48L2gxPiI7Ci19IGVsc2VpZiAoISgk
ZGF0YSA9IGh0dHBfZGlnZXN0X3BhcnNlKCRfU0VSVkVSWydQSFBfQVVUSF9ESUdFU1QnXSkpKSB7
Ci0gICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgZWNobyAiPGgx
PkludmFsaWQgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNlaWYgKCEoJHVzZXJuYW1lID0gdmFs
aWRhdGVfZGlnZXN0KCRkYXRhKSkpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4wIDQwMSBVbmF1dGhv
cml6ZWQnKTsKLSAgICBlY2hvICI8aDE+V3JvbmcgY3JlZGVudGlhbHMuPC9oMT4iOwotfSBlbHNl
IHsKLSAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbicpOwotICAgIGVjaG8gJ1Vz
ZXI6ICcgLiAkdXNlcm5hbWUgLiAiXG4iOwotfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0aC9kaWdlc3QucGhwCShyZXZpc2lv
biAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kaWdlc3QtYXV0
aC9kaWdlc3QucGhwCShub25leGlzdGVudCkKQEAgLTEsNTIgKzAsMCBAQAotPD9waHAKLQotJHJl
YWxtID0gJ0RpZ2VzdCBBdXRoIFByb3RlY3RlZCBBcmVhJzsKLSRub25jZSA9IHVuaXFpZCgpOwot
JG9wYXF1ZSA9IG1kNSgkcmVhbG0pOwotCi0kdXNlcm5hbWUgPSAnZXZlcnlib2R5JzsKLSRwYXNz
d29yZCA9ICdsb3Zlc2JlZXInOwotCi1mdW5jdGlvbiBodHRwX2RpZ2VzdF9wYXJzZSgkdHh0KQot
ewotICAgIC8vIHByb3RlY3QgYWdhaW5zdCBtaXNzaW5nIGRhdGEKLSAgICAkbmVlZGVkX3BhcnRz
ID0gWwotICAgICAgICAnbm9uY2UnID0+IDEsCi0gICAgICAgICduYycgPT4gMSwKLSAgICAgICAg
J2Nub25jZScgPT4gMSwKLSAgICAgICAgJ3FvcCcgPT4gMSwKLSAgICAgICAgJ3VzZXJuYW1lJyA9
PiAxLAotICAgICAgICAndXJpJyA9PiAxLAotICAgICAgICAncmVzcG9uc2UnID0+IDEKLSAgICBd
OwotICAgICRkYXRhID0gW107Ci0gICAgJGtleXMgPSBpbXBsb2RlKCd8JywgYXJyYXlfa2V5cygk
bmVlZGVkX3BhcnRzKSk7Ci0KLSAgICBwcmVnX21hdGNoX2FsbCgnQCgnIC4gJGtleXMgLiAnKT0o
PzooW1wnIl0pKFteXDJdKz8pXDJ8KFteXHMsXSspKUAnLCAkdHh0LCAkbWF0Y2hlcywgUFJFR19T
RVRfT1JERVIpOwotCi0gICAgZm9yZWFjaCAoJG1hdGNoZXMgYXMgJG0pIHsKLSAgICAgICAgJGRh
dGFbJG1bMV1dID0gJG1bM10gPyAkbVszXSA6ICRtWzRdOwotICAgICAgICB1bnNldCgkbmVlZGVk
X3BhcnRzWyRtWzFdXSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICRuZWVkZWRfcGFydHMgPyBmYWxz
ZSA6ICRkYXRhOwotfQotCi1mdW5jdGlvbiB2YWxpZGF0ZV9kaWdlc3QoJGRhdGEpCi17Ci0gICAg
Z2xvYmFsICRyZWFsbSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQ7Ci0KLSAgICBpZiAoJGRhdGFbJ3Vz
ZXJuYW1lJ10gIT09ICR1c2VybmFtZSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgJEEx
ID0gZ2V0X21kNV9vZigkZGF0YVsndXNlcm5hbWUnXSwgJHJlYWxtLCAkcGFzc3dvcmQpOwotICAg
ICRBMiA9IGdldF9tZDVfb2YoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10sICRkYXRhWyd1cmkn
XSk7Ci0gICAgJHZhbGlkX3Jlc3BvbnNlID0gZ2V0X21kNV9vZigkQTEsICRkYXRhWydub25jZSdd
LCAkZGF0YVsnbmMnXSwgJGRhdGFbJ2Nub25jZSddLCAkZGF0YVsncW9wJ10sICRBMik7Ci0KLSAg
ICByZXR1cm4gJGRhdGFbJ3Jlc3BvbnNlJ10gPT0gJHZhbGlkX3Jlc3BvbnNlID8gJHVzZXJuYW1l
IDogbnVsbDsKLX0KLQotZnVuY3Rpb24gZ2V0X21kNV9vZiguLi4kaXRlbXMpCi17Ci0gICAgcmV0
dXJuIG1kNShpbXBsb2RlKCc6JywgJGl0ZW1zKSk7Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNv
bi13aXRoLWRlbGF5LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwCShyZXZpc2lvbiAyNzYzMDgpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVs
YXkucGhwCShub25leGlzdGVudCkKQEAgLTEsMjkgKzAsMCBAQAotPD9waHAKLWhlYWRlcigiRXhw
aXJlczogVGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVQiKTsKLQotaWYgKCRfR0VUWydhbGxv
d0NhY2hlJ10pIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbiIp
OwotfSBlbHNlIHsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1uby1i
dWZmZXJpbmctcGxlYXNlIik7Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwg
bm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSIpOwotICAgIGhlYWRlcigiUHJhZ21hOiBuby1jYWNo
ZSIpOwotfQotCi1pZiAoJF9HRVRbJ2NvcnMnXSkgewotICAgIGhlYWRlcigiQWNjZXNzLUNvbnRy
b2wtQWxsb3ctT3JpZ2luOiAqIik7Ci19Ci0KLSRpdGVyYXRpb24gPSAkX0dFVFsnaXRlcmF0aW9u
J107Ci0kZGVsYXkgPSAkX0dFVFsnZGVsYXknXTsKLQotZWNobyAiWyRpdGVyYXRpb24sICRkZWxh
eSAiOwotCi1mb3IgKCRpID0gMTsgJGkgPD0gJGl0ZXJhdGlvbjsgKyskaSkgewotICAgIGVjaG8g
IiwgJGksIFwiZm9vYmFyXCIiOwotICAgIC8vIEZvcmNlIGNvbnRlbnQgdG8gYmUgc2VudCB0byB0
aGUgYnJvd3NlciBhcyBpcy4KLSAgICBvYl9mbHVzaCgpOwotICAgIGZsdXNoKCk7Ci0gICAgdXNs
ZWVwKCRkZWxheSAqIDEwMDApOwotfQotZWNobyAiXSI7Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0
aC1kZWxheS5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSwzOCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMK
K2ltcG9ydCB0aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkg
PSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5r
X3ZhbHVlcz1UcnVlKQorYWxsb3dfY2FjaGUgPSBxdWVyeS5nZXQoJ2FsbG93Q2FjaGUnLCBbTm9u
ZV0pWzBdCitjb3JzID0gcXVlcnkuZ2V0KCdjb3JzJywgW05vbmVdKVswXQorCitzeXMuc3Rkb3V0
LndyaXRlKCdFeHBpcmVzOiBUaHUsIDAxIERlYyAyMDAzIDE2OjAwOjAwIEdNVFxyXG4nKQorCitp
ZiBhbGxvd19jYWNoZSBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cclxuJykKK2Vsc2U6CisgICAgc3lzLnN0ZG91dC53cml0
ZSgKKyAgICAgICAgJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1uby1idWZmZXJpbmctcGxl
YXNlXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwgbXVz
dC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAgICkK
KworaWYgY29ycyBpcyBub3QgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdBY2Nlc3MtQ29u
dHJvbC1BbGxvdy1PcmlnaW46ICpcclxuJykKKworc3lzLnN0ZG91dC53cml0ZSgnXHJcbicpCisK
K2l0ZXJhdGlvbiA9IGludChxdWVyeS5nZXQoJ2l0ZXJhdGlvbicsIFswXSlbMF0pCitkZWxheSA9
IGludChxdWVyeS5nZXQoJ2RlbGF5JywgWzBdKVswXSkKKworc3lzLnN0ZG91dC53cml0ZSgnW3t9
LCB7fSAnLmZvcm1hdChpdGVyYXRpb24sIGRlbGF5KSkKKworZm9yIGkgaW4gcmFuZ2UoMSwgaXRl
cmF0aW9uICsgMSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnLCB7fSwgImZvb2JhciInLmZvcm1h
dChpKSkKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICB0aW1lLnNsZWVwKGRlbGF5IC8gMTAw
MCkKKworc3lzLnN0ZG91dC53cml0ZSgnXScpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKHJldmlzaW9uIDI3NjMwOCkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHAJKG5v
bmV4aXN0ZW50KQpAQCAtMSwxNSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhl
YWQ+Ci08c2NyaXB0PgotaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKLSAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLX0KLTwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08aWZyYW1lIHNyYz0iPD9waHAgZWNobyAkX0dFVFsnc3JjJ107ID8+Ij48L2lmcmFtZT4K
LTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L2VjaG8taWZyYW1lLXNyYy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5CSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMjUgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitp
bXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworc3JjID0gcGFy
c2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1
ZXM9VHJ1ZSkuZ2V0KCdzcmMnLCBbJyddKVswXQorCitzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworcHJpbnQoJycnPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikge3sKKyAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0Fz
VGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfX0KKzwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0ie30iPjwvaWZyYW1lPgorPC9ib2R5PgorPC9o
dG1sPicnJy5mb3JtYXQoc3JjKSkKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5weQpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBz
dm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJv
cGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1t
b2RpZmllZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnBocAkobm9uZXhpc3Rl
bnQpCkBAIC0xLDcgKzAsMCBAQAotPD9waHAKLWRhdGVfZGVmYXVsdF90aW1lem9uZV9zZXQoJ1VU
QycpOwotJGZpbGVQYXRoID0gJF9HRVRbJ3BhdGgnXTsKLWlmIChmaWxlX2V4aXN0cygkZmlsZVBh
dGgpKSB7Ci0gICAgZWNobyBkYXRlKCJVIiwgZmlsZW10aW1lKCRmaWxlUGF0aCkpOwotfQotPz4K
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmll
ZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9maWxl
LWxhc3QtbW9kaWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lz
Citmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcGF0aCA9IG9zLnBhdGguYWJz
cGF0aChwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3BhdGgnLCBbX19maWxlX19dKVswXSkKKworc3lzLnN0ZG91
dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKK2lmIG9zLnBhdGgu
aXNmaWxlKHBhdGgpOgorICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKG9zLnN0YXQocGF0aCkuc3Rf
bXRpbWUpLnNwbGl0KCcuJylbMF0pCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRl
ZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1v
ZGlmaWVkLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9sYXN0LW1vZGlmaWVkLnBocAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3
ICswLDAgQEAKLTw/cGhwCi0gICAgJGRhdGUgPSAkX0dFVFsnZGF0ZSddOwotICAgIGhlYWRlcigi
TGFzdC1Nb2RpZmllZDogJGRhdGUiKTsKLT8+Ci08c2NyaXB0PgotZG9jdW1lbnQud3JpdGUoKG5l
dyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRvVVRDU3RyaW5nKCkpOwotPC9zY3JpcHQ+
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9sYXN0LW1vZGlmaWVkLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xhc3QtbW9k
aWZpZWQucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvbGFzdC1tb2RpZmllZC5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI2IEBACisjIS91
c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgc3lzCitm
cm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQorZnJvbSBkYXRldXRpbCBpbXBvcnQgcGFyc2Vy
Citmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworZGF0ZSA9IHBhcnNlX3FzKG9z
LmVudmlyb24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUp
LmdldCgnZGF0ZScsIFtOb25lXSlbMF0KKworaWYgZGF0ZSBpcyBOb25lIG9yIGRhdGUgPT0gJyc6
CisgICAgZGF0ZSA9IGRhdGV0aW1lLnV0Y25vdygpLnN0cmZ0aW1lKCclYSwgJWQgJWIgJVkgJUg6
JU06JVMgR01UJykKK2Vsc2U6CisgICAgZGF0ZSA9IHBhcnNlci5wYXJzZShkYXRlKQorICAgIGRh
dGUgPSBkYXRlLnN0cmZ0aW1lKCclYSwgJWQgJWIgJVkgJUg6JU06JVMgR01UJykKKworCitzeXMu
c3Rkb3V0LndyaXRlKAorICAgICdMYXN0LU1vZGlmaWVkOiB7fVxyXG4nCisgICAgJ0NvbnRlbnQt
VHlwZTogdGV4dC9odG1sXHJcblxyXG4nLmZvcm1hdChkYXRlKQorKQorCitwcmludCgnJyc8c2Ny
aXB0PgorZG9jdW1lbnQud3JpdGUoKG5ldyBEYXRlKGRvY3VtZW50Lmxhc3RNb2RpZmllZCkpLnRv
VVRDU3RyaW5nKCkpOworPC9zY3JpcHQ+JycnKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbGFzdC1tb2RpZmllZC5weQpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFk
ZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQt
YW5kLXN0YWxsLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAkobm9uZXhpc3RlbnQpCkBA
IC0xLDUwICswLDAgQEAKLTw/cGhwCi0kbmFtZSA9ICRfR0VUWyduYW1lJ107Ci0kc3RhbGxBdCA9
ICRfR0VUWydzdGFsbEF0J107Ci0kc3RhbGxGb3IgPSAkX0dFVFsnc3RhbGxGb3InXTsKLSRzdGFs
bFJlcGVhdCA9ICRfR0VUWydzdGFsbFJlcGVhdCddOwotJG1pbWVUeXBlID0gJF9HRVRbJ21pbWVU
eXBlJ107Ci0KLSRmaWxlID0gZm9wZW4oJG5hbWUsICJyYiIpOwotaWYgKCEkZmlsZSkKLSAgICBk
aWUoIkNhbm5vdCBvcGVuIGZpbGUuIik7Ci0KLWhlYWRlcigiQ29udGVudC1UeXBlOiAiIC4gJG1p
bWVUeXBlKTsKLWhlYWRlcigiQ29udGVudC1MZW5ndGg6ICIgLiBmaWxlc2l6ZSgkbmFtZSkpOwot
Ci1pZiAoaXNzZXQoJHN0YWxsQXQpICYmIGlzc2V0KCRzdGFsbEZvcikpIHsKLSAgICAkc3RhbGxB
dCA9IChpbnQpJHN0YWxsQXQ7Ci0gICAgaWYgKCRzdGFsbEF0ID4gZmlsZXNpemUoJG5hbWUpKQot
ICAgICAgICBkaWUoIkluY29ycmVjdCB2YWx1ZSBmb3Igc3RhbGxBdC4iKTsKLQotICAgICR3cml0
dGVuVG90YWwgPSAwOwotICAgICRmaWxlU2l6ZSA9IGZpbGVzaXplKCRuYW1lKTsKLQotICAgIHdo
aWxlICgkd3JpdHRlblRvdGFsIDwgJGZpbGVTaXplKSB7Ci0gICAgICAgICRzdGFsbEF0ID0gbWlu
KCRzdGFsbEF0LCAkZmlsZVNpemUgLSAkd3JpdHRlblRvdGFsKTsKLSAgICAgICAgJHdyaXR0ZW4g
PSAwOwotCi0gICAgICAgIHdoaWxlICgkd3JpdHRlbiA8ICRzdGFsbEF0KSB7Ci0gICAgICAgICAg
ICAkd3JpdGUgPSBtaW4oMTAyNCwgJHN0YWxsQXQgLSAkd3JpdHRlbik7Ci0gICAgICAgICAgICBl
Y2hvKGZyZWFkKCRmaWxlLCAkd3JpdGUpKTsKLSAgICAgICAgICAgICR3cml0dGVuICs9ICR3cml0
ZTsKLSAgICAgICAgICAgIGZsdXNoKCk7Ci0gICAgICAgICAgICBvYl9mbHVzaCgpOwotICAgICAg
ICB9Ci0KLSAgICAgICAgJHdyaXR0ZW5Ub3RhbCArPSAkd3JpdHRlbjsKLSAgICAgICAgJHJlbWFp
bmluZyA9ICRmaWxlU2l6ZSAtICR3cml0dGVuVG90YWw7Ci0gICAgICAgIGlmICghJHJlbWFpbmlu
ZykKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIHVzbGVlcCgkc3RhbGxGb3IgKiAxMDAw
MDAwKTsKLSAgICAgICAgaWYgKCFpc3NldCgkc3RhbGxSZXBlYXQpIHx8ICEkc3RhbGxSZXBlYXQp
Ci0gICAgICAgICAgICAkc3RhbGxBdCA9ICRyZW1haW5pbmc7Ci0gICAgfQotfSBlbHNlIHsKLSAg
ICBlY2hvKGZyZWFkKCRmaWxlLCBmaWxlc2l6ZSgkbmFtZSkpKTsKLSAgICBmbHVzaCgpOwotICAg
IG9iX2ZsdXNoKCk7Ci19Ci1mY2xvc2UoJGZpbGUpOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5CShub25leGlzdGVu
dCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjYgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMK
KworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2Ug
aW1wb3J0IHBhcnNlX3FzCisKK3F1ZXJ5ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZ
X1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkKK25hbWUgPSBxdWVyeS5nZXQo
J25hbWUnLCBbJyddKVswXQorc3RhbGxfYXQgPSBxdWVyeS5nZXQoJ3N0YWxsQXQnLCBbTm9uZV0p
WzBdCitzdGFsbF9mb3IgPSBxdWVyeS5nZXQoJ3N0YWxsRm9yJywgW05vbmVdKVswXQorc3RhbGxf
cmVwZWF0ID0gcXVlcnkuZ2V0KCdzdGFsbFJlcGVhdCcsIFtOb25lXSlbMF0KK21pbWVfdHlwZSA9
IHF1ZXJ5LmdldCgnbWltZVR5cGUnLCBbJyddKVswXQorCitpZiBub3Qgb3MucGF0aC5pc2ZpbGUo
bmFtZSk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicpCisgICAgc3lzLmV4aXQoMCkKKworbmFtZSA9IG9zLnBhdGguYWJzcGF0aChuYW1lKQor
CitvcGVuX2ZpbGUgPSBvcGVuKG5hbWUsICdyYicpCitmaWxlX3NpemUgPSBvcy5wYXRoLmdldHNp
emUobmFtZSkKK2NvbnRlbnQgPSBvcGVuX2ZpbGUucmVhZCgpCisKK3N5cy5zdGRvdXQud3JpdGUo
CisgICAgJ0NvbnRlbnQtVHlwZToge31cclxuJworICAgICdDb250ZW50LUxlbmd0aDoge31cclxu
XHJcbicuZm9ybWF0KG1pbWVfdHlwZSwgZmlsZV9zaXplKQorKQorCitpZiBzdGFsbF9hdCBpcyBu
b3QgTm9uZSBhbmQgc3RhbGxfZm9yIGlzIG5vdCBOb25lOgorICAgIHN0YWxsX2F0ID0gaW50KHN0
YWxsX2F0KQorICAgIHN0YWxsX2ZvciA9IGZsb2F0KHN0YWxsX2ZvcikKKworICAgIGlmIHN0YWxs
X2F0ID4gZmlsZV9zaXplOgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdJbmNvcnJlY3QgdmFs
dWUgZm9yIHN0YWxsQXQuJykKKyAgICAgICAgc3lzLmV4aXQoMCkKKworICAgIHdyaXR0ZW5fdG90
YWwgPSAwCisgICAgd2hpbGUgd3JpdHRlbl90b3RhbCA8IGZpbGVfc2l6ZToKKyAgICAgICAgc3Rh
bGxfYXQgPSBtaW4oc3RhbGxfYXQsIGZpbGVfc2l6ZSAtIHdyaXR0ZW5fdG90YWwpCisgICAgICAg
IHdyaXR0ZW4gPSAwCisKKyAgICAgICAgd2hpbGUgd3JpdHRlbiA8IHN0YWxsX2F0OgorICAgICAg
ICAgICAgd3JpdGUgPSBtaW4oMTAyNCwgc3RhbGxfYXQgLSB3cml0dGVuKQorCisgICAgICAgICAg
ICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRl
KGNvbnRlbnRbd3JpdHRlbl90b3RhbCArIHdyaXR0ZW46d3JpdHRlbl90b3RhbCArIHdyaXR0ZW4g
KyB3cml0ZV0pCisgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKworICAgICAgICAgICAg
d3JpdHRlbiArPSB3cml0ZQorCisgICAgICAgIHdyaXR0ZW5fdG90YWwgKz0gd3JpdHRlbgorICAg
ICAgICByZW1haW5pbmcgPSBmaWxlX3NpemUgLSB3cml0dGVuX3RvdGFsCisKKyAgICAgICAgaWYg
cmVtYWluaW5nID09IDA6CisgICAgICAgICAgICBicmVhaworCisgICAgICAgIHRpbWUuc2xlZXAo
c3RhbGxfZm9yKQorICAgICAgICBpZiBzdGFsbF9yZXBlYXQgaXMgTm9uZToKKyAgICAgICAgICAg
IHN0YWxsX2F0ID0gcmVtYWluaW5nCitlbHNlOgorICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAg
IHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGNvbnRlbnQpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgp
CisKK29wZW5fZmlsZS5jbG9zZSgpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weQpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBz
dm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJv
cGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5waHAJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAkobm9uZXhpc3RlbnQp
CkBAIC0xLDE5OCArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVy
LnBocCc7Ci0KLS8vIFRoaXMgc2NyaXB0IGFjdHMgYXMgYSBzdGF0ZWZ1bCBwcm94eSBmb3IgcmV0
cmlldmluZyBmaWxlcy4gV2hlbiB0aGUgc3RhdGUgaXMgc2V0IHRvCi0vLyBvZmZsaW5lLCBpdCBz
aW11bGF0ZXMgYSBuZXR3b3JrIGVycm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KLQotaWYg
KCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBoZWFkZXIoIkhUVFAvMS4xIDUwMCBJbnRlcm5h
bCBTZXJ2ZXIgRXJyb3IiKTsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJu
ZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotaWYgKCFpc3NldCgkX0dFVFsndGVzdCddKSkgewot
ICAgIGhlYWRlcigiSFRUUC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVj
aG8gInRlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHVuaXF1ZSB0ZXN0IG5h
bWVcbiI7Ci0gICAgZXhpdCgpOwotfQotCi1mdW5jdGlvbiB0ZW1wUGF0aEJhc2UoKQotewotICAg
IHJldHVybiBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsndGVzdCddOwotfQotCi1m
dW5jdGlvbiBzZXRTdGF0ZSgkbmV3U3RhdGUsICRmaWxlKQotewotICAgIGZpbGVfcHV0X2NvbnRl
bnRzKCRmaWxlLCAkbmV3U3RhdGUpOwotfQotCi1mdW5jdGlvbiBnZXRTdGF0ZSgkZmlsZSkKLXsK
LSAgICBpZiAoIWZpbGVfZXhpc3RzKCRmaWxlKSkgewotICAgICAgICByZXR1cm4gIlVuaW5pdGlh
bGl6ZWQiOwotICAgIH0KLSAgICByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoJGZpbGUpOwotfQot
Ci1mdW5jdGlvbiBjb250ZW50VHlwZSgkcGF0aCkKLXsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
aHRtbCQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gInRleHQvaHRtbCI7Ci0gICAgaWYgKHBy
ZWdfbWF0Y2goIi9cLm1hbmlmZXN0JC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAidGV4dC9j
YWNoZS1tYW5pZmVzdCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLmpzJC8iLCAkcGF0aCkpCi0g
ICAgICAgIHJldHVybiAidGV4dC9qYXZhc2NyaXB0IjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
eG1sJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veG1sIjsKLSAgICBp
ZiAocHJlZ19tYXRjaCgiL1wueGh0bWwkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJhcHBs
aWNhdGlvbi94aHRtbCt4bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5zdmckLyIsICRwYXRo
KSkKLSAgICAgICAgcmV0dXJuICJhcHBsaWNhdGlvbi9zdmcreG1sIjsKLSAgICBpZiAocHJlZ19t
YXRjaCgiL1wueHNsJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAiYXBwbGljYXRpb24veHNs
dCt4bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5naWYkLyIsICRwYXRoKSkKLSAgICAgICAg
cmV0dXJuICJpbWFnZS9naWYiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC5qcGckLyIsICRwYXRo
KSkKLSAgICAgICAgcmV0dXJuICJpbWFnZS9qcGVnIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wu
cG5nJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAiaW1hZ2UvcG5nIjsKLSAgICByZXR1cm4g
InRleHQvcGxhaW4iOwotfQotCi1mdW5jdGlvbiBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCkK
LXsKLSAgICBoZWFkZXIoIkV4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAgR01UIik7
Ci0gICAgaGVhZGVyKCJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2
YWxpZGF0ZSIpOwotICAgIGhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOwotfQotCi1mdW5jdGlv
biBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKQotewotICAgIGdsb2JhbCAkc3RhdGVGaWxlOwotICAg
ICRzdGF0ZSA9IGdldFN0YXRlKCRzdGF0ZUZpbGUpOwotICAgIGlmICgkc3RhdGUgPT0gIk9mZmxp
bmUiKSB7Ci0gICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3JrIGVycm9yIGJ5IHJlcGx5aW5nIHdp
dGggYSBub25zZW5zZSByZXNwb25zZS4KLSAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSAzMDcgVGVt
cG9yYXJ5IFJlZGlyZWN0Jyk7Ci0gICAgICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX1NFUlZF
UlsnUkVRVUVTVF9VUkknXSk7ICMgUmVkaXJlY3QgdG8gc2VsZi4KLSAgICAgICAgaGVhZGVyKCdD
b250ZW50LUxlbmd0aDogMScpOwotICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiA1Jywg
ZmFsc2UpOyAjIE11bHRpcGxlIGNvbnRlbnQtbGVuZ3RoIGhlYWRlcnMsIHNvbWUgbmV0d29yayBz
dGFja3MgY2FuIGRldGVjdCB0aGlzIGNvbmRpdGlvbiBmYXN0ZXIuCi0gICAgICAgIGVjaG8gIklu
dGVudGlvbmFsbHkgaW5jb3JyZWN0IHJlc3BvbnNlLiI7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAg
Ly8gQSBsaXR0bGUgc2VjdXJ1dHkgY2hlY2tpbmcgY2FuJ3QgaHVydC4KLSAgICAgICAgaWYgKHN0
cnN0cigkcGF0aCwgIi4uIikpCi0gICAgICAgICAgICBleGl0OwotCi0gICAgICAgIGlmICgkcGF0
aFswXSA9PSAnLycpCi0gICAgICAgICAgICAkcGF0aCA9ICcuLicgLiAkcGF0aDsKLQotICAgICAg
ICBpZiAoISRfR0VUWydhbGxvdy1jYWNoaW5nJ10pCi0gICAgICAgICAgICBnZW5lcmF0ZU5vQ2Fj
aGVIVFRQSGVhZGVyKCk7Ci0KLSAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgewotICAg
ICAgICAgICAgaGVhZGVyKCJMYXN0LU1vZGlmaWVkOiAiIC4gZ21kYXRlKCJELCBkIE0gWSBIOmk6
cyBUIiwgZmlsZW10aW1lKCRwYXRoKSkpOwotICAgICAgICAgICAgaGVhZGVyKCJDb250ZW50LVR5
cGU6ICIgLiBjb250ZW50VHlwZSgkcGF0aCkpOwotICAgICAgICAKLSAgICAgICAgICAgIHByaW50
IGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAg
IGhlYWRlcignSFRUUC8xLjEgNDA0IE5vdCBGb3VuZCcpOwotICAgICAgICB9Ci0gICAgfQotfQot
Ci1mdW5jdGlvbiBoYW5kbGVJbmNyZWFzZVJlc291cmNlQ291bnRDb21tYW5kKCRwYXRoKQotewot
ICAgICRyZXNvdXJjZUNvdW50RmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7Ci0gICAg
JHJlc291cmNlQ291bnQgPSBnZXRTdGF0ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAgICRwaWVj
ZXMgPSBleHBsb2RlKCIgIiwgJHJlc291cmNlQ291bnQpOwotICAgICRjb3VudCA9IDA7Ci0gICAg
aWYgKGNvdW50KCRwaWVjZXMpID09IDIgJiYgJHBpZWNlc1swXSA9PSAkcGF0aCkgewotICAgICAg
ICAkY291bnQgPSAxICsgJHBpZWNlc1sxXTsKLSAgICB9IGVsc2UgewotICAgICAgICAkY291bnQg
PSAxOwotICAgIH0KLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsICRw
YXRoIC4gIiAiIC4gJGNvdW50KTsKLSAgICBnZW5lcmF0ZVJlc3BvbnNlKCRwYXRoKTsKLX0KLQot
ZnVuY3Rpb24gaGFuZGxlUmVzZXRSZXNvdXJjZUNvdW50Q29tbWFuZCgpCi17Ci0gICAgJHJlc291
cmNlQ291bnRGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLWNvdW50IjsKLSAgICBmaWxlX3B1dF9j
b250ZW50cygkcmVzb3VyY2VDb3VudEZpbGUsIDApOwotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBI
ZWFkZXIoKTsKLSAgICBoZWFkZXIoJ0hUVFAvMS4xIDIwMCBPSycpOwotfQotCi1mdW5jdGlvbiBo
YW5kbGVHZXRSZXNvdXJjZUNvdW50Q29tbWFuZCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VDb3Vu
dEZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItY291bnQiOwotICAgICRyZXNvdXJjZUNvdW50ID0g
Z2V0U3RhdGUoJHJlc291cmNlQ291bnRGaWxlKTsKLSAgICAkcGllY2VzID0gZXhwbG9kZSgiICIs
ICRyZXNvdXJjZUNvdW50KTsKLSAgICBnZW5lcmF0ZU5vQ2FjaGVIVFRQSGVhZGVyKCk7Ci0gICAg
aGVhZGVyKCdIVFRQLzEuMSAyMDAgT0snKTsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAm
JiAkcGllY2VzWzBdID09ICRwYXRoKSB7Ci0gICAgICAgIGVjaG8gJHBpZWNlc1sxXTsKLSAgICB9
IGVsc2UgewotICAgICAgICBlY2hvIDA7Ci0gICAgfQotfQotCi1mdW5jdGlvbiBoYW5kbGVTdGFy
dFJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0
aEJhc2UoKSAuICItbG9nIjsKLSAgICBmaWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxl
LCAgIiIpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVDbGVhclJlc291cmNlUmVxdWVzdHNMb2coKQot
ewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICBm
aWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhh
bmRsZUdldFJlc291cmNlUmVxdWVzdHNMb2coKQotewotICAgICRyZXNvdXJjZUxvZ0ZpbGUgPSB0
ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLQotICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIo
KTsKLSAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbiIpOwotCi0gICAgcHJpbnQg
ZmlsZV9nZXRfY29udGVudHMoJHJlc291cmNlTG9nRmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRs
ZUxvZ1Jlc291cmNlUmVxdWVzdCgkcGF0aCkKLXsKLSAgICAkcmVzb3VyY2VMb2dGaWxlID0gdGVt
cFBhdGhCYXNlKCkgLiAiLWxvZyI7Ci0gICAgCi0gICAgJG5ld0RhdGEgPSAiXG4iLiRwYXRoOwot
ICAgIC8vIERvY3VtZW50YXRpb24gc2F5cyB0aGF0IGFwcGVuZHMgYXJlIGF0b21pYy4KLSAgICBm
aWxlX3B1dF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxlLCAkbmV3RGF0YSwgRklMRV9BUFBFTkQp
OwotfQotCi0kc3RhdGVGaWxlID0gdGVtcFBhdGhCYXNlKCkgLiAiLXN0YXRlIjsKLSRjb21tYW5k
ID0gJF9HRVRbJ2NvbW1hbmQnXTsKLWlmICgkY29tbWFuZCkgewotICAgIGlmICgkY29tbWFuZCA9
PSAiY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJPbmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAg
ICBlbHNlIGlmICgkY29tbWFuZCA9PSAiZGlzY29ubmVjdCIpCi0gICAgICAgIHNldFN0YXRlKCJP
ZmZsaW5lIiwgJHN0YXRlRmlsZSk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImluY3JlYXNl
LXJlc291cmNlLWNvdW50IikKLSAgICAgICAgaGFuZGxlSW5jcmVhc2VSZXNvdXJjZUNvdW50Q29t
bWFuZCgkX0dFVFsncGF0aCddKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAicmVzZXQtcmVz
b3VyY2UtY291bnQiKQotICAgICAgICBoYW5kbGVSZXNldFJlc291cmNlQ291bnRDb21tYW5kKCk7
Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImdldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAg
IGhhbmRsZUdldFJlc291cmNlQ291bnRDb21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2Ug
aWYgKCRjb21tYW5kID09ICJzdGFydC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhh
bmRsZVN0YXJ0UmVzb3VyY2VSZXF1ZXN0c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09
ICJjbGVhci1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZUNsZWFyUmVzb3Vy
Y2VSZXF1ZXN0c0xvZygpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJnZXQtcmVzb3VyY2Ut
cmVxdWVzdC1sb2ciKQotICAgICAgICBoYW5kbGVHZXRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0g
ICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImxvZy1yZXNvdXJjZS1yZXF1ZXN0IikKLSAgICAgICAg
aGFuZGxlTG9nUmVzb3VyY2VSZXF1ZXN0KCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UKLSAgICAg
ICAgZWNobyAiVW5rbm93biBjb21tYW5kOiAiIC4gJGNvbW1hbmQgLiAiXG4iOwotICAgIGV4aXQo
KTsKLX0KLQotJHJlcXVlc3RlZFBhdGggPSAkX0dFVFsncGF0aCddOwotZ2VuZXJhdGVSZXNwb25z
ZSgkcmVxdWVzdGVkUGF0aCk7Ci0/PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKG5vbmV4aXN0ZW50KQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHkJKHdv
cmtpbmcgY29weSkKQEAgLTAsMCArMSwxNzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKwor
IyBUaGlzIHNjcmlwdCBhY3RzIGFzIGEgc3RhdGVmdWwgcHJveHkgZm9yIHJldHJpZXZpbmcgZmls
ZXMuIFdoZW4gdGhlIHN0YXRlIGlzIHNldCB0bworIyBvZmZsaW5lLCBpdCBzaW11bGF0ZXMgYSBu
ZXR3b3JrIGVycm9yIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKworaW1wb3J0IG9zCitpbXBv
cnQgc3lzCitpbXBvcnQgdGVtcGZpbGUKK2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCitm
cm9tIHBvcnRhYmlsaXR5TGF5ZXIgaW1wb3J0IGdldF9zdGF0ZSwgc2V0X3N0YXRlCitmcm9tIHVy
bGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9u
LmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQordGVzdCA9
IHF1ZXJ5LmdldCgndGVzdCcsIFtOb25lXSlbMF0KK2NvbW1hbmQgPSBxdWVyeS5nZXQoJ2NvbW1h
bmQnLCBbTm9uZV0pWzBdCisKK2lmIHRlc3QgaXMgTm9uZToKKyAgICBzeXMuc3Rkb3V0LndyaXRl
KAorICAgICAgICAnc3RhdHVzOiA1MDBcclxuJworICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0
L2h0bWxcclxuXHJcbicKKyAgICAgICAgJ3Rlc3QgcGFyYW1ldGVyIG11c3QgYmUgc3BlY2lmaWVk
IGZvciBhIHVuaXF1ZSB0ZXN0IG5hbWVcbicKKyAgICApCisgICAgc3lzLmV4aXQoMCkKKworCitk
ZWYgdGVtcF9wYXRoX2Jhc2UoKToKKyAgICByZXR1cm4gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdl
dHRlbXBkaXIoKSwgdGVzdCkKKworCitzdGF0ZV9maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICct
c3RhdGUnCisKKworZGVmIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCk6CisgICAgc3lz
LnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ0V4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6
MDAgR01UXHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBuby1zdG9yZSwg
bXVzdC1yZXZhbGlkYXRlXHJcbicKKyAgICAgICAgJ1ByYWdtYTogbm8tY2FjaGVcclxuJworICAg
ICkKKworCitkZWYgY29udGVudF90eXBlKHBhdGgpOgorICAgIHJldHVybiB7CisgICAgICAgICdo
dG1sJzogJ3RleHQvaHRtbCcsCisgICAgICAgICdtYW5pZmVzdCc6ICd0ZXh0L2NhY2hlLW1hbmlm
ZXN0JywKKyAgICAgICAgJ2pzJzogJ3RleHQvamF2YXNjcmlwdCcsCisgICAgICAgICd4bWwnOiAn
YXBwbGljYXRpb24veG1sJywKKyAgICAgICAgJ3hodG1sJzogJ2FwcGxpY2F0aW9uL3hodG1sK3ht
bCcsCisgICAgICAgICdzdmcnOiAnYXBwbGljYXRpb24vc3ZnK3htbCcsCisgICAgICAgICd4c2wn
OiAnYXBwbGljYXRpb24veHNsdCt4bWwnLAorICAgICAgICAnZ2lmJzogJ2ltYWdlL2dpZicsCisg
ICAgICAgICdqcGcnOiAnaW1hZ2UvanBlZycsCisgICAgICAgICdwbmcnOiAnaW1hZ2UvcG5nJwor
ICAgIH0uZ2V0KHBhdGguc3BsaXQoJy4nKVstMV0sICd0ZXh0L3BsYWluJykKKworCitkZWYgZ2Vu
ZXJhdGVfcmVzcG9uc2UocGF0aCk6CisgICAgc3RhdGUgPSBnZXRfc3RhdGUoc3RhdGVfZmlsZSkK
KyAgICBpZiBzdGF0ZSA9PSAnT2ZmbGluZSc6CisgICAgICAgICMgU2ltdWxhdGUgYSBuZXR3b3Jr
IGVycm9yIGJ5IHJlcGx5aW5nIHdpdGggYSBub25zZW5zZSByZXNwb25zZS4KKyAgICAgICAgc3lz
LnN0ZG91dC53cml0ZSgKKyAgICAgICAgICAgICdzdGF0dXM6IDMwN1xyXG4nCisgICAgICAgICAg
ICAnTG9jYXRpb246IHt9XHJcblxyXG4nICAjIFJlZGlyZWN0IHRvIHNlbGYuCisgICAgICAgICAg
ICAnSW50ZW50aW9uYWxseSBpbmNvcnJlY3QgcmVzcG9uc2UuJy5mb3JtYXQob3MuZW52aXJvbi5n
ZXQoJ1JFUVVFU1RfVVJJJywgJycpKQorICAgICAgICApCisgICAgZWxzZToKKyAgICAgICAgIyBB
IGxpdHRsZSBzZWN1cnV0eSBjaGVja2luZyBjYW4ndCBodXJ0LgorICAgICAgICBpZiAnLi4nIGlu
IHBhdGg6CisgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKKyAgICAgICAgICAgIHN5cy5leGl0KDApCisKKyAgICAgICAgaWYgbGVu
KHBhdGgpID4gMCBhbmQgcGF0aFswXSA9PSAnLyc6CisgICAgICAgICAgICBwYXRoID0gJy4uJyAr
IHBhdGgKKworICAgICAgICBpZiAnYWxsb3ctY2FjaGluZycgbm90IGluIHF1ZXJ5LmtleXMoKToK
KyAgICAgICAgICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVhZGVyKCkKKworICAgICAgICBp
ZiBvcy5wYXRoLmlzZmlsZShwYXRoKToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoCisg
ICAgICAgICAgICAgICAgJ0xhc3QtTW9kaWZpZWQ6IHt9IEdNVFxyXG4nCisgICAgICAgICAgICAg
ICAgJ0NvbnRlbnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KGRhdGV0aW1lLnV0Y2Zyb210aW1l
c3RhbXAob3Muc3RhdChwYXRoKS5zdF9tdGltZSkuc3RyZnRpbWUoJyVhLCAlZCAlYiAlWSAlSDol
TTolUycpLCBjb250ZW50X3R5cGUocGF0aCkpCisgICAgICAgICAgICApCisKKyAgICAgICAgICAg
IHdpdGggb3BlbihwYXRoLCAncmInKSBhcyBvcGVuX2ZpbGU6CisgICAgICAgICAgICAgICAgc3lz
LnN0ZG91dC5mbHVzaCgpCisgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUo
b3Blbl9maWxlLnJlYWQoKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQu
d3JpdGUoJ3N0YXR1czogNDA0XHJcblxyXG4nKQorCisKK2RlZiBoYW5kbGVfaW5jcmVhdGVfcmVz
b3VyY2VfY291bnRfY29tbWFuZChwYXRoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVt
cF9wYXRoX2Jhc2UoKSArICctY291bnQnCisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUo
cmVzb3VyY2VfY291bnRfZmlsZSkKKyAgICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgn
ICcpCisgICAgY291bnQgPSAwCisgICAgaWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBd
ID09IHBhdGg6CisgICAgICAgIGNvdW50ID0gMSArIGludChwaWVjZXNbMV0pCisgICAgZWxzZToK
KyAgICAgICAgY291bnQgPSAxCisKKyAgICBzZXRfc3RhdGUocmVzb3VyY2VfY291bnRfZmlsZSwg
J3t9IHt9Jy5mb3JtYXQocGF0aCwgY291bnQpKQorICAgIGdlbmVyYXRlX3Jlc3BvbnNlKHBhdGgp
CisKKworZGVmIGhhbmRsZV9yZXNldF9yZXNvdXJjZV9jb3VudF9jb21tYW5kKCk6CisgICAgcmVz
b3VyY2VfY291bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHNldF9z
dGF0ZShyZXNvdXJjZV9jb3VudF9maWxlLCAnMCcpCisgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0
cF9oZWFkZXIoKQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1czogMjAwXHJcblxyXG4nKQor
CisKK2RlZiBoYW5kbGVfZ2V0X3Jlc291cmNlX2NvdW50X2NvbW1hbmQocGF0aCk6CisgICAgcmVz
b3VyY2VfY291bnRfZmlsZSA9IHRlbXBfcGF0aF9iYXNlKCkgKyAnLWNvdW50JworICAgIHJlc291
cmNlX2NvdW50ID0gZ2V0X3N0YXRlKHJlc291cmNlX2NvdW50X2ZpbGUpCisgICAgcGllY2VzID0g
cmVzb3VyY2VfY291bnQuc3BsaXQoJyAnKQorICAgIGdlbmVyYXRlX25vX2NhY2hlX2h0dHBfaGVh
ZGVyKCkKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdzdGF0dXM6IDIwMFxyXG5cclxuJykKKworICAg
IGlmIGxlbihwaWVjZXMpID09IDIgYW5kIHBpZWNlc1swXSA9PSBwYXRoOgorICAgICAgICBzeXMu
c3Rkb3V0LndyaXRlKHN0cihwaWVjZXNbMV0pKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRv
dXQud3JpdGUoJzAnKQorCisKK2RlZiBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9n
KCk6CisgICAgcmVzb3VyY2VfbG9nX2ZpbGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1sb2cnCisg
ICAgc2V0X3N0YXRlKHJlc291cmNlX2xvZ19maWxlLCAnJykKKyAgICBzeXMuc3Rkb3V0LndyaXRl
KCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworCitkZWYgaGFuZGxlX2dldF9y
ZXNvdXJjZV9yZXF1ZXN0c19sb2coKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBfcGF0
aF9iYXNlKCkgKyAnLWxvZycKKyAgICBnZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisg
ICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisK
KyAgICB3aXRoIG9wZW4ocmVzb3VyY2VfbG9nX2ZpbGUsICdyJykgYXMgb3Blbl9maWxlOgorICAg
ICAgICBzeXMuc3Rkb3V0LndyaXRlKG9wZW5fZmlsZS5yZWFkKCkpCisKKworZGVmIGhhbmRsZV9s
b2dfcmVzb3VyY2VfcmVxdWVzdChwYXRoKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWxvZycKKyAgICBuZXdfZGF0YSA9ICdcbicgKyBwYXRoCisKKyAgICB3
aXRoIG9wZW4ocmVzb3VyY2VfbG9nX2ZpbGUsICdhJykgYXMgb3Blbl9maWxlOgorICAgICAgICBv
cGVuX2ZpbGUud3JpdGUobmV3X2RhdGEpCisKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKworCitpZiBjb21tYW5kIGlzIG5vdCBOb25lOgor
ICAgIGlmIGNvbW1hbmQgPT0gJ2Nvbm5lY3QnOgorICAgICAgICBzZXRfc3RhdGUoc3RhdGVfZmls
ZSwgJ09ubGluZScpCisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4
dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZGlzY29ubmVjdCc6CisgICAg
ICAgIHNldF9zdGF0ZShzdGF0ZV9maWxlLCAnT2ZmbGluZScpCisgICAgICAgIHN5cy5zdGRvdXQu
d3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgIGVsaWYgY29tbWFu
ZCA9PSAnaW5jcmVhc2UtcmVzb3VyY2UtY291bnQnOgorICAgICAgICBoYW5kbGVfaW5jcmVhdGVf
cmVzb3VyY2VfY291bnRfY29tbWFuZChxdWVyeS5nZXQoJ3BhdGgnLCBbJyddKVswXSkKKyAgICBl
bGlmIGNvbW1hbmQgPT0gJ3Jlc2V0LXJlc291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX3Jl
c2V0X3Jlc291cmNlX2NvdW50X2NvbW1hbmQoKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJl
c291cmNlLWNvdW50JzoKKyAgICAgICAgaGFuZGxlX2dldF9yZXNvdXJjZV9jb3VudF9jb21tYW5k
KHF1ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAnc3RhcnQt
cmVzb3VyY2UtcmVxdWVzdC1sb2cnOgorICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVx
dWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xlYXItcmVzb3VyY2UtcmVxdWVzdC1s
b2cnOgorICAgICAgICBoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBl
bGlmIGNvbW1hbmQgPT0gJ2dldC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRs
ZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKCkKKyAgICBlbGlmIGNvbW1hbmQgPT0gJ2xvZy1y
ZXNvdXJjZS1yZXF1ZXN0JzoKKyAgICAgICAgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHF1
ZXJ5LmdldCgncGF0aCcsIFsnJ10pWzBdKQorICAgIGVsc2U6CisgICAgICAgIHN5cy5zdGRvdXQu
d3JpdGUoCisgICAgICAgICAgICAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKKyAg
ICAgICAgICAgICdVbmtub3duIGNvbW1hbmQ6IHt9XG4nLmZvcm1hdChjb21tYW5kKQorICAgICAg
ICApCisgICAgICAgIHN5cy5leGl0KDApCitlbHNlOgorICAgIHJlcXVlc3RfcGF0aCA9IHF1ZXJ5
LmdldCgncGF0aCcsIFsnJ10pWzBdCisgICAgZ2VuZXJhdGVfcmVzcG9uc2UocmVxdWVzdF9wYXRo
KQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMg
LTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9wb3J0YWJpbGl0eUxheWVyLnB5Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRhYmlsaXR5TGF5ZXIu
cHkJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3BvcnRhYmlsaXR5TGF5ZXIucHkJKHdvcmtpbmcgY29weSkKQEAgLTc5LDcgKzc5LDcgQEAgZGVm
IGdldF9zdGF0ZShmaWxlLCBkZWZhdWx0PSdVbmluaXRpYWxpegogICAgICAgICByZXR1cm4gZmls
ZS5yZWFkKCkKIAogCi1kZWYgc2V0X3N0YXRlKHN0YXRlLCBmaWxlKToKK2RlZiBzZXRfc3RhdGUo
ZmlsZSwgc3RhdGUpOgogICAgIHdpdGggb3BlbihmaWxlLCAndycpIGFzIG9wZW5fZmlsZToKICAg
ICAgICAgb3Blbl9maWxlLndyaXRlKHN0YXRlKQogICAgIHJldHVybiBzdGF0ZQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0
ZWQucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jl
ZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnBocAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0
ZWQucGhwCShub25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotPD9waHAKLWlmIChzdHJwb3Mo
JF9TRVJWRVJbJ0hUVFBfQUNDRVBUJ10sICd2aWRlby8qJykgIT09IGZhbHNlKSB7Ci0gICAgaGVh
ZGVyKCdIVFRQLzEuMSAzMDEgTW92ZWQgUGVybWFuZW50bHknKTsKLSAgICBoZWFkZXIoJ0xvY2F0
aW9uOiAnIC4gJF9HRVRbJ3ZpZGVvJ10pOwotICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbm8t
Y2FjaGUsIG11c3QtcmV2YWxpZGF0ZScpOwotICAgIHJldHVybjsKLX0KLQotaGVhZGVyKCdIVFRQ
LzEuMSA0MDAgQmFkIFJlcXVlc3QnKTsKLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1h
Y2NlcHRlZC5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDE5IEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0
IHN5cworZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3FzCisKK3ZpZGVvID0gcGFyc2Vf
cXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9
VHJ1ZSkuZ2V0KCd2aWRlbycsIFsnJ10pWzBdCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQt
VHlwZTogdGV4dC9odG1sXHJcbicpCisKK2lmICd2aWRlby8qJyBpbiBvcy5lbnZpcm9uLmdldCgn
SFRUUF9BQ0NFUFQnLCAnJyk6CisgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgJ3N0YXR1
czogMzAxXHJcbicKKyAgICAgICAgJ0xvY2F0aW9uOiB7fVxyXG4nCisgICAgICAgICdDYWNoZS1D
b250cm9sOiBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlXHJcblxyXG4nLmZvcm1hdCh2aWRlbykK
KyAgICApCisgICAgc3lzLmV4aXQoMCkKKworc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDBc
clxuXHJcbicpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5weQpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVk
OiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
cHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRl
bXAtZmlsZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvcmVzZXQtdGVtcC1maWxlLnBocAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBA
IC0xLDE5ICswLDAgQEAKLTw/cGhwCi1yZXF1aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhw
JzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1w
IGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNf
Z2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmlsZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1
dF9jb250ZW50cygkdG1wRmlsZSwgInRlc3QiKSkgewotICAgIGVjaG8gIkZBSUw6IHVuYWJsZSB0
byB3cml0ZSB0byBmaWxlOiAiIC4gJHRtcEZpbGUgLiAiXG4iOwotICAgIGV4aXQoKTsKLX0KLWlm
ICghdW5saW5rKCR0bXBGaWxlKSkgewotICAgIGVjaG8gIkZBSUw6IFVuYWJsZSB0byBkZWxldGUg
ZmlsZTogIiAuICR0bXBGaWxlIC4gIlxuIjsKLSAgICBleGl0KCk7Ci19Ci0/PgoKUHJvcGVydHkg
Y2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1m
aWxlLnBocApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCkRlbGV0ZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0xICswLDAgIyMK
LSoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5weQkocmV2aXNpb24g
Mjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1m
aWxlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yLDE3ICsyLDEyIEBACiBpbXBvcnQgb3MKIGltcG9y
dCBzeXMKIGltcG9ydCB0ZW1wZmlsZQotCiBmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2Vf
cXMKIAotcXVlcnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycp
LCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKQotc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBm
aWxlLmdldHRlbXBkaXIoKSwgcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnc3RhdGUudHh0J10pWzBd
KQorZmlsZW5hbWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycp
LCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0ZS50eHQnXSlb
MF0KK3N0YXRlX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxl
bmFtZSkKIAotc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuJykK
LXN5cy5zdGRvdXQud3JpdGUoJ1xyXG4nKQorc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBl
OiB0ZXh0L2h0bWxcclxuXHJcbicpCiAKLXRyeToKLSAgICBpZiBvcy5wYXRoLmV4aXN0cyhzdGF0
ZUZpbGUpOgotICAgICAgICBvcy5yZW1vdmUoc3RhdGVGaWxlKQotZXhjZXB0IE9TRXJyb3I6Ci0g
ICAgcHJpbnQoJ0ZBSUw6IHVuYWJsZSB0byB3cml0ZSB0byBmaWxlOiB7fScuZm9ybWF0KHN0YXRl
RmlsZSkpCitpZiBvcy5wYXRoLmV4aXN0cyhzdGF0ZV9maWxlKToKKyAgICBvcy5yZW1vdmUoc3Rh
dGVfZmlsZSkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1h
Z2UucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Ns
b3ctaW1hZ2UucGhwCShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9zbG93LWltYWdlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDcgKzAsMCBAQAot
PD9waHAKLXVzbGVlcCg0MDAwMDApOwotaGVhZGVyKCJDb250ZW50LVR5cGU6IGltYWdlL3BuZyIp
OwotQHJlYWRmaWxlKCJzcXVhcmUxMDAucG5nIik7Ci0/PgotCi0KSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQkobm9uZXhpc3RlbnQpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWltYWdlLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0
IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorCit0aW1lLnNsZWVwKDAuNCkKKworc3lzLnN0
ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiBpbWFnZS9wbmdcclxuXHJcbicpCit3aXRoIG9wZW4o
J3NxdWFyZTEwMC5wbmcnLCAncmInKSBhcyBvcGVuX2ZpbGU6CisgICAgc3lzLnN0ZG91dC5mbHVz
aCgpCisgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUob3Blbl9maWxlLnJlYWQoKSkKClByb3Bl
cnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1h
Z2UucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnBocAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnBocAkocmV2aXNpb24g
Mjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnkt
ZG9uZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw4ICswLDAgQEAKLTw/cGhwCi11c2xlZXAoMTAw
MDAwKTsKLT8+Ci1ET05FIQotPHNjcmlwdD4KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLTwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5CShub25leGlz
dGVudCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRv
bmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMyBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0
aG9uMworCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorCit0aW1lLnNsZWVwKDAuMSkKKworc3lz
LnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCitwcmludCgn
JydET05FIQorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVy
Lm5vdGlmeURvbmUoKTsKKzwvc2NyaXB0PicnJykKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucHkKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90
b3VjaC10ZW1wLWZpbGUucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5waHAJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5waHAJKG5vbmV4aXN0
ZW50KQpAQCAtMSwyMiArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxh
eWVyLnBocCc7Ci0KLWlmICghc3lzX2dldF90ZW1wX2RpcigpKSB7Ci0gICAgZWNobyAiRkFJTDog
Tm8gdGVtcCBkaXIgd2FzIHJldHVybmVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSR0bXBGaWxl
ID0gc3lzX2dldF90ZW1wX2RpcigpIC4gIi8iIC4gJF9HRVRbJ2ZpbGVuYW1lJ107Ci0KLSRzdGF0
ID0gc3RhdCgkdG1wRmlsZSk7Ci1pZiAoISRzdGF0KSB7Ci0gICAgZWNobyAiRkFJTDogc3RhdCgp
IGNhbGwgZmFpbGVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSRtdGltZSA9ICRzdGF0WydtdGlt
ZSddICsgMTsKLQotaWYgKCF0b3VjaCgkdG1wRmlsZSwgJG10aW1lKSkgewotICAgIGVjaG8gIkZB
SUw6IHRvdWNoKCkgY2FsbCBmYWlsZWQuXG4iOwotfQotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy90b3VjaC10ZW1wLWZpbGUucHkJKHJldmlzaW9u
IDI3NjMwOCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAt
ZmlsZS5weQkod29ya2luZyBjb3B5KQpAQCAtNSw5ICs1LDYgQEAgaW1wb3J0IHN5cwogaW1wb3J0
IHRlbXBmaWxlCiBmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKIAotZmlsZSA9IF9f
ZmlsZV9fLnNwbGl0KCc6L2N5Z3dpbicpWy0xXQotaHR0cF9yb290ID0gb3MucGF0aC5kaXJuYW1l
KG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmFic3BhdGgob3MucGF0aC5kaXJuYW1lKGZpbGUpKSkp
Ci0KIGZpbGVuYW1lID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZX1NUUklORycsICcn
KSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdmaWxlbmFtZScsIFsnc3RhdGUudHh0J10p
WzBdCiB0bXBGaWxlUGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZmlsZS5nZXR0ZW1wZGlyKCksIGZp
bGVuYW1lKQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10
ZW1wLWZpbGUucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VzL3dyaXRlLXRlbXAtZmlsZS5waHAJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHAJKG5vbmV4aXN0ZW50KQpA
QCAtMSwxNyArMCwwIEBACi08P3BocAotcmVxdWlyZV9vbmNlICdwb3J0YWJpbGl0eUxheWVyLnBo
cCc7Ci0KLWlmICghc3lzX2dldF90ZW1wX2RpcigpKSB7Ci0gICAgZWNobyAiRkFJTDogTm8gdGVt
cCBkaXIgd2FzIHJldHVybmVkLlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLSR0bXBGaWxlID0gc3lz
X2dldF90ZW1wX2RpcigpIC4gIi8iIC4gJF9HRVRbJ2ZpbGVuYW1lJ107Ci0KLWlmICghZmlsZV9w
dXRfY29udGVudHMoJHRtcEZpbGUsICRfR0VUWydkYXRhJ10pKSB7Ci0gICAgZWNobyAiRkFJTDog
dW5hYmxlIHRvIHdyaXRlIHRvIGZpbGU6ICIgLiAkdG1wRmlsZSAuICJcbiI7Ci0gICAgZXhpdCgp
OwotfQotCi1lY2hvICR0bXBGaWxlOwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlcy93cml0ZS10ZW1wLWZpbGUucHkJKHJldmlzaW9uIDI3NjMwOCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weQko
d29ya2luZyBjb3B5KQpAQCAtNSwyMiArNSwxNCBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZp
bGUKIGZyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18u
c3BsaXQoJzovY3lnd2luJylbLTFdCi1odHRwX3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0
aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQogcXVl
cnkgPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2Js
YW5rX3ZhbHVlcz1UcnVlKQotZmlsZW5hbWUgPSBxdWVyeS5nZXQoJ2ZpbGVuYW1lJywgWydzdGF0
ZS50eHQnXSlbMF0KK2ZpbGVuYW1lID0gcXVlcnkuZ2V0KCdmaWxlbmFtZScsIFsnNDA0LnR4dCdd
KVswXQogZGF0YSA9IHF1ZXJ5LmdldCgnZGF0YScsIFsnJ10pWzBdCiAKLXRtcEZpbGUgPSBvcy5w
YXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBmaWxlbmFtZSkKK3RtcF9maWxlID0gb3Mu
cGF0aC5qb2luKHRlbXBmaWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiBzeXMuc3Rkb3V0Lndy
aXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIAotdHJ5OgotICAgIGZpbGUg
PSBvcGVuKHRtcEZpbGUsICd3JykKLSAgICBmaWxlLndyaXRlKGRhdGEpCi0gICAgZmlsZS5jbG9z
ZSgpCi1leGNlcHQ6Ci0gICAgc3lzLnN0ZG91dC53cml0ZShmJ0ZBSUw6IHVuYWJsZSB0byB3cml0
ZSB0byBmaWxlOiB7dG1wRmlsZX1cbicpCi0gICAgc3lzLmV4aXQoMCkKK3dpdGggb3Blbih0bXBf
ZmlsZSwgJ3cnKSBhcyBvcGVuX2ZpbGU6CisgICAgb3Blbl9maWxlLndyaXRlKGRhdGEpCiAKLXN5
cy5zdGRvdXQud3JpdGUoZid7dG1wRmlsZX1cbicpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQorc3lzLnN0ZG91dC53cml0ZSh0bXBfZmlsZSkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYW5jZXN0b3JzLXNhbWUt
b3JpZ2luLWFsbG93Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmln
aW4tYWxsb3cuaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1v
cmlnaW4tYWxsb3cuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTAsNiArMTAsNiBAQCBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKIDwvc2NyaXB0PgogPC9oZWFkPgogPGhlYWQ+Ci08aWZyYW1lIHNy
Yz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3Ny
Yz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3Vy
Y2VzL3gtZnJhbWUtb3B0aW9ucy1mcmFtZS1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dp
Ij48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2VjaG8taWZyYW1lLXNyYy5weT9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9zZWN1cml0
eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtZnJhbWUtYW5jZXN0b3Jz
LXNhbWUtb3JpZ2luLWFsbG93LmNnaSI+PC9pZnJhbWU+CiA8L2hlYWQ+CiA8L2h0bWw+CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmln
aW4ucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9yZXNv
dXJjZXMvYWxsb3ctaWYtb3JpZ2luLnB5CShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkJKHdvcmtp
bmcgY29weSkKQEAgLTMzLDcgKzMzLDEwIEBAIGlmIGFsbG93Q3JlZHM6CiBpZiBhbGxvd0NhY2hl
OgogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NhY2hlLUNvbnRyb2w6IG1heC1hZ2U9MTAwXHJcbicp
CiAKLXN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KGNv
bnRlbnRUeXBlKSkKK3N5cy5zdGRvdXQud3JpdGUoCisgICAgJ0NvbnRlbnQtTGVuZ3RoOiB7fVxy
XG4nCisgICAgJ0NvbnRlbnQtVHlwZToge31cclxuXHJcbicuZm9ybWF0KG9zLnBhdGguZ2V0c2l6
ZShvcy5wYXRoLmpvaW4oJy8nLmpvaW4oX19maWxlX18uc3BsaXQoJy8nKVswOi0xXSksIG5hbWUp
KSwgY29udGVudFR5cGUpCispCiBzeXMuc3Rkb3V0LmZsdXNoKCkKIHdpdGggb3Blbihvcy5wYXRo
LmpvaW4oJy8nLmpvaW4oX19maWxlX18uc3BsaXQoJy8nKVswOi0xXSksIG5hbWUpLCAncmInKSBh
cyBmaWxlOgogICAgIHN5cy5zdGRvdXQuYnVmZmVyLndyaXRlKGZpbGUucmVhZCgpKQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc3dpcGUv
c3dpcGUtYmFjay13aXRoLW91dHN0YW5kaW5nLWxvYWQtY2FuY2VsbGF0aW9uLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0
c3RhbmRpbmctbG9hZC1jYW5jZWxsYXRpb24uaHRtbAkocmV2aXNpb24gMjc2MzA4KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9h
ZC1jYW5jZWxsYXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsNyBAQCB3aW5k
b3cub25sb2FkID0gZnVuY3Rpb24gKCkgewogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
ZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSBpc0ZpcnN0UGFnZSgpID8gImZpcnN0IiA6ICI8aWZy
YW1lIHNyYz0nL3Jlc291cmNlcy9zbG93LWltYWdlLnBocCc+IjsKKyAgICBkb2N1bWVudC5ib2R5
LmlubmVySFRNTCA9IGlzRmlyc3RQYWdlKCkgPyAiZmlyc3QiIDogIjxpZnJhbWUgc3JjPScvcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucHknPiI7CiAKICAgICBpZiAoaXNGaXJzdFBhZ2UoKSkgewogICAg
ICAgICBpZiAoaGFzSW5pdGlhbGl6ZWRTd2lwZVRlc3QoKSkgewpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0
ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwJKHJldmlzaW9uIDI3NjMwOCkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qvc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvci5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIGxvZyhtZXNzYWdl
KQogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAgdmFyIHJlcSA9IG5l
dyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1l
cnJvciZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxz
ZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5
P3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJvciZjb21tYW5kPSIg
KyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNl
bmQoIiIpOwogfQogCkBAIC0zNCw3ICszNCw3IEBAIGZ1bmN0aW9uIG9uUmVhZHlTdGF0ZUNoYW5n
ZSgpCiBzZXROZXR3b3JrRW5hYmxlZChmYWxzZSk7CiB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1
ZXN0KCk7CiB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gb25SZWFkeVN0YXRlQ2hhbmdlOwoteGhy
Lm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PXhtbGh0
dHByZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3ImcGF0aD0vJywgdHJ1ZSk7Cit4aHIu
b3BlbignR0VUJywgJy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD14bWxodHRw
cmVxdWVzdC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yJnBhdGg9LycsIHRydWUpOwogeGhyLnNl
bmQobnVsbCk7CiAKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hl
LWludmFsaWRhdGlvbi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2Fj
aGUtaW52YWxpZGF0aW9uLnB5CShyZXZpc2lvbiAyNzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVm
bGlnaHQtY2FjaGUtaW52YWxpZGF0aW9uLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNiw3ICszNiw3
IEBAIGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29u
dHJvbC1NYXgtQWdlOiAxMFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAg
ICAgICBzZXRfc3RhdGUoJ09wdGlvbnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3Rh
dGUoc3RhdGVGaWxlLCAnT3B0aW9uc1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQog
CkBAIC00OCw3ICs0OCw3IEBAIGVsaWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAg
ICAgICdcclxuJwogICAgICAgICAgICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAg
ICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAg
ICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAg
ICAgZmFpbCgpCiAKQEAgLTYxLDcgKzYxLDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50
JzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzOiB4LXdlYmtpdC10
ZXN0XHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0
ZSgnU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0
ZUZpbGUsICdTZWNvbmRPUFRJT05TU2VudCcpCiAgICAgZWxpZiBvcy5lbnZpcm9uLmdldCgnUkVR
VUVTVF9NRVRIT0QnKSA9PSAnUFVUJzoKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAg
ICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW46IGh0dHA6Ly8xMjcuMC4wLjE6ODAw
MFxyXG4nCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291
cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNl
cy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtdGltZW91dC5weQkocmV2aXNp
b24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNv
dXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQucHkJKHdv
cmtpbmcgY29weSkKQEAgLTM3LDcgKzM3LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQn
OgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDFcclxuJwogICAgICAgICAg
ICAgJ1xyXG4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdPcHRpb25zU2VudCcsIHN0
YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ09wdGlvbnNTZW50JykKICAg
ICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNDksNyArNDksNyBAQCBlbGlmIHN0YXRlID09
ICdPcHRpb25zU2VudCc6CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdQQVNTOiBG
aXJzdCBQVVQgcmVxdWVzdC4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdGaXJzdFBV
VFNlbnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGaXJzdFBV
VFNlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC02Myw3ICs2Myw3IEBAIGVs
aWYgc3RhdGUgPT0gJ0ZpcnN0UFVUU2VudCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wt
TWF4LUFnZTogMVxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBz
ZXRfc3RhdGUoJ1NlY29uZE9QVElPTlNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3Rh
dGUoc3RhdGVGaWxlLCAnU2Vjb25kT1BUSU9OU1NlbnQnKQogICAgIGVsaWYgb3MuZW52aXJvbi5n
ZXQoJ1JFUVVFU1RfTUVUSE9EJykgPT0gJ1BVVCc6CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUo
CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiBodHRwOi8vMTI3LjAu
MC4xOjgwMDBcclxuJwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2Vz
L2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS5weQkocmV2aXNpb24gMjc2MzA4
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNj
ZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0z
Nyw3ICszNyw3IEBAIGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICAgICAgICAgICdB
Y2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAxMFxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAg
ICAgKQotICAgICAgICBzZXRfc3RhdGUoJ09wdGlvbnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAg
ICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnT3B0aW9uc1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAg
IGZhaWwoKQogCkBAIC00OSw3ICs0OSw3IEBAIGVsaWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoK
ICAgICAgICAgICAgICdcclxuJwogICAgICAgICAgICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0
LicKICAgICAgICAgKQotICAgICAgICBzZXRfc3RhdGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmls
ZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxz
ZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTY5LDcgKzY5LDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmly
c3RQVVRTZW50JzoKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzOiB4
LXdlYmtpdC10ZXN0XHJcbicKICAgICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAg
IHNldF9zdGF0ZSgnRkFJTFNlY29uZE9QVElPTlNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBz
ZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJTFNlY29uZE9QVElPTlNTZW50JykKICAgICBlbHNlOgog
ICAgICAgICBmYWlsKCkKIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVx
dWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQteHNyZi5weQkocmV2aXNpb24gMjc2
MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMv
YWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmllZC14c3JmLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC01Myw3ICs1Myw3IEBAIGVsaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgogICAgICAgICAg
ICAgJ1xyXG4nCiAgICAgICAgICAgICAnRkFJTDogVGhpcyByZXF1ZXN0IHNob3VsZCBub3QgYmUg
ZGlzcGxheWVkXG4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdEZW5pZWQnLCBzdGF0
ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdEZW5pZWQnKQogICAgIGVsc2U6
CiAgICAgICAgIGZhaWwoc3RhdGUpCiAKQEAgLTY3LDcgKzY3LDcgQEAgZWxpZiBzdGF0ZSA9PSAn
RGVuaWVkJzoKICAgICAgICAgICAgICdQQVNTOiBSZXF1ZXN0IHN1Y2Nlc3NmdWxseSBibG9ja2Vk
LlxuJwogICAgICAgICApCiAgICAgZWxzZToKLSAgICAgICAgc2V0X3N0YXRlKCdEZW55IElnbm9y
ZWQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdEZW55IElnbm9y
ZWQnKQogICAgICAgICBmYWlsKHN0YXRlKQogCiBlbGlmIHN0YXRlID09ICdEZW55IElnbm9yZWQn
OgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMv
bm8tY3VzdG9tLWhlYWRlci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5CShyZXZpc2lvbiAy
NzYzMDgpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNl
cy9uby1jdXN0b20taGVhZGVyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBAIHN0
YXRlRmlsZSA9IG9zLnBhdGguam9pbih0ZW1wZmlsZS5nZXR0ZW0KIAogaWYgb3MuZW52aXJvbi5n
ZXQoJ1JFUVVFU1RfTUVUSE9EJykgPT0gJ09QVElPTlMnOgogICAgIGlmIG9zLmVudmlyb24uZ2V0
KCdIVFRQX1hfQ1VTVE9NX0hFQURFUicpOgotICAgICAgICBzZXRfc3RhdGUoJ0ZBSUwnLCBzdGF0
ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMJykKICAgICBlbHNlOgot
ICAgICAgICBzZXRfc3RhdGUoJ1BBU1MnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShz
dGF0ZUZpbGUsICdQQVNTJykKIGVsc2U6CiAgICAgaWYgb3MuZW52aXJvbi5nZXQoJ0hUVFBfWF9D
VVNUT01fSEVBREVSJyk6CiAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoZ2V0X3N0YXRlKHN0YXRl
RmlsZSwgZGVmYXVsdD0nRkFJTCcpKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3Vy
Y2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weQkocmV2aXNpb24gMjc2MzA4KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJl
Y3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5lLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNywxMyArMzcs
MTMgQEAgaWYgbWV0aG9kID09ICdPUFRJT05TJzoKIAogIyBPbmx5IGFsbG93IHNpbXBsZSBjcm9z
cy1zaXRlIHJlcXVlc3RzIC0gc2luY2Ugd2UgZGlkIG5vdCBhbGxvdyBwcmVmbGlnaHQsIHRoaXMg
aXMgYWxsIHdlIHNob3VsZCBldmVyIGdldC4KIGlmIG1ldGhvZCBub3QgaW4gWydHRVQnLCAnSEVB
RCcsICdQT1NUJ106Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBOb24tc2ltcGxlIG1ldGhvZCB7fS4n
LmZvcm1hdChtZXRob2QpLCBzdGF0ZUZpbGUpCisgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZB
SUwuIE5vbi1zaW1wbGUgbWV0aG9kIHt9LicuZm9ybWF0KG1ldGhvZCkpCiAgICAgc3lzLmV4aXQo
MCkKIAogaWYgY29udGVudCBhbmQgbm90IHJlLm1hdGNoKHInXmFwcGxpY2F0aW9uXC94XC13d3dc
LWZvcm1cLXVybGVuY29kZWQoOy4rKT8kJywgY29udGVudFR5cGUpIFwKICAgICBhbmQgbm90IHJl
Lm1hdGNoKHInXm11bHRpcGFydFwvZm9ybVwtZGF0YSg7LispPyQnLCBjb250ZW50VHlwZSkgXAog
ICAgIGFuZCBub3QgcmUubWF0Y2gocidedGV4dFwvcGxhaW4oOy4rKT8kJywgY29udGVudFR5cGUp
OgotICAgIHNldF9zdGF0ZSgnRkFJTC4gTm9uLXNpbXBsZSBjb250ZW50IHR5cGU6IHt9LicuZm9y
bWF0KGNvbnRlbnRUeXBlKSwgc3RhdGVGaWxlKQorICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdG
QUlMLiBOb24tc2ltcGxlIGNvbnRlbnQgdHlwZToge30uJy5mb3JtYXQoY29udGVudFR5cGUpKQog
CiBpZiBvcy5lbnZpcm9uLmdldCgnSFRUUF9YX1dFQktJVF9URVNUJyk6Ci0gICAgc2V0X3N0YXRl
KCdGQUlMLiBDdXN0b20gaGVhZGVyIHNlbnQgd2l0aCBhIHNpbXBsZSByZXF1ZXN0LicsIHN0YXRl
RmlsZSkKKyAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJTC4gQ3VzdG9tIGhlYWRlciBzZW50
IHdpdGggYSBzaW1wbGUgcmVxdWVzdC4nKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1
cmVzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVl
c3QvcmVzb3VyY2VzL3JlbWVtYmVyLWJhZC1wYXNzd29yZC9jb3VudC1mYWlsdXJlcy5weQkocmV2
aXNpb24gMjc2MzA4KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9y
ZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3JkL2NvdW50LWZhaWx1cmVzLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC0zNiw3ICszNiw3IEBAIGlmIGNvbW1hbmQ6CiAgICAgaWYgY29tbWFuZCA9PSAn
c3RhdHVzJzoKICAgICAgICAgc3lzLnN0ZG91dC53cml0ZShnZXRfc3RhdGUoc3RhdGVGaWxlLCBk
ZWZhdWx0PScwJykpCiAgICAgZWxpZiBjb21tYW5kID09ICdyZXNldCc6Ci0gICAgICAgIHN5cy5z
dGRvdXQud3JpdGUoc2V0X3N0YXRlKCcwJywgc3RhdGVGaWxlKSkKKyAgICAgICAgc3lzLnN0ZG91
dC53cml0ZShzZXRfc3RhdGUoc3RhdGVGaWxlLCAnMCcpKQogICAgIHN5cy5leGl0KDApCiAKIGNy
ZWRlbnRpYWxzID0gYmFzZTY0LmI2NGRlY29kZShvcy5lbnZpcm9uLmdldCgnSFRUUF9BVVRIT1JJ
WkFUSU9OJywgJyBPZz09Jykuc3BsaXQoJyAnKVsxXSkuZGVjb2RlKCkuc3BsaXQoJzonKQpAQCAt
NTcsNCArNTcsNCBAQCBlbHNlOgogICAgICAgICAnQXV0aGVudGljYXRpb24gY2FuY2VsZWQnCiAg
ICAgKQogICAgIGlmIHVzZXJuYW1lOgotICAgICAgICBzZXRfc3RhdGUoc3RyKGludChnZXRfc3Rh
dGUoc3RhdGVGaWxlLCBkZWZhdWx0PScwJykpICsgMSksIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0
X3N0YXRlKHN0YXRlRmlsZSwgc3RyKGludChnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PScw
JykpICsgMSkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426813</attachid>
            <date>2021-04-22 08:30:18 -0700</date>
            <delta_ts>2021-04-26 10:45:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224622-20210422113016.patch</filename>
            <type>text/plain</type>
            <size>142761</size>
            <attacher name="Chris Gambrell">cgambrell</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDEzNSBAQAorMjAyMS0wNC0yMiAgQ2hyaXMgR2FtYnJlbGwg
IDxjZ2FtYnJlbGxAYXBwbGUuY29tPgorCisgICAgICAgIFtMYXlvdXRUZXN0c10gQ29udmVydCBo
dHRwL3Rlc3RzL3Jlc291cmNlcyBjb252ZXJ0IFBIUCB0byBQeXRob24KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDYyMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNzY3MjcwNTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhbGxiYWNrLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3Jr
LWVycm9yLWNyYXNoLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL21haW4tcmVz
b3VyY2UtcmVkaXJlY3QuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL211bHRp
LWZhbGxiYWNrLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24taHRtbC54
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWlsLW9uLXVwZGF0ZS0yLnB5Ogor
ICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLnB5
OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlm
ZXN0OgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL21haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QtZnJhbWUucHk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5tYW5pZmVzdDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNj
ZXNzLmpzOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3Q6CisgICAgICAgICogaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
Y2FjaGUvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2YWxpZGF0
aW9uLWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9zdWJyZXNvdXJjZS1m
cmFnbWVudC1pZGVudGlmaWVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1hZnRlci1uYXZpZ2F0aW5nLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFn
ZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0
ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9y
aWdpbi1wYWdlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9m
ZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9j
c3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL2Nzcy1pbWFn
ZS12YWx1ZWQtc2hhcGUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9mb250LWZhY2Ut
c3JjLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9tYXNrLWltYWdlLWxv
YWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1h
Z2UtbG9hZGluZy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3Jlc291cmNlcy9yZXF1
ZXN0LWxvZ2dpbmcuanM6CisgICAgICAgIChSZXNvdXJjZUxvZ2dpbmcuQ2FsbENvbW1hbmQpOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMi1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMi5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy1l
eHBlY3RlZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJh
c2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtMy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvY3Nz
L3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRtbDoK
KyAgICAgICAgKiBodHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9uZS1yZXNwb25z
ZS1ib2R5Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZl
dGNoaW5nLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgt
cmVmZXJyZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUt
cmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaGluZy1zYW1lLXJlc291cmNlLXdpdGgtZGlmZmVyZW50LW9w
dGlvbnMuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5
LXdoaWxlLWxvYWRpbmcuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdlcy9kZWNvZGUt
c2xvdy1sb2FkLXN0YXRpYy1pbWFnZS5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2Vz
L2RyYXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
aW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1h
Z2VzL3BuZy1wYXJ0aWFsLWxvYWQtbm8tYWxwaGEuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9pbWFn
ZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvaW1hZ2VzL3dl
YnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbG9hZGluZy9w
cmVsb2FkLWltZy10ZXN0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBp
L2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzOgor
ICAgICAgICAoY3JlYXRlVGVtcEZpbGUpOgorICAgICAgICAodG91Y2hUZW1wRmlsZSk6CisgICAg
ICAgIChyZW1vdmVUZW1wRmlsZSk6CisgICAgICAgICogaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9s
b2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGluZy0yLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3Nl
cnQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xp
bmtfcHJlbG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3ByZWxvYWQvZHluYW1pY19yZW1vdmVfcHJlbG9hZF9ocmVmLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9yZV9kaXNj
b3ZlcnkuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2aWN0aW5nX3By
ZWxvYWRfYXRfb25sb2FkLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFz
aWMtYXV0aC5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGln
ZXN0LWF1dGg6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk6IEFkZGVkLgorICAgICAgICAqIGh0
dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZyYW1lLXNyYy5waHA6IFJlbW92ZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwOiBSZW1vdmVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5weTog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhw
OiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA6IFJlbW92ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk6IEFkZGVkLgorICAgICAgICAodGVtcF9wYXRoX2Jhc2UpOgorICAgICAg
ICAoZ2VuZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIpOgorICAgICAgICAoY29udGVudF90eXBl
KToKKyAgICAgICAgKGdlbmVyYXRlX3Jlc3BvbnNlKToKKyAgICAgICAgKGhhbmRsZV9pbmNyZWF0
ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9yZXNldF9yZXNvdXJj
ZV9jb3VudF9jb21tYW5kKToKKyAgICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRfY29t
bWFuZCk6CisgICAgICAgIChoYW5kbGVfc3RhcnRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAg
ICAgICAgKGhhbmRsZV9nZXRfcmVzb3VyY2VfcmVxdWVzdHNfbG9nKToKKyAgICAgICAgKGhhbmRs
ZV9sb2dfcmVzb3VyY2VfcmVxdWVzdCk6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZXMv
cG9ydGFiaWxpdHlMYXllci5weToKKyAgICAgICAgKHNldF9zdGF0ZSk6CisgICAgICAgICogaHR0
cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlm
LWFjY2VwdGVkLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNl
dC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Jlc2V0LXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93
LWltYWdlLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93
LWltYWdlLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5v
dGlmeS1kb25lLnBocDogUmVtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlcy9z
bG93LW5vdGlmeS1kb25lLnB5OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
cy90b3VjaC10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVz
b3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
cy93cml0ZS10ZW1wLWZpbGUucGhwOiBSZW1vdmVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVz
b3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxv
dy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2FsbG93LWlm
LW9yaWdpbi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJhY2std2l0aC1v
dXRzdGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1j
YWNoZS1pbnZhbGlkYXRpb24ucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLXRpbWVvdXQu
cHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNz
LWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNhY2hlLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLXByZWZsaWdodC1kZW5pZWQt
eHNyZi5weToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9u
by1jdXN0b20taGVhZGVyLnB5OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
cmVzb3VyY2VzL3JlZGlyZWN0LWNyb3NzLW9yaWdpbi10cmlwbWluZS5weToKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQv
Y291bnQtZmFpbHVyZXMucHk6CisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9z
dGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWw6CisKIDIwMjEtMDQtMjIgIEltYW5vbCBGZXJu
YW5kZXogIDxpZmVybmFuZGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IFdlYlhS
IElucHV0IFNvdXJjZXMKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvZmFs
bGJhY2suaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L2ZhbGxiYWNrLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvYXBwY2FjaGUvZmFsbGJhY2suaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjEsNyArMjEsNyBA
QCBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICB0cnkgewogICAgICAg
ICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICByZXEub3BlbigiR0VUIiwg
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtZmFsbGJhY2sm
Y29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwor
ICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1hcHBjYWNoZS1mYWxsYmFjayZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKCIiKTsKICAgICB9IGNhdGNo
IChleCkgewogICAgICAgICBsb2coIkNhbm5vdCBhY2Nlc3MgbmV0d29yayBzaW11bGF0b3IgVVJM
Iik7CkBAIC00Myw3ICs0Myw3IEBAIGZ1bmN0aW9uIGxvYWQodXJsKQogICAgIH0KIH0KIAotdmFy
IHRlc3RVUkwgPSAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNo
ZS1mYWxsYmFjayZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm90LWluLWNhY2hlLnR4dCI7Cit2
YXIgdGVzdFVSTCA9ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2Fj
aGUtZmFsbGJhY2smcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vdC1pbi1jYWNoZS50eHQiOwog
dmFyIG5vbmV4aXN0ZW50VVJMID0gInJlc291cmNlcy9kb2VzLW5vdC1leGlzdCI7CiB2YXIgcmVk
aXJlY3RVUkwgPSAicmVzb3VyY2VzL2ZhbGxiYWNrLXJlZGlyZWN0LnB5IjsKIApJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1u
ZXR3b3JrLWVycm9yLWNyYXNoLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWZhbGxiYWNrLWZvci1uZXR3b3JrLWVycm9yLWNy
YXNoLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQAogPGRpdj4gICAgICAgIEJlZm9yZSB5b3Ug
Y2xpY2sgdGhlIGxpbmsgdGhhdCB0ZXN0cyB0aGUgYXBwY2FjaGUgZmFsbGJhY2ssIHBsZWFzZSBt
YWtlIHN1cmUgdGhlIHNlcnZlciBpcyBkb3duIG9yIGRpc2Nvbm5lY3QgeW91ciBkZXZpY2UgZnJv
bSBhbnkgZGF0YSBjb25uZWN0aW9uIHNvIHRoZSBjb25uZWN0aW9uIHJlcXVlc3QgdG8gdGhlIHNl
cnZlciB3aWxsIGZhaWwuCiA8L2Rpdj4KIAotPGEgaWQ9ICJMaW5rIiBocmVmPSIvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFsbGJh
Y2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmcGF0aD1kb2VzLW5vdC1leGlzdCIgPiBjbGljayB0
aGlzIGxpbmsgd2hlbiB0aGUgc2VydmVyIGlzIGRvd24gb3IgdGhlIGNsaWVudCBkZXZpY2UgZG9l
c24ndCBoYXZlIGEgZGF0YSBjb25uZWN0aW9uLCB0aGlzIHdpbGwgdmVyaWZ5IGlmIHRoZSBmYWxs
YmFjayB3aWxsIGNhdXNlIHRoZSBjcmFzaC4gPC9hPgorPGEgaWQ9ICJMaW5rIiBocmVmPSIvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1m
YWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRvZXMtbm90LWV4aXN0IiA+IGNs
aWNrIHRoaXMgbGluayB3aGVuIHRoZSBzZXJ2ZXIgaXMgZG93biBvciB0aGUgY2xpZW50IGRldmlj
ZSBkb2Vzbid0IGhhdmUgYSBkYXRhIGNvbm5lY3Rpb24sIHRoaXMgd2lsbCB2ZXJpZnkgaWYgdGhl
IGZhbGxiYWNrIHdpbGwgY2F1c2UgdGhlIGNyYXNoLiA8L2E+CiAKIAogPHNjcmlwdD4KQEAgLTEz
LDcgKzEzLDcgQEAKIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHZh
ciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3Vy
Y2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFs
bGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5l
Y3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW1haW4tcmVzb3VyY2UtZmFs
bGJhY2stZm9yLW5ldHdvcmstZXJyb3ItY3Jhc2gmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5l
Y3QiIDogImRpc2Nvbm5lY3QiKSwgZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApAQCAt
MjYsNyArMjYsNyBAQCBmdW5jdGlvbiBydW5UZXN0KCkKIHsKICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKICAgICAgICAgc2V0TmV0d29ya0VuYWJsZWQoZmFsc2UpOwotICAgICAgICB3aW5k
b3cubG9jYXRpb249Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2Fj
aGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3ItbmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRv
ZXMtbm90LWV4aXN0IjsKKyAgICAgICAgd2luZG93LmxvY2F0aW9uPSIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1mYWxsYmFjay1mb3It
bmV0d29yay1lcnJvci1jcmFzaCZwYXRoPWRvZXMtbm90LWV4aXN0IjsKICAgICB9CiB9CiAKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1oYXNoLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJl
c291cmNlLWhhc2guaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLWhhc2guaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MTgsNyArMTgsNyBAQCBmdW5jdGlvbiBsb2cobWVzc2FnZSkKIGZ1bmN0aW9uIHNldE5ldHdvcmtF
bmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAg
cmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFw
cGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJmNvbW1hbmQ9IiArIChzdGF0
ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VU
IiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJl
c291cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIg
OiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCkBAIC0yOCw3
ICsyOCw3IEBAIGZ1bmN0aW9uIGZyYW1lQ3JlYXRlZCgpCiAgICAgICAgIHN0YWdlID0gMTsKICAg
ICAgICAgc2V0TmV0d29ya0VuYWJsZWQoZmFsc2UpOwogICAgICAgICB2YXIgaWZyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Ci0gICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoInNy
YyIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW1haW4t
cmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1oYXNoJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWlu
LXJlc291cmNlLWhhc2gtZnJhbWUuaHRtbCNiYXIiKTsKKyAgICAgICAgaWZyLnNldEF0dHJpYnV0
ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1t
YWluLXJlc291cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMv
bWFpbi1yZXNvdXJjZS1oYXNoLWZyYW1lLmh0bWwjYmFyIik7CiAgICAgICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQoaWZyKTsKICAgICB9IGVsc2UgewogICAgICAgICBsb2coIlNVQ0NFU1Mi
KTsKQEAgLTQzLDcgKzQzLDcgQEAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCBm
cmFtZQogdmFyIHN0YWdlID0gMDsKIHNldE5ldHdvcmtFbmFibGVkKHRydWUpOwogdmFyIGlmciA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwotaWZyLnNldEF0dHJpYnV0ZSgic3Jj
IiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1y
ZXNvdXJjZS1tYWluLXJlc291cmNlLWhhc2gmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL21haW4t
cmVzb3VyY2UtaGFzaC1mcmFtZS5odG1sI2ZvbyIpOworaWZyLnNldEF0dHJpYnV0ZSgic3JjIiwg
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291
cmNlLW1haW4tcmVzb3VyY2UtaGFzaCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNv
dXJjZS1oYXNoLWZyYW1lLmh0bWwjZm9vIik7CiBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlm
cik7CiAKIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9t
YWluLXJlc291cmNlLXJlZGlyZWN0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9tYWluLXJlc291cmNlLXJlZGlyZWN0Lmh0bWwJKHJldmlzaW9uIDI3
NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbWFpbi1yZXNvdXJjZS1y
ZWRpcmVjdC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewogZnVuY3Rpb24gc2V0TmV0d29ya0VuYWJsZWQoc3RhdGUpCiB7CiAgICAg
dmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICByZXEub3BlbigiR0VUIiwgIi9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1t
YWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJk
aXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1tYWluLXJlc291cmNlLW1haW4tcmVzb3Vy
Y2UtcmVkaXJlY3QmY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5lY3Qi
KSwgZmFsc2UpOwogICAgIHJlcS5zZW5kKCIiKTsKIH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9tdWx0aS1mYWxsYmFjay5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbXVsdGktZmFsbGJhY2suaHRtbAkocmV2aXNpb24g
Mjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9tdWx0aS1mYWxsYmFj
ay5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBAIGZ1bmN0aW9uIHNldE5ldHdv
cmtFbmFibGVkKHN0YXRlKQogewogICAgIHRyeSB7CiAgICAgICAgIHZhciByZXEgPSBuZXcgWE1M
SHR0cFJlcXVlc3Q7Ci0gICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1tdWx0aS1mYWxsYmFjayZjb21tYW5kPSIgKyAo
c3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgICAgIHJlcS5v
cGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW11bHRpLWZhbGxiYWNrJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25u
ZWN0IiksIGZhbHNlKTsKICAgICAgICAgcmVxLnNlbmQoIiIpOwogICAgIH0gY2F0Y2ggKGV4KSB7
CiAgICAgICAgIGxvZygiQ2Fubm90IGFjY2VzcyBuZXR3b3JrIHNpbXVsYXRvciBVUkwsIGV4ID0g
IiArIGV4KTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvbm9uLWh0bWwu
eGh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9ub24t
aHRtbC54aHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9ub24taHRtbC54aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIDxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIgotICAgICAgbWFuaWZlc3Q9
Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwm
YW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdCI+CisgICAgICBt
YW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5v
bi1odG1sJmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvbm9uLWh0bWwubWFuaWZlc3QiPgog
PGhlYWQ+PHRpdGxlLz48L2hlYWQ+CiA8Ym9keT4KIDxwPlRlc3QgdGhhdCBub24tSFRNTCBtYWlu
IHJlc291cmNlcyB3b3JrIHdpdGggYXBwbGljYXRpb24gY2FjaGUgY29ycmVjdGx5LjwvcD4KQEAg
LTE5LDE0ICsxOSwxNCBAQCBmdW5jdGlvbiBsb2cobWVzc2FnZSkKIGZ1bmN0aW9uIHNldE5ldHdv
cmtFbmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0g
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWFwcGNhY2hlLW5vbi1odG1sJmFtcDtjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAi
ZGlzY29ubmVjdCIpLCBmYWxzZSk7CisgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmYW1wO2NvbW1hbmQ9IiAr
IChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKICAgICByZXEuc2Vu
ZCgiIik7CiB9CiAKIGZ1bmN0aW9uIGNyZWF0ZUZyYW1lKCkKIHsKICAgICB2YXIgaWZyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Ci0gICAgaWZyLnNldEF0dHJpYnV0ZSgic3Jj
IiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0
bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9hYmUucG5nIik7CisgICAgaWZyLnNldEF0
dHJpYnV0ZSgic3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBj
YWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5wbmciKTsKICAg
ICBpZnIub25sb2FkID0gZnJhbWVDcmVhdGVkOwogICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQoaWZyKTsKIH0KQEAgLTQzLDcgKzQzLDcgQEAgZnVuY3Rpb24gY2FjaGVkKCkKICAgICAvLyBM
b2FkIGEgcmVzb3VyY2UgdGhhdCBkb2VzIG5vdCBleGlzdCBpbiB0aGUgY2FjaGUuCiAgICAgdHJ5
IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgICAgICByZXEu
b3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2Fj
aGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9ub3QtaW4tY2FjaGUudHh0
IiwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1ub24taHRtbCZhbXA7cGF0aD0vYXBwY2FjaGUvcmVz
b3VyY2VzL25vdC1pbi1jYWNoZS50eHQiLCBmYWxzZSk7CiAgICAgICAgIHJlcS5zZW5kKCk7CiAg
ICAgfSBjYXRjaCAoZSkgewogICAgICAgICBpZiAoZS5jb2RlID09IERPTUV4Y2VwdGlvbi5ORVRX
T1JLX0VSUikKQEAgLTU4LDcgKzU4LDcgQEAgZnVuY3Rpb24gY2FjaGVkKCkKICAgICAvLyBMb2Fk
IGEgcmVzb3VyY2UgdGhhdCBleGlzdHMgaW4gdGhlIGNhY2hlLgogICAgIHRyeSB7CiAgICAgICAg
IHZhciByZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICAgICAgcmVxLm9wZW4oIkdFVCIs
ICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW5vbi1odG1s
JmFtcDtwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKKyAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtbm9uLWh0bWwmYW1wO3BhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUudHh0
IiwgZmFsc2UpOwogICAgICAgICByZXEuc2VuZCgpOwogICAgIH0gY2F0Y2ggKGUpIHsKICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdCcpLmlubmVySFRNTCA9ICJGQUlMVVJF
OiBDb3VsZCBub3QgbG9hZCBkYXRhIGZyb20gY2FjaGUiCkluZGV4OiBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9vZmZsaW5lLWFjY2Vzcy5odG1sCShyZXZpc2lvbiAy
NzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL29mZmxpbmUtYWNjZXNz
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE4LDE0ICsxOCwxNCBAQCBmdW5jdGlvbiBsb2cobWVz
c2FnZSkKIGZ1bmN0aW9uIHNldE5ldHdvcmtFbmFibGVkKHN0YXRlKQogewogICAgIHZhciByZXEg
PSBuZXcgWE1MSHR0cFJlcXVlc3Q7Ci0gICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJmNvbW1hbmQ9
IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEu
b3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNo
ZS1vZmZsaW5lLWFjY2VzcyZjb21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29u
bmVjdCIpLCBmYWxzZSk7CiAgICAgcmVxLnNlbmQoIiIpOwogfQogCiBmdW5jdGlvbiBjcmVhdGVG
cmFtZSgpCiB7CiAgICAgdmFyIGlmciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIp
OwotICAgIGlmci5zZXRBdHRyaWJ1dGUoInNyYyIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291
cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sIik7CisgICAgaWZyLnNldEF0dHJpYnV0ZSgi
c3JjIiwgIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZs
aW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUu
aHRtbCIpOwogICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaWZyKTsKIH0KIApJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZW1vdmUtY2FjaGUuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3JlbW92ZS1jYWNoZS5odG1s
CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jl
bW92ZS1jYWNoZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05MSw3ICs5MSw3IEBAIGZ1bmN0aW9u
IHRlc3Q1KCkKIGZ1bmN0aW9uIHJlc2V0TWFuaWZlc3QoKQogewogICAgIGlmIChhcHBsaWNhdGlv
bkNhY2hlLnN0YXR1cyAhPSBhcHBsaWNhdGlvbkNhY2hlLlVOQ0FDSEVEICYmIGFwcGxpY2F0aW9u
Q2FjaGUuc3RhdHVzICE9IGFwcGxpY2F0aW9uQ2FjaGUuT0JTT0xFVEUpIHsKLSAgICAgICAgdGlt
ZW91dElkID0gc2V0VGltZW91dChyZXNldE1hbmlmZXN0LCAxMDApOworICAgICAgICB0aW1lb3V0
SWQgPSBzZXRUaW1lb3V0KHJlc2V0TWFuaWZlc3QsIDQwMCk7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKQEAgLTEwNCw3ICsxMDQsNyBAQCBhcHBsaWNhdGlvbkNhY2hlLm9ubm91cGRhdGUgPSB0
ZXN0OwogYXBwbGljYXRpb25DYWNoZS5vbmNhY2hlZCA9IHRlc3Q7CiAKIC8vIElmIHRoZSBtYW5p
ZmVzdCBzY3JpcHQgaGFwcGVuZWQgdG8gYmUgaW4gYSB3cm9uZyBzdGF0ZSwgcmVzZXQgaXQuCi12
YXIgdGltZW91dElkID0gc2V0VGltZW91dChyZXNldE1hbmlmZXN0LCAxMDApOwordmFyIHRpbWVv
dXRJZCA9IHNldFRpbWVvdXQocmVzZXRNYW5pZmVzdCwgNDAwKTsKIAogPC9zY3JpcHQ+CiA8L2Jv
ZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9mYWls
LW9uLXVwZGF0ZS0yLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRlLTIucHkJKHJldmlzaW9uIDI3NjQzNikKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwtb24tdXBkYXRl
LTIucHkJKHdvcmtpbmcgY29weSkKQEAgLTI2LDcgKzI2LDcgQEAgaWYgY29tbWFuZCA9PSAncmVz
ZXQnOgogICAgICAgICBvcy5yZW1vdmUodG1wX2ZpbGUpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgn
Q29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIGNvbW1hbmQgPT0gJ2RlbGV0
ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxldGVkJywgdG1wX2ZpbGUpCisgICAgc2V0X3N0YXRlKHRt
cF9maWxlLCAnRGVsZXRlZCcpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0
ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlmIHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICBz
eXMuc3Rkb3V0LndyaXRlKApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9y
ZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvZmFpbC1vbi11cGRhdGUucHkJKHJldmlzaW9uIDI3
NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhaWwt
b24tdXBkYXRlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yOCw3ICsyOCw3IEBAIGlmIGNvbW1hbmQg
PT0gJ3Jlc2V0JzoKICAgICAgICAgb3MucmVtb3ZlKHRtcF9maWxlKQogICAgIHN5cy5zdGRvdXQu
d3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBjb21tYW5kID09
ICdkZWxldGUnOgotICAgIHNldF9zdGF0ZSgnRGVsZXRlZCcsIHRtcF9maWxlKQorICAgIHNldF9z
dGF0ZSh0bXBfZmlsZSwgJ0RlbGV0ZWQnKQogICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQt
VHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQogZWxpZiBzdGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6
CiAgICAgc3lzLnN0ZG91dC53cml0ZSgKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL2ZhbGxiYWNrLm1hbmlmZXN0CShyZXZp
c2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNl
cy9mYWxsYmFjay5tYW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIENBQ0hF
IE1BTklGRVNUCiBGQUxMQkFDSzoKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwPyBz
aW1wbGUudHh0CisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5PyBzaW1wbGUudHh0CiBm
YWxsYmFjay1yZWRpcmVjdCBzaW1wbGUudHh0CiBkb2VzLW5vdC1leGlzdCBzaW1wbGUudHh0Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9h
cHBjYWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS5weQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJl
c291cmNlLXJlZGlyZWN0LWZyYW1lLnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZy
YW1lLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00LDYgKzQsNiBAQCBpbXBvcnQgc3lzCiAKIHN5cy5z
dGRvdXQud3JpdGUoCiAgICAgJ3N0YXR1czogMzAyXHJcbicKLSAgICAnTG9jYXRpb246IGh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBw
Y2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIuaHRtbFxyXG4nCisgICAg
J0xvY2F0aW9uOiBodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0
JnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIu
aHRtbFxyXG4nCiAgICAgJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nCiApClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBj
YWNoZS9yZXNvdXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC5tYW5pZmVzdAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291
cmNlLXJlZGlyZWN0Lm1hbmlmZXN0CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0Lm1hbmlm
ZXN0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAogQ0FDSEUgTUFOSUZFU1QKLWh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBw
Y2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JnBhdGg9L2FwcGNhY2hl
L3Jlc291cmNlcy9tYWluLXJlc291cmNlLXJlZGlyZWN0LWZyYW1lLTIuaHRtbAoraHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hl
LW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZwYXRoPS9hcHBjYWNoZS9yZXNv
dXJjZXMvbWFpbi1yZXNvdXJjZS1yZWRpcmVjdC1mcmFtZS0yLmh0bWwKIE5FVFdPUks6Ci1odHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWFw
cGNhY2hlLW1haW4tcmVzb3VyY2UtbWFpbi1yZXNvdXJjZS1yZWRpcmVjdCZjb21tYW5kCitodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBw
Y2FjaGUtbWFpbi1yZXNvdXJjZS1tYWluLXJlc291cmNlLXJlZGlyZWN0JmNvbW1hbmQKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL211bHRpLWZhbGxiYWNr
Lm1hbmlmZXN0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUv
cmVzb3VyY2VzL211bHRpLWZhbGxiYWNrLm1hbmlmZXN0CShyZXZpc2lvbiAyNzY0MzYpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9tdWx0aS1mYWxsYmFjay5t
YW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIENBQ0hFIE1BTklGRVNUCiBG
QUxMQkFDSzoKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwPyBzaW1wbGUudHh0Cisv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5PyBzaW1wbGUudHh0CiBkb2VzLW5vdCBlbXB0
eS50eHQKIGRvZXMtbm90LWV4aXN0IHNpbXBsZS50eHQKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlm
ZXN0CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hl
L3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdAkod29ya2luZyBjb3B5KQpAQCAtMSw4ICsxLDgg
QEAKIENBQ0hFIE1BTklGRVNUCiAvYXBwY2FjaGUvbm9uLWh0bWwueGh0bWwKLS9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2Fj
aGUvcmVzb3VyY2VzL3NpbXBsZS50eHQKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL2FiZS5wbmcK
LS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwm
cGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL25vbi1odG1sLm1hbmlmZXN0CisvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9YXBwY2FjaGUtbm9uLWh0bWwmcGF0aD0vYXBwY2FjaGUv
cmVzb3VyY2VzL3NpbXBsZS50eHQKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVz
dD1hcHBjYWNoZS1ub24taHRtbCZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvYWJlLnBuZworL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW5vbi1odG1sJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9ub24taHRtbC5tYW5pZmVzdAogTkVUV09SSzoKIC9mYXZpY29u
LmljbwotL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1ub24t
aHRtbCZjb21tYW5kPQorL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNh
Y2hlLW5vbi1odG1sJmNvbW1hbmQ9CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNh
Y2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy1mcmFtZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZy
YW1lLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBw
Y2FjaGUvcmVzb3VyY2VzL29mZmxpbmUtYWNjZXNzLWZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEsNCArMSw0IEBACi08aHRtbCBtYW5pZmVzdD0iL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVs
YXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNv
dXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QiPgorPGh0bWwgbWFuaWZlc3Q9Ii9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRo
PS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QiPgogPGRpdiBpZD1y
ZXN1bHQ+PC9kaXY+CiA8c2NyaXB0PgogZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCkBAIC0xMSw3ICsx
MSw3IEBAIGFwcGxpY2F0aW9uQ2FjaGUub25wcm9ncmVzcyA9IGZ1bmN0aW9uKCkKIGFwcGxpY2F0
aW9uQ2FjaGUub251cGRhdGVyZWFkeSA9IGZ1bmN0aW9uKCkgeyBsb2coInVwZGF0ZXJlYWR5Iikg
fQogYXBwbGljYXRpb25DYWNoZS5vbm9ic29sZXRlID0gZnVuY3Rpb24oKSB7IGxvZygib2Jzb2xl
dGUiKSB9CiA8L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291
cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9
L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
PgogCiBhcHBsaWNhdGlvbkNhY2hlLm9uY2FjaGVkID0gZnVuY3Rpb24oKSB7IGxvZygiY2FjaGVk
Iik7IHRlc3QoKSB9CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291
cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwkocmV2aXNpb24gMjc2NDM2
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1h
Y2Nlc3MuanMJKHdvcmtpbmcgY29weSkKQEAgLTYsNyArNiw3IEBAIGZ1bmN0aW9uIHRlc3QoKQog
CiAgICAgdHJ5IHsKICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAg
ICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0
PWFwcGNhY2hlLW9mZmxpbmUtYWNjZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9zaW1wbGUu
dHh0IiwgZmFsc2UpOworICAgICAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNo
ZS9yZXNvdXJjZXMvc2ltcGxlLnR4dCIsIGZhbHNlKTsKICAgICAgICAgcmVxLnNlbmQobnVsbCk7
CiAgICAgICAgIGlmIChyZXEucmVzcG9uc2VUZXh0ID09ICJIZWxsbywgV29ybGQhIikKICAgICAg
ICAgICAgIHBhcmVudC5wb3N0TWVzc2FnZSgiZG9uZSIsICIqIik7CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2FwcGNhY2hlL3Jlc291cmNlcy9v
ZmZsaW5lLWFjY2Vzcy5tYW5pZmVzdAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QJKHdv
cmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiBDQUNIRSBNQU5JRkVTVAotL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9h
cHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MtZnJhbWUuaHRtbAotL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1hcHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9h
cHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1hY2Nlc3MubWFuaWZlc3QKLS9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBw
Y2FjaGUvcmVzb3VyY2VzL3NpbXBsZS50eHQKLS9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2Vz
L29mZmxpbmUtYWNjZXNzLmpzCisvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
YXBwY2FjaGUtb2ZmbGluZS1hY2Nlc3MmcGF0aD0vYXBwY2FjaGUvcmVzb3VyY2VzL29mZmxpbmUt
YWNjZXNzLWZyYW1lLmh0bWwKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1h
cHBjYWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvb2ZmbGluZS1h
Y2Nlc3MubWFuaWZlc3QKKy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1hcHBj
YWNoZS1vZmZsaW5lLWFjY2VzcyZwYXRoPS9hcHBjYWNoZS9yZXNvdXJjZXMvc2ltcGxlLnR4dAor
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWFwcGNhY2hlLW9mZmxpbmUtYWNj
ZXNzJnBhdGg9L2FwcGNhY2hlL3Jlc291cmNlcy9vZmZsaW5lLWFjY2Vzcy5qcwpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9hcHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvYXBwY2FjaGUvcmVzb3VyY2VzL3Jl
bW92ZS1jYWNoZS5weQkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9hcHBjYWNoZS9yZXNvdXJjZXMvcmVtb3ZlLWNhY2hlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0y
OCwxNCArMjgsMTQgQEAgaWYgY29tbWFuZCA9PSAncmVzZXQnOgogICAgICAgICBvcy5yZW1vdmUo
dG1wX2ZpbGUpCiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxc
clxuXHJcbicpCiBlbGlmIGNvbW1hbmQgPT0gJ2RlbGV0ZSc6Ci0gICAgc2V0X3N0YXRlKCdEZWxl
dGVkJywgdG1wX2ZpbGUpCisgICAgc2V0X3N0YXRlKHRtcF9maWxlLCAnRGVsZXRlZCcpCiAgICAg
c3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCiBlbGlm
IHN0YXRlID09ICdVbmluaXRpYWxpemVkJzoKICAgICBzeXMuc3Rkb3V0LndyaXRlKAogICAgICAg
ICAnQ29udGVudC1UeXBlOiB0ZXh0L2NhY2hlLW1hbmlmZXN0XHJcblxyXG4nCiAgICAgICAgICdD
QUNIRSBNQU5JRkVTVFxuJwogICAgICAgICAnTkVUV09SSzpcbicKLSAgICAgICAgJ3JlbW92ZS1j
YWNoZS5weT9jb21tYW5kPVxuIicKKyAgICAgICAgJ3JlbW92ZS1jYWNoZS5weT9jb21tYW5kPVxu
JwogICAgICkKIGVsaWYgc3RhdGUgPT0gJ0RlbGV0ZWQnOgogICAgIHN5cy5zdGRvdXQud3JpdGUo
CkBAIC00Myw0ICs0Myw0IEBAIGVsaWYgc3RhdGUgPT0gJ0RlbGV0ZWQnOgogICAgICAgICAnQ29u
dGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicKICAgICApCiBlbHNlOgotICAgIHN5cy5zdG9k
dXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKKyAgICBzeXMuc3RvZHV0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvbmV0d29y
ay1lcnJvci1kdXJpbmctcmV2YWxpZGF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9jYWNoZS9uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRt
bAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9uZXR3
b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTYs
NyArMTYsNyBAQCBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0ZSkKIHsKICAgICBsb2co
c3RhdGUgPyAiRW5hYmxpbmcgbmV0d29yayIgOiAiRGlzYWJsaW5nIG5ldHdvcmsiKTsKICAgICB2
YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jYWNoZS1uZXR3b3JrLWVycm9yLWR1cmlu
Zy1yZXZhbGlkYXRpb24mY29tbWFuZD0iICsgKHN0YXRlID8gImNvbm5lY3QiIDogImRpc2Nvbm5l
Y3QiKSwgZmFsc2UpOworICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWNhY2hlLW5ldHdvcmstZXJyb3ItZHVyaW5nLXJldmFsaWRhdGlvbiZj
b21tYW5kPSIgKyAoc3RhdGUgPyAiY29ubmVjdCIgOiAiZGlzY29ubmVjdCIpLCBmYWxzZSk7CiAg
ICAgcmVxLnNlbmQoIiIpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hl
L3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3N1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIu
aHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9z
dWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEx
LDcgKzExLDcgQEAKICAgICAgICAgewogICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAg
ICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgICAgICAgIHJlcS5vcGVu
KCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9
IiArIGNtZCwgZmFsc2UpOworICAgICAgICAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hl
LXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD0iICsgY21kLCBmYWxzZSk7
CiAgICAgICAgICAgICAgICAgcmVxLnNlbmQobnVsbCk7CiAgICAgICAgICAgICAgICAgcmV0dXJu
IHJlcS5yZXNwb25zZVRleHQ7CiAgICAgICAgICAgICB9IGNhdGNoIChleCkgewpAQCAtNDEsMTgg
KzQxLDE4IEBACiAgIAogICAgIDxzdHlsZT4KICAgICAgICAgZGl2IHsKLSAgICAgICAgICAgIGJh
Y2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlm
aWVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNkaXYn
KTsKKyAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNl
LWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJn
X3BhdHRlcm4uanBnI2RpdicpOwogICAgICAgICB9CiAgICAgICAgIHAgewotICAgICAgICAgICAg
YmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50
aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI3An
KTsKKyAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNhY2hlLXN1YnJlc291cmNl
LWZyYWdtZW50LWlkZW50aWZpZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJn
X3BhdHRlcm4uanBnI3AnKTsKICAgICAgICAgfQogICAgIDwvc3R5bGU+CiAKIDwvaGVhZD4KIDxi
b2R5PgogICAgIDxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsiPjwvZGl2
PgotICAgIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmst
c2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXIm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzEiPgot
ICAgIDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWNhY2hlLXN1YnJlc291cmNlLWZyYWdtZW50LWlkZW50aWZpZXImY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWJnX3BhdHRlcm4uanBnI2ltZzIiPgorICAg
IDxpbWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9Y2FjaGUtc3VicmVzb3VyY2UtZnJhZ21lbnQtaWRlbnRpZmllciZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmdfcGF0dGVybi5qcGcjaW1nMSI+CisgICAgPGlt
ZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1jYWNoZS1zdWJyZXNvdXJjZS1mcmFnbWVudC1pZGVudGlmaWVyJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1iZ19wYXR0ZXJuLmpwZyNpbWcyIj4KICAgICAKICAgVGVz
dCB0aGF0IHJlc291cmNlcyB3aXRoIGZyYWdtZW50IGlkZW50aWZpZXJzIGFyZSBsb2FkZWQgb25s
eSBvbmNlLgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9u
ZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9uZXR3b3JrLWVycm9yLWR1
cmluZy1yZXZhbGlkYXRpb24tZnJhbWUuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvbmV0d29yay1lcnJvci1kdXJpbmctcmV2
YWxpZGF0aW9uLWZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEgKzEgQEAKLTxpbWcgc3Jj
PSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNhY2hlLW5ldHdvcmstZXJy
b3ItZHVyaW5nLXJldmFsaWRhdGlvbiZwYXRoPS9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyZh
bGxvdy1jYWNoaW5nPTEiPgorPGltZyBzcmM9Ii9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1jYWNoZS1uZXR3b3JrLWVycm9yLWR1cmluZy1yZXZhbGlkYXRpb24mcGF0aD0vbWlz
Yy9yZXNvdXJjZXMvY29tcGFzcy5qcGcmYWxsb3ctY2FjaGluZz0xIj4KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdhdGluZy1p
ZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLW5hdmlnYXRpbmctaWZy
YW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdhdGlu
Zy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTEs
NyArMTEsNyBAQCBhc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKICAgICBhd2FpdCBzZXRDb29raWUo
ImltcGxpY2l0LXN0cmljdCIsICI2IiwgeyJTYW1lU2l0ZSI6IG51bGwsICJNYXgtQWdlIjogMTAw
LCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgic3RyaWN0LWJlY2F1c2UtaW52
YWxpZC1TYW1lU2l0ZS12YWx1ZSIsICI2IiwgeyJTYW1lU2l0ZSI6ICJpbnZhbGlkIiwgIk1heC1B
Z2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAgYXdhaXQgc2V0Q29va2llKCJsYXgiLCAiNiIs
IHsiU2FtZVNpdGUiOiAiTGF4IiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7Ci0gICAg
d2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDovL2xvY2FsaG9zdDo4MDAwL3Jlc291cmNlcy9l
Y2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nvb2tpZXMv
c2FtZS1zaXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0Y2gtYWZ0
ZXItbmF2aWdhdGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHkiOworICAgIHdpbmRv
dy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZWNoby1p
ZnJhbWUtc3JjLnB5P3NyYz1odHRwJTNBLy8xMjcuMC4wLjElM0E4MDAwL2Nvb2tpZXMvc2FtZS1z
aXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsucHklM0ZocmVmJTNEZmV0Y2gtYWZ0ZXItbmF2
aWdhdGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2UucHkiOwogfQogcnVuVGVzdCgpOwog
PC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRl
L2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1p
bi1jcm9zcy1vcmlnaW4tcGFnZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24t
aW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLmh0bWwJKHJldmlzaW9u
IDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0
Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZyb20taWZyYW1lLWluLWNy
b3NzLW9yaWdpbi1wYWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAgYXN5
bmMgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYXdhaXQgc2V0Q29va2llKCJpbXBsaWNpdC1zdHJp
Y3QiLCAiNCIsIHsiU2FtZVNpdGUiOiBudWxsLCAiTWF4LUFnZSI6IDEwMCwgInBhdGgiOiAiLyJ9
KTsKICAgICBhd2FpdCBzZXRDb29raWUoInN0cmljdC1iZWNhdXNlLWludmFsaWQtU2FtZVNpdGUt
dmFsdWUiLCAiNCIsIHsiU2FtZVNpdGUiOiAiaW52YWxpZCIsICJNYXgtQWdlIjogMTAwLCAicGF0
aCI6ICIvIn0pOwogICAgIGF3YWl0IHNldENvb2tpZSgibGF4IiwgIjQiLCB7IlNhbWVTaXRlIjog
IkxheCIsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwotICAgIHdpbmRvdy5sb2NhdGlv
bi5ocmVmID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3Jj
LnBocD9zcmM9aHR0cCUzQS8vMTI3LjAuMC4xJTNBODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNv
dXJjZXMvY2xpY2staHlwZXJsaW5rLnB5JTNGaHJlZiUzRGZldGNoLWFmdGVyLXRvcC1sZXZlbC1u
YXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1pbi1jcm9zcy1vcmlnaW4tcGFnZS5weSUy
NnRhcmdldCUzRF90b3AiOworICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHA6Ly9sb2Nh
bGhvc3Q6ODAwMC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5P3NyYz1odHRwJTNBLy8xMjcu
MC4wLjElM0E4MDAwL2Nvb2tpZXMvc2FtZS1zaXRlL3Jlc291cmNlcy9jbGljay1oeXBlcmxpbmsu
cHklM0ZocmVmJTNEZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLW5hdmlnYXRpb24taW5pdGlhdGVkLWZy
b20taWZyYW1lLWluLWNyb3NzLW9yaWdpbi1wYWdlLnB5JTI2dGFyZ2V0JTNEX3RvcCI7CiB9CiBy
dW5UZXN0KCk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2ll
cy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLWlmcmFtZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jv
c3Mtb3JpZ2luLWlmcmFtZS5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQCBhc3luYyBmdW5jdGlvbiBydW5U
ZXN0KCkKICAgICBhd2FpdCBzZXRDb29raWUoImltcGxpY2l0LXN0cmljdCIsICIzIiwgeyJTYW1l
U2l0ZSI6IG51bGwsICJNYXgtQWdlIjogMTAwLCAicGF0aCI6ICIvIn0pOwogICAgIGF3YWl0IHNl
dENvb2tpZSgic3RyaWN0LWJlY2F1c2UtaW52YWxpZC1TYW1lU2l0ZS12YWx1ZSIsICIzIiwgeyJT
YW1lU2l0ZSI6ICJpbnZhbGlkIiwgIk1heC1BZ2UiOiAxMDAsICJwYXRoIjogIi8ifSk7CiAgICAg
YXdhaXQgc2V0Q29va2llKCJsYXgiLCAiMyIsIHsiU2FtZVNpdGUiOiAiTGF4IiwgIk1heC1BZ2Ui
OiAxMDAsICJwYXRoIjogIi8ifSk7Ci0gICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucGhwP3NyYz1odHRwOi8v
bG9jYWxob3N0OjgwMDAvY29va2llcy9zYW1lLXNpdGUvcmVzb3VyY2VzL2ZldGNoLWluLWNyb3Nz
LW9yaWdpbi1pZnJhbWUuaHRtbCI7CisgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHk/c3JjPWh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9jb29raWVzL3NhbWUtc2l0ZS9yZXNvdXJjZXMvZmV0Y2gtaW4tY3Jvc3Mt
b3JpZ2luLWlmcmFtZS5odG1sIjsKIH0KIHJ1blRlc3QoKTsKIDwvc2NyaXB0PgpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvYm9yZGVyLWltYWdlLWxvYWRpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3JkZXItaW1hZ2UtbG9hZGluZy5o
dG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9ib3Jk
ZXItaW1hZ2UtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDExICs5LDExIEBACiAg
ICAgLmJveCB7CiAgICAgICBoZWlnaHQ6IDEwMHB4OwogICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgLXdlYmtpdC1ib3JkZXItaW1hZ2U6IHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5waHA/dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPWJvcmRlcjEuanBnIikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKKyAgICAgIC13
ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1jc3MtYm9yZGVyLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPWJvcmRlcjEuanBnIikgMTAgMTAgMTAgMTAgc3RyZXRjaDsKICAgICB9CiAgICAgCiAg
ICAgLmJvcmRlcmVkIHsKLSAgICAgIC13ZWJraXQtYm9yZGVyLWltYWdlOiB1cmwoIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWJvcmRlci1pbWFnZS1sb2FkaW5nJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3JkZXIyLmpwZyIpIDEwIDEwIDEwIDEw
IHN0cmV0Y2g7CisgICAgICAtd2Via2l0LWJvcmRlci1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWJvcmRlci1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9
bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1ib3JkZXIyLmpwZyIpIDEwIDEwIDEwIDEwIHN0cmV0
Y2g7CiAgICAgfQogICAgIAogICA8L3N0eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvY3NzLWltYWdlLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9jc3MtaW1hZ2UtbG9hZGluZy5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC05LDI2ICs5LDI2IEBACiAgICAgLmJveCB7CiAgICAgICBoZWlnaHQ6IDEw
MHB4OwogICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCIv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGlu
ZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDEuanBnIik7Cisg
ICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPWJhY2tncm91bmQxLmpwZyIpOwogICAgIH0KICAgICAKICAgICAuYmFja2dyb3VuZCB7
Ci0gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1iYWNrZ3JvdW5kMi5qcGciKTsKKyAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVy
bCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9h
ZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9YmFja2dyb3VuZDIuanBnIik7
CiAgICAgfQogICAgIAogICAgIC5jb250ZW50IHsKLSAgICAgIGNvbnRlbnQ6IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNvbnRlbnQtaW1hZ2UxLmpwZyIpOworICAg
ICAgY29udGVudDogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3Nz
LWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250
ZW50LWltYWdlMS5qcGciKTsKICAgICB9CiAKICAgICAudGVzdCB7Ci0gICAgICBjb250ZW50OiB1
cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9Y3NzLWNzcy1pbWFnZS1s
b2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMi5q
cGciKSAiZm9vcHkiIHVybCgiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1j
c3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWNv
bnRlbnQtaW1hZ2UzLmpwZyIpOworICAgICAgY29udGVudDogdXJsKCIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1jb250ZW50LWltYWdlMi5qcGciKSAiZm9vcHkiIHVybCgiL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWNzcy1jc3MtaW1hZ2UtbG9hZGluZyZj
b21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9Y29udGVudC1pbWFnZTMuanBnIik7CiAg
ICAgfQogICAgIAogICAgIHVsIHsKLSAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgiL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UxLmpwZyIpOworICAgICAg
bGlzdC1zdHlsZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9Y3NzLWNzcy1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1saXN0LWltYWdlMS5qcGciKTsKICAgICB9CiAgICAgLmxpc3QgewotICAgICAgbGlzdC1zdHls
ZS1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1j
c3MtaW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bGlzdC1p
bWFnZTIuanBnIik7CisgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoIi9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1jc3MtY3NzLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPWxpc3QtaW1hZ2UyLmpwZyIpOwogICAgIH0KICAgICAKICAg
PC9zdHlsZT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS12YWx1
ZWQtc2hhcGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9j
c3MtaW1hZ2UtdmFsdWVkLXNoYXBlLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvY3NzL2Nzcy1pbWFnZS12YWx1ZWQtc2hhcGUuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtNyw3ICs3LDcgQEAKICAgICAgICAgZmxvYXQ6IGxlZnQ7CiAgICAgICAgIHdpZHRo
OiAyMDBweDsKICAgICAgICAgaGVpZ2h0OiAyMDBweDsKLSAgICAgICAgLXdlYmtpdC1zaGFwZS1v
dXRzaWRlOiB1cmwoIi9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwP25hbWU9c3F1YXJlMTAw
LnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MSIpOworICAgICAgICAtd2Via2l0LXNoYXBlLW91dHNp
ZGU6IHVybCgiL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weT9uYW1lPXNxdWFyZTEwMC5wbmcm
c3RhbGxBdD0wJnN0YWxsRm9yPTEiKTsKICAgICB9CiA8L3N0eWxlPgogPC9oZWFkPgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvZm9udC1mYWNlLXNyYy1sb2FkaW5nLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvZm9udC1mYWNlLXNyYy1sb2Fk
aW5nLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3Nz
L2ZvbnQtZmFjZS1zcmMtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw3ICsyNiw3
IEBAIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsKICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09
IHhoci5ET05FKQogICAgICAgICAgICAgZm9yY2VTdHlsZVNlbGVjdG9yUmVjcmVhdGlvbigpOwog
ICAgIH07Ci0gICAgeGhyLm9wZW4oJ0dFVCcsICcvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5w
aHA/JyArIGZpbGVuYW1lLCB0cnVlKTsKKyAgICB4aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMv
cmVzZXQtdGVtcC1maWxlLnB5PycgKyBmaWxlbmFtZSwgdHJ1ZSk7CiAgICAgeGhyLnNlbmQoKTsK
IH0KIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvbWFzay1pbWFnZS1sb2FkaW5n
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvbWFzay1pbWFn
ZS1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL21hc2staW1hZ2UtbG9hZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDExICs5
LDExIEBACiAgICAgLmJveCB7CiAgICAgICBoZWlnaHQ6IDEwMHB4OwogICAgICAgd2lkdGg6IDEw
MHB4OwotICAgICAgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdv
cmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sxLmpwZyIpOworICAgICAgLXdlYmtpdC1tYXNrLWJv
eC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLW1h
c2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazEu
anBnIik7CiAgICAgfQogICAgIAogICAgIC5tYXNrZWQgewotICAgICAgLXdlYmtpdC1tYXNrLWJv
eC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWNzcy1t
YXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2sy
LmpwZyIpOworICAgICAgLXdlYmtpdC1tYXNrLWJveC1pbWFnZTogdXJsKCIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3NzLW1hc2staW1hZ2UtbG9hZGluZyZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWFzazIuanBnIik7CiAgICAgfQogICAgIAogICA8L3N0
eWxlPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVmbGVjdGlvbi1tYXNrLWlt
YWdlLWxvYWRpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nz
cy9yZWZsZWN0aW9uLW1hc2staW1hZ2UtbG9hZGluZy5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy9yZWZsZWN0aW9uLW1hc2staW1hZ2UtbG9hZGlu
Zy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDExICs5LDExIEBACiAgICAgLmJveCB7CiAgICAg
ICBoZWlnaHQ6IDEwMHB4OwogICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgLXdlYmtpdC1ib3gt
cmVmbGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhw
P3Rlc3Q9Y3NzLXJlZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tYXNrMS5qcGciKTsKKyAgICAgIC13ZWJraXQtYm94LXJlZmxlY3Q6
IGJlbG93IDEwcHggdXJsKCIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9Y3Nz
LXJlZmxlY2l0b24tbWFzay1pbWFnZS1sb2FkaW5nJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tYXNrMS5qcGciKTsKICAgICB9CiAgICAgCiAgICAgLnJlZmxlY3RlZCB7Ci0gICAg
ICAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyAxMHB4IHVybCgiL3Jlc291cmNlcy9uZXR3b3Jr
LXNpbXVsYXRvci5waHA/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29t
bWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2syLmpwZyIpOworICAgICAgLXdlYmtp
dC1ib3gtcmVmbGVjdDogYmVsb3cgMTBweCB1cmwoIi9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucHk/dGVzdD1jc3MtcmVmbGVjaXRvbi1tYXNrLWltYWdlLWxvYWRpbmcmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1hc2syLmpwZyIpOwogICAgIH0KICAgICAKICAgPC9zdHls
ZT4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2Vs
aW5lLWFmdGVyLWltYWdlLWxvYWQtMi1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdl
LWxvYWQtMi1leHBlY3RlZC5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIt
ZXhwZWN0ZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAKIDxzY3JpcHQ+CiAg
ICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAiOworICAgICAgICBy
ZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHki
OwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2Fk
LTIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNh
bC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTIuaHRtbAkocmV2aXNpb24gMjc2NDM2
KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUt
YWZ0ZXItaW1hZ2UtbG9hZC0yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDcgQEAK
IDxzY3JpcHQ+CiAgICAgZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKICAgICB7Ci0gICAgICAgIHJl
dHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHAi
OworICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkiOwogICAgIH0KICAgICAKICAgICBmdW5jdGlvbiBwbmdJbWFnZSgpCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRl
ci1pbWFnZS1sb2FkLTMtZXhwZWN0ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1pbWFnZS1sb2FkLTMt
ZXhwZWN0ZWQuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLWV4cGVjdGVk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBACiA8c2NyaXB0PgogICAgIGZ1bmN0
aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAgICAgcmV0dXJuICJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKICAgICB9
CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24t
YmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC0zLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWlt
YWdlLWxvYWQtMy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw3IEBACiA8c2NyaXB0
PgogICAgIGZ1bmN0aW9uIGxvYWRBbmRTdGFsbCgpCiAgICAgewotICAgICAgICByZXR1cm4gImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICAg
ICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5IjsKICAgICB9CiAgICAgCiAgICAgZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGljYWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2Ut
bG9hZC1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
Y3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQtZXhwZWN0ZWQuaHRt
bAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvdmVydGlj
YWwtYWxpZ24tYmFzZWxpbmUtYWZ0ZXItaW1hZ2UtbG9hZC1leHBlY3RlZC5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC05LDcgKzksNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2FkQW5kU3Rh
bGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAogICAgIGZ1
bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3NzL3ZlcnRp
Y2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nzcy92ZXJ0aWNhbC1hbGlnbi1iYXNlbGluZS1hZnRlci1p
bWFnZS1sb2FkLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvY3NzL3ZlcnRpY2FsLWFsaWduLWJhc2VsaW5lLWFmdGVyLWltYWdlLWxvYWQuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMTUsNyArMTUsNyBAQAogPHNjcmlwdD4KICAgICBmdW5jdGlvbiBsb2Fk
QW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiAgICAgfQogICAgIAog
ICAgIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY3Nz
L3Jlc291cmNlcy9yZXF1ZXN0LWxvZ2dpbmcuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9nZ2luZy5qcwkocmV2aXNpb24gMjc2
NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jc3MvcmVzb3VyY2VzL3JlcXVlc3QtbG9n
Z2luZy5qcwkod29ya2luZyBjb3B5KQpAQCAtMyw3ICszLDcgQEAgdmFyIFJlc291cmNlTG9nZ2lu
ZyA9IHsKICAgICB7CiAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICB2YXIgcmVxID0gbmV3IFhN
TEh0dHBSZXF1ZXN0OwotICAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PSIgKyB0aGlzLnRlc3ROYW1lICsgIiZjb21tYW5kPSIg
KyBjbWQsIGZhbHNlKTsKKyAgICAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PSIgKyB0aGlzLnRlc3ROYW1lICsgIiZjb21tYW5kPSIg
KyBjbWQsIGZhbHNlKTsKICAgICAgICAgICAgIHJlcS5zZW5kKG51bGwpOwogICAgICAgICAgICAg
cmV0dXJuIHJlcS5yZXNwb25zZVRleHQ7CiAgICAgICAgIH0gY2F0Y2ggKGV4KSB7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJvZHkuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb25lLXJlc3BvbnNlLWJv
ZHkuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRj
aC9jbG9uZS1yZXNwb25zZS1ib2R5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTM0LDcgKzM0LDcg
QEAgcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQp
IHsKICAgICB2YXIgY2xvbmU7Ci0gICAgcmV0dXJuIGZldGNoKCcvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJykudGhlbihmdW5jdGlv
bihyZXMpIHsKKyAgICByZXR1cm4gZmV0Y2goJy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCcpLnRoZW4oZnVuY3Rpb24ocmVzKSB7CiAg
ICAgICAgIGFzc2VydF9lcXVhbHMocmVzLnN0YXR1cywgMjAwKTsKICAgICAgICAgLy8gQWxsIGRh
dGEgc2hvdWxkIG5vdCBiZSBlbnF1ZXVlZCB5ZXQuCiAgICAgICAgIGNsb25lID0gcmVzLmNsb25l
KCk7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Nsb3Npbmctd2hpbGUtZmV0
Y2hpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2Ns
b3Npbmctd2hpbGUtZmV0Y2hpbmcuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9mZXRjaC9jbG9zaW5nLXdoaWxlLWZldGNoaW5nLmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICAgICAgCiB2YXIgdGVzdCA9IGFzeW5jX3Rlc3Qo
IkVuc3VyaW5nIHRoYXQgZmV0Y2ggcmVzcG9uc2UgYm9keSBwcm9taXNlIGlzIG5vdCBmdWxmaWxs
ZWQgd2hlbiB3aW5kb3cgaXMgY2xvc2VkIik7CiB0ZXN0LnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAg
dmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTUmZGVsYXk9MTAwMCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5weT9pdGVyYXRpb249NSZkZWxheT0xMDAwIjsKICAgICBmZXRjaCh1cmwp
LnRoZW4odGVzdC5zdGVwX2Z1bmMoZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgYXNzZXJ0
X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CiAgICAgICAgIHJlc3BvbnNlLnRleHQoKS50
aGVuKHRlc3Quc3RlcF9mdW5jKGZ1bmN0aW9uKGJ1ZmZlcikgewpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9mZXRjaC9mZXRjaC1jb3JzLXdpdGgtcmVmZXJyZXIuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoLWNvcnMtd2l0aC1yZWZlcnJl
ci5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNo
L2ZldGNoLWNvcnMtd2l0aC1yZWZlcnJlci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzks
NyBAQAogICA8Ym9keT4KICAgICA8c2NyaXB0PgogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsK
LSAgICB2YXIgdXJsID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQt
anNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MSZkZWxheT0xJmNvcnM9dHJ1ZSI7CisgICAg
dmFyIHVybCA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5weT9pdGVyYXRpb249MSZkZWxheT0xJmNvcnM9dHJ1ZSI7CiAgICAgcmV0dXJu
IGZldGNoKHVybCwgeyJtb2RlIjogImNvcnMiLCAicmVmZXJyZXIiOiAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3JlZmVycmVyIn0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7CiAgICAgICAgIGFzc2VydF9l
cXVhbHMocmVzcG9uc2UudHlwZSwgImNvcnMiKTsKICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmFy
cmF5QnVmZmVyKCkudGhlbigoYXJyYXlCdWZmZXIpID0+IHsKSW5kZXg6IExheW91dFRlc3RzL2h0
dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRp
b25zLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Zl
dGNoL2ZldGNoaW5nLXNhbWUtcmVzb3VyY2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gv
ZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSwxMSArMSwxMSBAQAogQ09OU09MRSBNRVNTQUdFOiBDYW5u
b3QgdXNlIHdpbGRjYXJkIGluIEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiB3aGVuIGNyZWRl
bnRpYWxzIGZsYWcgaXMgdHJ1ZS4KLUNPTlNPTEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5vdCBs
b2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRl
bGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0
ZXN0PTEgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KK0NPTlNPTEUgTUVTU0FHRTogRmV0
Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxs
b3dDYWNoZT10cnVlJnRlc3Q9MSBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgogQ09OU09M
RSBNRVNTQUdFOiBDYW5ub3QgdXNlIHdpbGRjYXJkIGluIEFjY2Vzcy1Db250cm9sLUFsbG93LU9y
aWdpbiB3aGVuIGNyZWRlbnRpYWxzIGZsYWcgaXMgdHJ1ZS4KLUNPTlNPTEUgTUVTU0FHRTogRmV0
Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFs
bG93Q2FjaGU9dHJ1ZSZ0ZXN0PTIgZHVlIHRvIGFjY2VzcyBjb250cm9sIGNoZWNrcy4KK0NPTlNP
TEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEw
MCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MiBkdWUgdG8gYWNjZXNzIGNvbnRyb2wg
Y2hlY2tzLgogQ09OU09MRSBNRVNTQUdFOiBDYW5ub3QgdXNlIHdpbGRjYXJkIGluIEFjY2Vzcy1D
b250cm9sLUFsbG93LU9yaWdpbiB3aGVuIGNyZWRlbnRpYWxzIGZsYWcgaXMgdHJ1ZS4KLUNPTlNP
TEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9y
ZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0x
MDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMgZHVlIHRvIGFjY2VzcyBjb250cm9s
IGNoZWNrcy4KK0NPTlNPTEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJh
dGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MyBkdWUgdG8g
YWNjZXNzIGNvbnRyb2wgY2hlY2tzLgogQ09OU09MRSBNRVNTQUdFOiBDYW5ub3QgdXNlIHdpbGRj
YXJkIGluIEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiB3aGVuIGNyZWRlbnRpYWxzIGZsYWcg
aXMgdHJ1ZS4KLUNPTlNPTEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5vdCBsb2FkIGh0dHA6Ly9s
b2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVy
YXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTQgZHVlIHRv
IGFjY2VzcyBjb250cm9sIGNoZWNrcy4KK0NPTlNPTEUgTUVTU0FHRTogRmV0Y2ggQVBJIGNhbm5v
dCBsb2FkIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVl
JnRlc3Q9NCBkdWUgdG8gYWNjZXNzIGNvbnRyb2wgY2hlY2tzLgogCiBQQVNTIEVuc3VyZSBjb3Jz
IGNoZWNrcyB3b3JrIHdoZW4gbG9hZGluZyBpbiBwYXJhbGxlbCB0aGUgc2FtZSByZXNvdXJjZSB3
aXRoIGRpZmZlcmVudCBtb2RlcwogUEFTUyBFbnN1cmUgY29ycyBjaGVja3Mgd29yayB3aGVuIGxv
YWRpbmcgc3VjY2Vzc2l2ZWx5IHRoZSBzYW1lIHJlc291cmNlIHdpdGggZGlmZmVyZW50IG1vZGVz
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2ZldGNoaW5nLXNhbWUtcmVzb3Vy
Y2Utd2l0aC1kaWZmZXJlbnQtb3B0aW9ucy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1v
cHRpb25zLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
ZmV0Y2gvZmV0Y2hpbmctc2FtZS1yZXNvdXJjZS13aXRoLWRpZmZlcmVudC1vcHRpb25zLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTksOCArOSw4IEBACiAgIDxib2R5PgogICAgIDxzY3JpcHQ+CiBw
cm9taXNlX3Rlc3QoZnVuY3Rpb24odCkgewotICAgIHZhciB1cmwxID0gImh0dHA6Ly9sb2NhbGhv
c3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249
MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTEiOwotICAgIHZhciB1
cmwyID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRo
LWRlbGF5LnBocD9pdGVyYXRpb249MiZkZWxheT0xMDAmY29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1
ZSZ0ZXN0PTIiOworICAgIHZhciB1cmwxID0gImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJj
ZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3Jz
PXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9MSI7CisgICAgdmFyIHVybDIgPSAiaHR0cDovL2xv
Y2FsaG9zdDo4MDAwL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0yIjsKICAgICBy
ZXR1cm4gUHJvbWlzZS5hbGwoWwogICAgICAgICAgICAgZmV0Y2godXJsMSwgeyJtb2RlIjogIm5v
LWNvcnMifSkudGhlbigocmVzcG9uc2UpID0+IHsKICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHJlc3BvbnNlLnR5cGUsICJvcGFxdWUiKTsKQEAgLTM2LDggKzM2LDggQEAgcHJvbWlzZV90
ZXN0KGZ1bmN0aW9uKHQpIHsKIH0sICdFbnN1cmUgY29ycyBjaGVja3Mgd29yayB3aGVuIGxvYWRp
bmcgaW4gcGFyYWxsZWwgdGhlIHNhbWUgcmVzb3VyY2Ugd2l0aCBkaWZmZXJlbnQgbW9kZXMnKTsK
IAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICB2YXIgdXJsMyA9ICJodHRwOi8vbG9j
YWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hlPXRydWUmdGVzdD0zIjsKLSAgICB2
YXIgdXJsNCA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24t
d2l0aC1kZWxheS5waHA/aXRlcmF0aW9uPTImZGVsYXk9MTAwJmNvcnM9dHJ1ZSZhbGxvd0NhY2hl
PXRydWUmdGVzdD00IjsKKyAgICB2YXIgdXJsMyA9ICJodHRwOi8vbG9jYWxob3N0OjgwMDAvcmVz
b3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249MiZkZWxheT0xMDAm
Y29ycz10cnVlJmFsbG93Q2FjaGU9dHJ1ZSZ0ZXN0PTMiOworICAgIHZhciB1cmw0ID0gImh0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0
ZXJhdGlvbj0yJmRlbGF5PTEwMCZjb3JzPXRydWUmYWxsb3dDYWNoZT10cnVlJnRlc3Q9NCI7CiAg
ICAgcmV0dXJuIGZldGNoKHVybDMsIHsibW9kZSI6ICJjb3JzIn0pLnRoZW4oKHJlc3BvbnNlKSA9
PiB7CiAgICAgICAgIGFzc2VydF9lcXVhbHMocmVzcG9uc2UudHlwZSwgImNvcnMiKTsKICAgICAg
ICAgcmV0dXJuIHJlc3BvbnNlLmFycmF5QnVmZmVyKCkudGhlbigoYXJyYXlCdWZmZXIpID0+IHsK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvZ2V0LXJlc3BvbnNlLWJvZHktd2hp
bGUtbG9hZGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0
Y2gvZ2V0LXJlc3BvbnNlLWJvZHktd2hpbGUtbG9hZGluZy5odG1sCShyZXZpc2lvbiAyNzY0MzYp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ZldGNoL2dldC1yZXNwb25zZS1ib2R5LXdoaWxl
LWxvYWRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsNyArMTMsNyBAQAogICAgIDxzY3Jp
cHQ+CiAKIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKLSAgICB2YXIgdXJsID0gIi9yZXNvdXJj
ZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocD9pdGVyYXRpb249NSZkZWxheT0yMDAiOwor
ICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHk/aXRl
cmF0aW9uPTUmZGVsYXk9MjAwIjsKICAgICB2YXIgbG9hZGluZ0ZsYWcgPSBmYWxzZTsKICAgICBy
ZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgIGFzc2Vy
dF9lcXVhbHMocmVzcG9uc2Uuc3RhdHVzLCAyMDApOwpAQCAtMjcsNyArMjcsNyBAQCBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24oKSB7CiB9LCAiVGVzdGluZyBjYWxsaW5nIFJlc3BvbnNlLnRleHQoKSB3
aGVuIHN0aWxsIGZldGNoaW5nIGRhdGEiKTsKIAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewot
ICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0
ZXJhdGlvbj01JmRlbGF5PTIwMCI7CisgICAgdmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2Fk
LWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRpb249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2Fk
aW5nRmxhZyA9IGZhbHNlOwogICAgIHJldHVybiBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVz
cG9uc2UpIHsKICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBA
IC00MSw3ICs0MSw3IEBAIHByb21pc2VfdGVzdChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNh
bGxpbmcgUmVzcG9uc2UuYXJyYXlCdWZmZXIoKSB3aGVuIHN0aWxsIGZldGNoaW5nIGRhdGEiKTsK
IAogcHJvbWlzZV90ZXN0KGZ1bmN0aW9uKCkgewotICAgIHZhciB1cmwgPSAiL3Jlc291cmNlcy9k
b3dubG9hZC1qc29uLXdpdGgtZGVsYXkucGhwP2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CisgICAg
dmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5weT9pdGVyYXRp
b249NSZkZWxheT0yMDAiOwogICAgIHZhciBsb2FkaW5nRmxhZyA9IGZhbHNlOwogICAgIHJldHVy
biBmZXRjaCh1cmwpLnRoZW4oZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgICAgICAgYXNzZXJ0X2Vx
dWFscyhyZXNwb25zZS5zdGF0dXMsIDIwMCk7CkBAIC01NSw3ICs1NSw3IEBAIHByb21pc2VfdGVz
dChmdW5jdGlvbigpIHsKIH0sICJUZXN0aW5nIGNhbGxpbmcgUmVzcG9uc2UuYmxvYigpIHdoZW4g
c3RpbGwgZmV0Y2hpbmcgZGF0YSIpOwogCiBwcm9taXNlX3Rlc3QoZnVuY3Rpb24oKSB7Ci0gICAg
dmFyIHVybCA9ICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRlcmF0
aW9uPTUmZGVsYXk9MjAwIjsKKyAgICB2YXIgdXJsID0gIi9yZXNvdXJjZXMvZG93bmxvYWQtanNv
bi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj01JmRlbGF5PTIwMCI7CiAgICAgdmFyIGxvYWRpbmdG
bGFnID0gZmFsc2U7CiAgICAgcmV0dXJuIGZldGNoKHVybCkudGhlbihmdW5jdGlvbihyZXNwb25z
ZSkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKHJlc3BvbnNlLnN0YXR1cywgMjAwKTsKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RlY29kZS1zbG93LWxvYWQtc3RhdGljLWlt
YWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVj
b2RlLXNsb3ctbG9hZC1zdGF0aWMtaW1hZ2UuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZGVjb2RlLXNsb3ctbG9hZC1zdGF0aWMtaW1hZ2Uu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtNSw3ICs1LDcgQEAKICAgICA8ZGl2PjwvZGl2PgogICAg
IDxzY3JpcHQ+CiAgICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkSW1hZ2VTb3VyY2VVUkwoKSB7Ci0g
ICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucGhwIgorICAgICAgICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IgogICAgICAgICAgICAgICAgICArICI/bmFtZT0u
Li8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvMTAweDEwMC1yZWQucHNkIiAKICAgICAgICAg
ICAgICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGdm5kLmFkb2JlLnBob3Rvc2hvcCIKICAgICAg
ICAgICAgICAgICAgKyAiJnN0YWxsQXQ9MTAyNCI7CkBAIC0xMyw3ICsxMyw3IEBACiAgICAgICAg
IH0KIAogICAgICAgICBmdW5jdGlvbiByZXNvbHZlZEltYWdlU291cmNlVVJMKCkgewotICAgICAg
ICAgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0
YWxsLnBocCIKKyAgICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5weSIKICAgICAgICAgICAgICAgICAgKyAiP25hbWU9Li4vLi4v
Li4vZmFzdC9pbWFnZXMvcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nIiAKICAgICAgICAgICAg
ICAgICAgKyAiJm1pbWVUeXBlPWltYWdlJTJGcG5nIgogICAgICAgICAgICAgICAgICArICImc3Rh
bGxBdD0xMDI0IjsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2RyYXctcGF0
dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2ltYWdlcy9kcmF3LXBhdHRlcm4tc2xvdy1sb2FkLWxhcmdlLWltYWdlLmh0
bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2Ry
YXctcGF0dGVybi1zbG93LWxvYWQtbGFyZ2UtaW1hZ2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MTUsNyArMTUsNyBAQAogICAgICAgICAvLyBUaGUgbWF4aW11bSBidWZmZXJpbmcgaW50ZXJ2YWwg
Zm9yIEltYWdlUmVzb3VyY2UgaXMgNTAwbXMuIENob29zZSBzdGFsbEZvcgogICAgICAgICAvLyBz
dWNoIHRoYXQgdGhlIGltYWdlIGJ1ZmZlcmluZyBpcyBkaXNhYmxlZCBpbiB0aGUgbmV0d29yayBw
cm9jZXNzLgogICAgICAgICBmdW5jdGlvbiBzbG93TGFyZ2VJbWFnZVNvdXJjZVVSTCgpIHsKLSAg
ICAgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFu
ZC1zdGFsbC5waHAiCisgICAgICAgICAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiCiAgICAgICAgICAgICAgICAgICsgIj9uYW1lPS4u
Ly4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVlbi00MDB4NDAwLnBuZyIgCiAgICAgICAg
ICAgICAgICAgICsgIiZtaW1lVHlwZT1pbWFnZSUyRnBuZyIKICAgICAgICAgICAgICAgICAgKyAi
JnN0YWxsQXQ9NTEyIgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvZ2lmLXBy
b2dyZXNzaXZlLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9naWYtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC02LDcgKzYsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAog
ZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlv
biBnaWZJbWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9pbWFnZS1z
dXBwb3J0cy12aWRlby5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2ltYWdlLXN1cHBvcnRzLXZpZGVvLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEsNiArMSw2IEBACiA8cGljdHVyZT4KLSAgICA8c291cmNlIHNyY3Nl
dD0iL3Jlc291cmNlcy9yZWRpcmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHA/dmlkZW89dGVz
dC5tcDQiIHR5cGU9InZpZGVvL21wNCI+Ci0gICAgPHNvdXJjZSBzcmNzZXQ9Ii9yZXNvdXJjZXMv
cmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwP3ZpZGVvPXRlc3Qub2d2IiB0eXBlPSJ2
aWRlby9vZ3YiPgorICAgIDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZp
ZGVvLWlmLWFjY2VwdGVkLnB5P3ZpZGVvPXRlc3QubXA0IiB0eXBlPSJ2aWRlby9tcDQiPgorICAg
IDxzb3VyY2Ugc3Jjc2V0PSIvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVk
LnB5P3ZpZGVvPXRlc3Qub2d2IiB0eXBlPSJ2aWRlby9vZ3YiPgogICAgIDxpbWcgc3JjPSIvcmVz
b3VyY2VzL3NxdWFyZTEwMC5wbmciPgogPC9waWN0dXJlPgogPGJyPgpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbWFnZXMvanBlZy1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBhcnRpYWwtbG9hZC5odG1sCShy
ZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9qcGVnLXBh
cnRpYWwtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4g
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAg
ICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwu
cHkiOwogfQogCiBmdW5jdGlvbiBqcGVnSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1ib3JkZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWltYWdlLWJvcmRlci5odG1sCShyZXZp
c2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9sb2FkaW5nLWlt
YWdlLWJvcmRlci5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogICAgICAgICBp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5jb21wbGV0ZUltYWdlQm9yZGVyRW5hYmxlZCh0cnVlKTsK
IAogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgIGltZy5zcmMg
PSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2FkLWFuZC1zdGFsbC5waHA/bmFt
ZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcmbWltZVR5
cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CisgICAgICAgICAgICBpbWcu
c3JjID0gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHk/
bmFtZT0uLi8uLi8uLi9mYXN0L2ltYWdlcy9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmcmbWlt
ZVR5cGU9aW1hZ2UlMkZwbmcmc3RhbGxBdD0wJnN0YWxsRm9yPTEwMCI7CiAKICAgICAgICAgICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgICAgICB9LCAwKTsKSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvaW1hZ2VzL2xvYWRpbmctaW1hZ2Utbm8tYm9yZGVyLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbG9hZGluZy1pbWFnZS1uby1i
b3JkZXIuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9p
bWFnZXMvbG9hZGluZy1pbWFnZS1uby1ib3JkZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNCw3
ICs0LDcgQEAKICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEluY29tcGxldGVJbWFnZUJv
cmRlckVuYWJsZWQoZmFsc2UpOwogCiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewot
ICAgICAgICAgICAgaW1nLnNyYyA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xv
YWQtYW5kLXN0YWxsLnBocD9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9ncmVl
bi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9MTAw
IjsKKyAgICAgICAgICAgIGltZy5zcmMgPSAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9sb2FkLWFuZC1zdGFsbC5weT9uYW1lPS4uLy4uLy4uL2Zhc3QvaW1hZ2VzL3Jlc291cmNlcy9n
cmVlbi00MDB4NDAwLnBuZyZtaW1lVHlwZT1pbWFnZSUyRnBuZyZzdGFsbEF0PTAmc3RhbGxGb3I9
MTAwIjsKIAogICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgICAgIH0s
IDApOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9h
ZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL21wNC1w
YXJ0aWFsLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9pbWFnZXMvbXA0LXBhcnRpYWwtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3
ICsxMyw3IEBACiAKICAgICBmdW5jdGlvbiBsb2FkQW5kU3RhbGwoKQogICAgIHsKLSAgICAgICAg
cmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBo
cCI7CisgICAgICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5weSI7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gbXA0SW1hZ2UoKQpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC1uby1hbHBoYS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wYXJ0
aWFsLWxvYWQtbm8tYWxwaGEuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9pbWFnZXMvcG5nLXBhcnRpYWwtbG9hZC1uby1hbHBoYS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC03LDcgKzcsNyBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rp
b24gbG9hZEFuZFN0YWxsKCkKIHsKLSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiBwbmdJ
bWFnZSgpCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1s
b2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5n
LXBhcnRpYWwtbG9hZC5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL2ltYWdlcy9wbmctcGFydGlhbC1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcs
NyArNyw3IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogCiBmdW5jdGlvbiBsb2FkQW5kU3Rh
bGwoKQogewotICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9sb2Fk
LWFuZC1zdGFsbC5waHAiOworICAgIHJldHVybiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9sb2FkLWFuZC1zdGFsbC5weSI7CiB9CiAKIGZ1bmN0aW9uIHBuZ0ltYWdlKCkKSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2VzL3BuZy1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvcG5nLXByb2dyZXNz
aXZlLWxvYWQuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9pbWFnZXMvcG5nLXByb2dyZXNzaXZlLWxvYWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3
ICs3LDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAKIGZ1bmN0aW9uIGxvYWRBbmRTdGFs
bCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQt
YW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gcG5nSW1hZ2UoKQpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wYXJ0aWFsLWxvYWQuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdlcy93ZWJwLXBhcnRpYWwtbG9h
ZC5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2ltYWdl
cy93ZWJwLXBhcnRpYWwtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsKLSAg
ICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwu
cGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiB3ZWJwSW1hZ2UoKQpJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2FkLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbWFnZXMvd2VicC1wcm9ncmVzc2l2ZS1sb2Fk
Lmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvaW1hZ2Vz
L3dlYnAtcHJvZ3Jlc3NpdmUtbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBA
QCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIAogZnVuY3Rpb24gbG9hZEFuZFN0YWxsKCkKIHsK
LSAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucGhwIjsKKyAgICByZXR1cm4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbG9h
ZC1hbmQtc3RhbGwucHkiOwogfQogCiBmdW5jdGlvbiB3ZWJwSW1hZ2UoKQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9sb2FkaW5nL3ByZWxvYWQtaW1nLXRlc3QuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJlbG9hZC1pbWctdGVzdC5odG1s
CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvYWRpbmcvcHJl
bG9hZC1pbWctdGVzdC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC02LDcgKzYsNyBAQAogICB7CiAg
ICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAg
ICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctcHJlbG9hZC1pbWctdGVzdCZjb21tYW5kPSIgKyBjbWQsIGZhbHNlKTsK
KyAgICAgICAgICAgcmVxLm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9IiArIGNtZCwgZmFsc2Up
OwogICAgICAgICAgICByZXEuc2VuZChudWxsKTsKICAgICAgICAgICAgcmV0dXJuIHJlcS5yZXNw
b25zZVRleHQ7CiAgICAgICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQ5LDcgKzQ5LDcgQEAKICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi9yZXNvdXJjZXMvZW1wdHkuanMiPjwv
c2NyaXB0PgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgotICA8aW1nIGlkID0idGVz
dF9pbWFnZSIgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRp
bmctcHJlbG9hZC1pbWctdGVzdCZjb21tYW5kPWluY3JlYXNlLXJlc291cmNlLWNvdW50JnBhdGg9
L2xvYWRpbmcvcmVzb3VyY2VzL3ByZWxvYWQtdGVzdC5qcGciIG9uZXJyb3I9ImltZ19lcnJvcigp
IiBvbmxvYWQ9InNldFRpbWVvdXQoY2hlY2tBY2Nlc3NDb3VudCwgMzAwMCkiPgorICA8aW1nIGlk
ID0idGVzdF9pbWFnZSIgc3JjPSIvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9
bG9hZGluZy1wcmVsb2FkLWltZy10ZXN0JmNvbW1hbmQ9aW5jcmVhc2UtcmVzb3VyY2UtY291bnQm
cGF0aD0vbG9hZGluZy9yZXNvdXJjZXMvcHJlbG9hZC10ZXN0LmpwZyIgb25lcnJvcj0iaW1nX2Vy
cm9yKCkiIG9ubG9hZD0ic2V0VGltZW91dChjaGVja0FjY2Vzc0NvdW50LCAzMDAwKSI+CiAgIDxw
PlRoaXMgdGVzdCBpcyB0byB0ZXN0IHdoZXRoZXIgcHJlbG9hZCBpbWFnZSB3aWxsIHJlcXVpcmUg
MiBtb3JlIHJlcXVlc3RzIG9yIG5vdC48L3A+CiAgIDxzcGFuIGlkPSJvdXRwdXRQYW5lbCI+UEFT
U0VEPC9zcGFuPgogPC9ib2R5PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9j
YWwvbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZC5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xNCw3ICsxNCw3IEBACiAgICAgewogICAgICB0cnkgewogICAgICAgICAgdmFyIHJlcSA9
IG5ldyBYTUxIdHRwUmVxdWVzdDsKLSAgICAgICAgIHJlcS5vcGVuKCJHRVQiLCAiaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD0iICsgY21kLCBmYWxz
ZSk7CisgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD0iICsgY21kLCBmYWxzZSk7CiAgICAgICAgICByZXEu
c2VuZChudWxsKTsKICAgICAgICAgIHJldHVybiByZXEucmVzcG9uc2VUZXh0OwogICAgICB9IGNh
dGNoIChleCkgewpAQCAtNDMsMzUgKzQzLDM1IEBACiAgIDwvc2NyaXB0PgogICAKICAgPCEtLSBU
aGlzIHdpbGwgdHJpZ2dlciB0aGUgcHJlbG9hZCBzY2FubmVyIC0tPgotICA8c2NyaXB0IHNyYz0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVz
dD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ct
cmVzb3VyY2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQgc3Jj
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rl
c3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9n
LXJlc291cmNlLXJlcXVlc3QmcGF0aD1zY3JpcHQuanMiPjwvc2NyaXB0PgogCi0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS5jc3MiPgot
ICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHls
ZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtZW1wdHkuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIg
aHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5w
aHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcmludC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLmNzcyI+Ci0gIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9h
ZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vzcy5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVuIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmct
bGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1y
ZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4uY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+Ci0gIDxsaW5r
IHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRo
PW1lZGlhLWF1cmFsLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxl
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS5jc3MiPgotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0iaGFuZGhlbGQiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0
eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3Qm
cGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1w
cmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcm9qZWN0aW9u
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhyZWY9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1tZWRpYS10dHkuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9InR2IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4KLSAgPGxp
bmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlhLTIu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0cDovLzEyNy4w
LjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVx
dWVzdCZwYXRoPW1lZGlhLWVtcHR5LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVk
aWE9ImFsbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC0yLmNzcyI+Ci0g
IDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW1lZGlhLXByaW50LTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9
InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxv
YWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi0yLmNzcyI+
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFw
eCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0
b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3VjY2Vz
cy0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxlLCBzY3JlZW4i
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNzcyI+
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEw
MDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVs
b2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnkt
ZmFpbC0yLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPW5vLW1lZGlhLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWVtcHR5LmNzcyI+CisgIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJhbGwiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2Fk
LW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFs
bC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
LXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRo
OiAxcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktc3Vj
Y2Vzcy5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2NyZWVu
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3MiPgor
ICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAw
MDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2Fk
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3JlZW4tcXVlcnktZmFp
bC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYXVyYWwiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLWF1cmFsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0
IG1lZGlhPSJicmFpbGxlIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxl
LmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWFuLWhhbmRoZWxkLmNzcyI+CisgIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJwcm9qZWN0aW9uIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRp
YS1wcm9qZWN0aW9uLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJ0dHkiIGhy
ZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgorICA8bGluayByZWw9c3R5
bGVzaGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMv
bmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR2LmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5v
LW1lZGlhLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9IiIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxv
YWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9hZCZjb21tYW5kPWxvZy1yZXNv
dXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1wdHktMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVz
aGVldCBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hbGwtMi5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJpbnQiIGhyZWY9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5n
LWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQg
bWVkaWE9InNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIt
cHJlbG9hZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLTIu
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXItcHJlbG9h
ZCZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1
Y2Nlc3MtMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSwgc2Ny
ZWVuIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi0yLmNz
cyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lkdGg6
IDEwMDAwMDBweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyLXBy
ZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVy
eS1mYWlsLTIuY3NzIj4KICAgCiA8L2hlYWQ+CiA8Ym9keT4KLSAgPGltZyBzcmM9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNl
LXJlcXVlc3QmcGF0aD1pbWFnZS5qcGciPgotICA8c2NyaXB0IHNyYz0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPXNjcmlwdC0yLmpzIj48L3NjcmlwdD4KKyAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmst
c3R5bGVzaGVldC1sb2FkLW9yZGVyLXByZWxvYWQmY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVz
dCZwYXRoPWltYWdlLmpwZyI+CisgIDxzY3JpcHQgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlci1wcmVsb2FkJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1z
Y3JpcHQtMi5qcyI+PC9zY3JpcHQ+CiAKICAgVGVzdCBzdHlsZXNoZWV0IGxvYWQgc2NoZWR1bGlu
ZyB3aXRoIHByZWxvYWQgc2Nhbm5lci4gUmVzb3VyY2UgbG9hZHMgZm9yIHNjcmVlbiBzdHlsZXNo
ZWV0cyBzaG91bGQgYmUgc2NoZWR1bGVkIGZpcnN0LCBvdGhlcnMgc2hvdWxkIGJlIHNjaGVkdWxl
ZCBsYXN0LgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVz
aGVldC1sb2FkLW9yZGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9sb2NhbC9saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlci5odG1sCShyZXZpc2lvbiAyNzY0MzYp
CisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2xpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICB7CiAgICAgIHRy
eSB7CiAgICAgICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgICAgICAgcmVx
Lm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD0iICsgY21kLCBmYWxzZSk7CisgICAgICAgICByZXEub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9IiArIGNtZCwgZmFsc2UpOwogICAgICAg
ICAgcmVxLnNlbmQobnVsbCk7CiAgICAgICAgICByZXR1cm4gcmVxLnJlc3BvbnNlVGV4dDsKICAg
ICAgfSBjYXRjaCAoZXgpIHsKQEAgLTQyLDMzICs0MiwzMyBAQAogICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkJywgZW5kVGVzdCwgZmFsc2UpOwogICA8L3NjcmlwdD4KIAotICA8bGlu
ayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5vLW1lZGlhLmNzcyI+Ci0gIDxs
aW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtZW1w
dHkuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImFsbCIgaHJlZj0iaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1hbGwuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InBy
aW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1s
b2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LmNzcyI+Ci0gIDxsaW5rIHJlbD1z
dHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNv
dXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQt
bG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVu
LmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4gYW5kIChtaW4td2lk
dGg6IDFweCkiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21t
YW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LXN1Y2Nlc3Mu
Y3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUsIHNjcmVlbiIgaHJl
Zj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/
dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291
cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwMDAwcHgpIiBocmVm
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocD90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1mYWlsLmNzcyI+Ci0gIDxsaW5rIHJl
bD1zdHlsZXNoZWV0IG1lZGlhPSJhdXJhbCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1hdXJh
bC5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYnJhaWxsZSIgaHJlZj0iaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1s
b2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJl
cXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1l
ZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVy
JmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYW4taGFuZGhlbGQuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InByb2plY3Rpb24iIGhyZWY9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGlu
Zy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0
JnBhdGg9bWVkaWEtcHJvamVjdGlvbi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRp
YT0idHR5IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFu
ZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgotICA8bGluayByZWw9
c3R5bGVzaGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtdHYuY3NzIj4K
LSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1s
b2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1uby1tZWRpYS0yLmNz
cyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtZW1wdHktMi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxsIiBo
cmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBo
cD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVz
b3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWFsbC0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNo
ZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9y
ZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1wcmludC0yLmNzcyI+
Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtc2NyZWVuLTIuY3NzIj4KLSAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNj
cmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1zY3Jl
ZW4tcXVlcnktc3VjY2Vzcy0yLmNzcyI+Ci0gIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJi
cmFpbGxlLCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0
d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRl
ciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYnJhaWxsZS1zY3JlZW4t
Mi5jc3MiPgotICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdp
ZHRoOiAxMDAwMDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25l
dHdvcmstc2ltdWxhdG9yLnBocD90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3Jk
ZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1m
YWlsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgaHJlZj0iaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1z
dHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW5v
LW1lZGlhLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSIiIGhyZWY9Imh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2Fk
aW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVl
c3QmcGF0aD1tZWRpYS1lbXB0eS5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0i
YWxsIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxh
dG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxv
Zy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLmNzcyI+CisgIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJwcmludCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNl
cy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQt
b3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXByaW50LmNzcyI+
CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxp
bmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0
aD1tZWRpYS1zY3JlZW4uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVl
biBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1x
dWVyeS1zdWNjZXNzLmNzcyI+CisgIDxsaW5rIHJlbD1zdHlsZXNoZWV0IG1lZGlhPSJicmFpbGxl
LCBzY3JlZW4iIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1h
bmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLXNjcmVlbi5jc3MiPgor
ICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAw
MDAwcHgpIiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2lt
dWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5k
PWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtc2NyZWVuLXF1ZXJ5LWZhaWwuY3NzIj4K
KyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImF1cmFsIiBocmVmPSJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
bWVkaWEtYXVyYWwuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJyYWlsbGUi
IGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3Iu
cHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJl
c291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS1icmFpbGxlLmNzcyI+CisgIDxsaW5rIHJlbD1zdHls
ZXNoZWV0IG1lZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxv
YWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhbi1oYW5kaGVs
ZC5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0icHJvamVjdGlvbiIgaHJlZj0i
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0
PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2Ut
cmVxdWVzdCZwYXRoPW1lZGlhLXByb2plY3Rpb24uY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hl
ZXQgbWVkaWE9InR0eSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXR0eS5jc3MiPgorICA8bGlu
ayByZWw9c3R5bGVzaGVldCBtZWRpYT0idHYiIGhyZWY9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9y
ZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVl
dC1sb2FkLW9yZGVyJmNvbW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1tZWRpYS10di5j
c3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAv
cmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hl
ZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bm8tbWVkaWEt
Mi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtZW1wdHktMi5jc3MiPgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0iYWxs
IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9y
LnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1y
ZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtYWxsLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxl
c2hlZXQgbWVkaWE9InByaW50IiBocmVmPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9hZC1v
cmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9bWVkaWEtcHJpbnQtMi5jc3Mi
PgorICA8bGluayByZWw9c3R5bGVzaGVldCBtZWRpYT0ic2NyZWVuIiBocmVmPSJodHRwOi8vMTI3
LjAuMC4xOjgwMDAvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnB5P3Rlc3Q9bG9hZGluZy1s
aW5rLXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBh
dGg9bWVkaWEtc2NyZWVuLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNj
cmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jl
c291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0
LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVl
bi1xdWVyeS1zdWNjZXNzLTIuY3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9ImJy
YWlsbGUsIHNjcmVlbiIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLWJyYWlsbGUtc2NyZWVuLTIu
Y3NzIj4KKyAgPGxpbmsgcmVsPXN0eWxlc2hlZXQgbWVkaWE9InNjcmVlbiBhbmQgKG1pbi13aWR0
aDogMTAwMDAwMHB4KSIgaHJlZj0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3
b3JrLXNpbXVsYXRvci5weT90ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXIm
Y29tbWFuZD1sb2ctcmVzb3VyY2UtcmVxdWVzdCZwYXRoPW1lZGlhLXNjcmVlbi1xdWVyeS1mYWls
LTIuY3NzIj4KICAgCiA8L2hlYWQ+CiA8Ym9keT4KLSAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5r
LXN0eWxlc2hlZXQtbG9hZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9
aW1hZ2UuanBnIj4KLSAgPHNjcmlwdCBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucGhwP3Rlc3Q9bG9hZGluZy1saW5rLXN0eWxlc2hlZXQtbG9h
ZC1vcmRlciZjb21tYW5kPWxvZy1yZXNvdXJjZS1yZXF1ZXN0JnBhdGg9c2NyaXB0LmpzIj48L3Nj
cmlwdD4KKyAgPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvbmV0d29y
ay1zaW11bGF0b3IucHk/dGVzdD1sb2FkaW5nLWxpbmstc3R5bGVzaGVldC1sb2FkLW9yZGVyJmNv
bW1hbmQ9bG9nLXJlc291cmNlLXJlcXVlc3QmcGF0aD1pbWFnZS5qcGciPgorICA8c2NyaXB0IHNy
Yz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weT90
ZXN0PWxvYWRpbmctbGluay1zdHlsZXNoZWV0LWxvYWQtb3JkZXImY29tbWFuZD1sb2ctcmVzb3Vy
Y2UtcmVxdWVzdCZwYXRoPXNjcmlwdC5qcyI+PC9zY3JpcHQ+CiAKICAgVGVzdCBzdHlsZXNoZWV0
IGxvYWQgc2NoZWR1bGluZy4gUmVzb3VyY2UgbG9hZHMgZm9yIHNjcmVlbiBzdHlsZXNoZWV0cyBz
aG91bGQgYmUgc2NoZWR1bGVkIGZpcnN0LCBvdGhlcnMgc2hvdWxkIGJlIHNjaGVkdWxlZCBsYXN0
LgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0
LW1vZGlmaWVkLXVzaW5nLW9wZW4tcGFuZWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLXVzaW5nLW9wZW4t
cGFuZWwuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9s
b2NhbC9maWxlYXBpL2ZpbGUtbGFzdC1tb2RpZmllZC11c2luZy1vcGVuLXBhbmVsLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAganNUZXN0SXNBc3luYyA9IHRydWU7CiBmdW5j
dGlvbiBvbkZpbGVDaGFuZ2UoZmlsZSwgZmlsZVBhdGgpCiB7CiAgICAgdmFyIHhociA9IG5ldyBY
TUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwP3BhdGg9Li4vbG9jYWwvZmlsZWFw
aS8iICsgZmlsZVBhdGgsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiR0VUIiwgImh0dHA6Ly8xMjcu
MC4wLjE6ODAwMC9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5P3BhdGg9Li4vbG9jYWwv
ZmlsZWFwaS8iICsgZmlsZVBhdGgsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogICAgIHZhciBl
eHBlY3RlZERhdGUgPSBuZXcgRGF0ZShwYXJzZUludCh4aHIucmVzcG9uc2VUZXh0KSAqIDEwMDAp
OwogICAgIHZhciBhY3R1YWxEYXRlID0gZmlsZS5sYXN0TW9kaWZpZWQ7CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL2ZpbGUtbGFz
dC1tb2RpZmllZC5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2xvY2FsL2ZpbGVhcGkvZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEzLDcgKzEzLDcgQEAgZGVzY3JpcHRpb24oIlRlc3QgRmlsZS5sYXN0TW9kaWZpZWREYXRl
LgogZnVuY3Rpb24gb25GaWxlRHJvcChmaWxlLCBmaWxlUGF0aCkKIHsKICAgICB2YXIgeGhyID0g
bmV3IFhNTEh0dHBSZXF1ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIkdFVCIsICJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHA/cGF0aD0uLi9sb2NhbC9m
aWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOworICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHk/cGF0aD0uLi9s
b2NhbC9maWxlYXBpLyIgKyBmaWxlUGF0aCwgZmFsc2UpOwogICAgIHhoci5zZW5kKCk7CiAgICAg
dmFyIGV4cGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHBhcnNlSW50KHhoci5yZXNwb25zZVRleHQpICog
MTAwMCk7CiAgICAgdmFyIGFjdHVhbERhdGUgPSBmaWxlLmxhc3RNb2RpZmllZDsKSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0
aWxzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFw
aS9yZXNvdXJjZXMvdGVtcC1maWxlLXV0aWxzLmpzCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvcmVzb3VyY2VzL3RlbXAtZmlsZS11dGls
cy5qcwkod29ya2luZyBjb3B5KQpAQCAtMSw3ICsxLDcgQEAKIGZ1bmN0aW9uIGNyZWF0ZVRlbXBG
aWxlKGZpbGVOYW1lLCBmaWxlRGF0YSkKIHsKICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1
ZXN0KCk7Ci0gICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291
cmNlcy93cml0ZS10ZW1wLWZpbGUucGhwP2ZpbGVuYW1lPSIgKyBmaWxlTmFtZSArICImZGF0YT0i
ICsgZmlsZURhdGEsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5h
bWUgKyAiJmRhdGE9IiArIGZpbGVEYXRhLCBmYWxzZSk7CiAgICAgeGhyLnNlbmQoKTsKICAgICBp
ZiAoeGhyLnN0YXR1cyAhPSAyMDApIHsKICAgICAgICAgdGVzdEZhaWxlZCgiVW5leHBlY3RlZCBy
ZXNwb25zZSBzdGF0dXMgcmVjZWl2ZWQ6ICIgKyB4aHIuc3RhdHVzKTsKQEAgLTIwLDEzICsyMCwx
MyBAQCBmdW5jdGlvbiBjcmVhdGVUZW1wRmlsZShmaWxlTmFtZSwgZmlsZURhCiBmdW5jdGlvbiB0
b3VjaFRlbXBGaWxlKGZpbGVOYW1lKQogewogICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVl
c3QoKTsKLSAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL3RvdWNoLXRlbXAtZmlsZS5waHA/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxzZSk7Cisg
ICAgeGhyLm9wZW4oIlBPU1QiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Jlc291cmNlcy90b3Vj
aC10ZW1wLWZpbGUucHk/ZmlsZW5hbWU9IiArIGZpbGVOYW1lLCBmYWxzZSk7CiAgICAgeGhyLnNl
bmQoKTsKIH0KIAogZnVuY3Rpb24gcmVtb3ZlVGVtcEZpbGUoZmlsZU5hbWUpCiB7CiAgICAgdmFy
IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIHhoci5vcGVuKCJQT1NUIiwgImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocD9maWxlbmFtZT0i
ICsgZmlsZU5hbWUsIGZhbHNlKTsKKyAgICB4aHIub3BlbigiUE9TVCIsICJodHRwOi8vMTI3LjAu
MC4xOjgwMDAvcmVzb3VyY2VzL3Jlc2V0LXRlbXAtZmlsZS5weT9maWxlbmFtZT0iICsgZmlsZU5h
bWUsIGZhbHNlKTsKICAgICB4aHIuc2VuZCgpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLTIuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1z
bG93LWxvYWRpbmctMi5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL21lZGlhL3RyYWNrL3RyYWNrLXdlYnZ0dC1zbG93LWxvYWRpbmctMi5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIGZ1bmN0aW9uIGxvYWRBbmRTdGFs
bCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL2xvYWQt
YW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3Vy
Y2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gdnR0VHJhY2soKQpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFjay90cmFjay13ZWJ2dHQtc2xvdy1sb2Fk
aW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS90cmFj
ay90cmFjay13ZWJ2dHQtc2xvdy1sb2FkaW5nLmh0bWwJKHJldmlzaW9uIDI3NjQzNikKKysrIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdHJhY2svdHJhY2std2VidnR0LXNsb3ctbG9hZGlu
Zy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogPHNjcmlwdD4KIGZ1bmN0aW9u
IGxvYWRBbmRTdGFsbCgpCiB7Ci0gICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVz
b3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocCI7CisgICAgcmV0dXJuICJodHRwOi8vMTI3LjAuMC4x
OjgwMDAvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnB5IjsKIH0KIAogZnVuY3Rpb24gdnR0VHJh
Y2soKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNl
bC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9yZXBlYXQt
b3Blbi1jYW5jZWwuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL3JlcGVhdC1vcGVuLWNhbmNlbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDEy
ICs1LDEyIEBAIHZhciByZXBlYXRDb3VudCA9IDA7CiAKIGZ1bmN0aW9uIHNlbmRSZXF1ZXN0KCkg
ewogICAgIHZhciBmaXJzdFJlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwotICAgIGZpcnN0UmVx
Lm9wZW4oIkdFVCIsICIvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHA/aXRl
cmF0aW9uPTEwMCZkZWxheT0xIik7CisgICAgZmlyc3RSZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0ZXJhdGlvbj0xMDAmZGVsYXk9MSIpOwog
CiAgICAgZmlyc3RSZXEub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7CiAgICAgICAg
IGlmIChmaXJzdFJlcS5yZWFkeVN0YXRlID09IGZpcnN0UmVxLkhFQURFUlNfUkVDRUlWRUQpIHsK
ICAgICAgICAgICAgIHZhciBzZWNvbmRSZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKLSAgICAg
ICAgICAgIHNlY29uZFJlcS5vcGVuKCJHRVQiLCAiL3Jlc291cmNlcy9kb3dubG9hZC1qc29uLXdp
dGgtZGVsYXkucGhwP2l0ZXJhdGlvbj0xMCZkZWxheT0wIik7CisgICAgICAgICAgICBzZWNvbmRS
ZXEub3BlbigiR0VUIiwgIi9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5P2l0
ZXJhdGlvbj0xMCZkZWxheT0wIik7CiAKICAgICAgICAgICAgIHNlY29uZFJlcS5vbmxvYWQgPSBm
dW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICBpZiAocmVwZWF0Q291bnQrKyA8IDQwKQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BlbmRpbmctbG9jYXRpb24tY2hh
bmdlLWFzc2VydC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbmF2
aWdhdGlvbi9wZW5kaW5nLWxvY2F0aW9uLWNoYW5nZS1hc3NlcnQuaHRtbAkocmV2aXNpb24gMjc2
NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3BlbmRpbmctbG9jYXRp
b24tY2hhbmdlLWFzc2VydC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNyBAQCBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIH0KLXdpbmRvdy5sb2NhdGlvbiA9ICIuLi9yZXNv
dXJjZXMvc2xvdy1ub3RpZnktZG9uZS5waHAiOword2luZG93LmxvY2F0aW9uID0gIi4uL3Jlc291
cmNlcy9zbG93LW5vdGlmeS1kb25lLnB5IjsKIDwvc2NyaXB0PjxzY3JpcHQ+CiBhbGVydCgnRkFJ
TCAxIG9mIDMnKTsKIDwvc2NyaXB0PjxzY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3ByZWxvYWQvZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9hZF9hZnRlcl9kaXNjb3Zlcnlf
aW1hZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQv
ZGVsYXlpbmdfb25sb2FkX2xpbmtfcHJlbG9hZF9hZnRlcl9kaXNjb3ZlcnlfaW1hZ2UuaHRtbAko
cmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2RlbGF5
aW5nX29ubG9hZF9saW5rX3ByZWxvYWRfYWZ0ZXJfZGlzY292ZXJ5X2ltYWdlLmh0bWwJKHdvcmtp
bmcgY29weSkKQEAgLTcsNyArNyw3IEBACiAgICAgdmFyIGZpbmlzaGVkSW1hZ2UgPSBmYWxzZTsK
IDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LmpzIj48
L3NjcmlwdD4KLTxsaW5rIHJlbD1wcmVsb2FkIGhyZWY9Ii4uL3Jlc291cmNlcy9zbG93LWltYWdl
LnBocCIgYXM9aW1hZ2Ugb25sb2FkPSJmaW5pc2hlZEltYWdlID0gdHJ1ZTsiPgorPGxpbmsgcmVs
PXByZWxvYWQgaHJlZj0iLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkiIGFzPWltYWdlIG9ubG9h
ZD0iZmluaXNoZWRJbWFnZSA9IHRydWU7Ij4KIDxib2R5PgogPHNjcmlwdD4KICAgICB3aW5kb3cu
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgewpAQCAtMTUsNyArMTUsNyBAQAog
ICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKICAgICB9KTsKICAgICB2YXIgaW1nID0g
bmV3IEltYWdlKCk7Ci0gICAgaW1nLnNyYyA9ICIuLi9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHAi
OworICAgIGltZy5zcmMgPSAiLi4vcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucHkiOwogICAgIGRvY3Vt
ZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW1nKTsKIDwvc2NyaXB0PgogPC9ib2R5PgpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJlZi5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9keW5hbWlj
X3JlbW92ZV9wcmVsb2FkX2hyZWYuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9wcmVsb2FkL2R5bmFtaWNfcmVtb3ZlX3ByZWxvYWRfaHJlZi5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC04LDE0ICs4LDE0IEBACiAgICAgbGluay5hcyA9ICJpbWFnZSI7CiAg
ICAgbGluay5yZWwgPSAicHJlbG9hZCI7CiAgICAgLy8gQ2FjaGUtYnVzdGluZyBpcyBuZWVkZWQg
Zm9yIHNsb3cgcmVzb3VyY2VzLgotICAgIGxpbmsuaHJlZiA9ICIuLi9yZXNvdXJjZXMvc2xvdy1p
bWFnZS5waHA/cmFuZD0iICsgTWF0aC5yYW5kb20oKTsKKyAgICBsaW5rLmhyZWYgPSAiLi4vcmVz
b3VyY2VzL3Nsb3ctaW1hZ2UucHk/cmFuZD0iICsgTWF0aC5yYW5kb20oKTsKICAgICB2YXIgZG93
bmxvYWRlZEltYWdlID0gZmFsc2U7CiAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5r
KTsKICAgICBsaW5rLmhyZWYgPSAiIjsKICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIGZ1bmN0aW9uKCkgewogICAgICAgICB2YXIgZW50cmllcyA9IHBlcmZvcm1hbmNlLmdldEVu
dHJpZXNCeVR5cGUoInJlc291cmNlIik7CiAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZW50
cmllcy5sZW5ndGg7ICsraSkgewotICAgICAgICAgICAgaWYgKGVudHJpZXNbaV0ubmFtZS5pbmRl
eE9mKCJzbG93LWltYWdlLnBocCIpICE9IC0xKQorICAgICAgICAgICAgaWYgKGVudHJpZXNbaV0u
bmFtZS5pbmRleE9mKCJzbG93LWltYWdlLnB5IikgIT0gLTEpCiAgICAgICAgICAgICAgICAgZG93
bmxvYWRlZEltYWdlID0gdHJ1ZTsKICAgICAgICAgfQogICAgICAgICBzaG91bGRCZUZhbHNlKCJk
b3dubG9hZGVkSW1hZ2UiKTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcHJlbG9hZC9u
b3RfZGVsYXlpbmdfd2luZG93X29ubG9hZF9iZWZvcmVfZGlzY292ZXJ5Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3df
b25sb2FkX2JlZm9yZV9kaXNjb3ZlcnkuaHRtbAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9wcmVsb2FkL25vdF9kZWxheWluZ193aW5kb3dfb25sb2FkX2JlZm9y
ZV9kaXNjb3ZlcnkuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjAsNyArMjAsNyBAQAogICAgIC8v
IFRoZSByYW5kIHZhbHVlIGlzIG5lY2Vzc2FyeSB0byBjYWNoZS1idXN0IHNsb3cgcmVzb3VyY2Vz
LgogICAgIHZhciByYW5kID0gTWF0aC5yYW5kb20oKTsKICAgICBkb2N1bWVudC53cml0ZSgiPGxp
bmsgcmVsPXByZWxvYWQgaHJlZj0nLi4vcmVzb3VyY2VzL3Nsb3ctc2NyaXB0LnBsP2RlbGF5PTIw
MDtyYW5kPSIgKyByYW5kICsgIicgYXM9c2NyaXB0IG9ubG9hZD0nd2luZG93LmZpbmlzaGVkU2Ny
aXB0ID0gdHJ1ZTsgdGVzdCgpOyc+Iik7Ci0gICAgZG9jdW1lbnQud3JpdGUoIjxsaW5rIHJlbD1w
cmVsb2FkIGhyZWY9Jy4uL3Jlc291cmNlcy9zbG93LWltYWdlLnBocD9yYW5kPSIgKyByYW5kICsg
IicgYXM9aW1hZ2Ugb25sb2FkPSd3aW5kb3cuZmluaXNoZWRJbWFnZSA9IHRydWU7IHRlc3QoKTsn
PiIpOworICAgIGRvY3VtZW50LndyaXRlKCI8bGluayByZWw9cHJlbG9hZCBocmVmPScuLi9yZXNv
dXJjZXMvc2xvdy1pbWFnZS5weT9yYW5kPSIgKyByYW5kICsgIicgYXM9aW1hZ2Ugb25sb2FkPSd3
aW5kb3cuZmluaXNoZWRJbWFnZSA9IHRydWU7IHRlc3QoKTsnPiIpOwogPC9zY3JpcHQ+CiA8Ym9k
eT4KIDxzY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2
aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9wcmVsb2FkL25vdF9ldmljdGluZ19wcmVsb2FkX2F0X29ubG9hZC5odG1sCShy
ZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ByZWxvYWQvbm90X2V2
aWN0aW5nX3ByZWxvYWRfYXRfb25sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTgsNyArOCw3
IEBACiA8c2NyaXB0IHNyYz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgogPHNjcmlwdD4KICAgICAvLyBUaGUgcmFuZCB2YWx1ZSBpcyBuZWNlc3NhcnkgdG8gY2FjaGUt
YnVzdCBzbG93IHJlc291cmNlcy4KLSAgICB2YXIgaW1hZ2VVUkwgPSAiaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3Jlc291cmNlcy9zbG93LWltYWdlLnBocD9yYW5kPSIgKyBNYXRoLnJhbmRvbSgpOwor
ICAgIHZhciBpbWFnZVVSTCA9ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2VzL3Nsb3ct
aW1hZ2UucHk/cmFuZD0iICsgTWF0aC5yYW5kb20oKTsKICAgICBmdW5jdGlvbiB0ZXN0KCkgewog
ICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgdmFyIGVudHJpZXMg
PSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKGltYWdlVVJMKS5sZW5ndGg7CkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBocAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9iYXNpYy1hdXRoLnBocAkocmV2
aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvYmFzaWMt
YXV0aC5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMCArMCwwIEBACi08P3BocAotICBpZiAoIWlz
c2V0KCRfU0VSVkVSWydQSFBfQVVUSF9VU0VSJ10pIHx8ICFpc3NldCgkX1JFUVVFU1RbJ3VpZCdd
KSB8fCAoJF9SRVFVRVNUWyd1aWQnXSAhPSAkX1NFUlZFUlsnUEhQX0FVVEhfVVNFUiddKSkgewot
ICAgaGVhZGVyKCdXV1ctQXV0aGVudGljYXRlOiBCYXNpYyByZWFsbT0iV2ViS2l0IFRlc3QgUmVh
bG0iJyk7Ci0gICBoZWFkZXIoJ0hUVFAvMS4wIDQwMSBVbmF1dGhvcml6ZWQnKTsKLSAgIGVjaG8g
J0F1dGhlbnRpY2F0aW9uIGNhbmNlbGVkJzsKLSAgIGV4aXQ7Ci0gIH0gZWxzZSB7Ci0gICBlY2hv
ICJVc2VyOiB7JF9TRVJWRVJbJ1BIUF9BVVRIX1VTRVInXX0sIHBhc3N3b3JkOiB7JF9TRVJWRVJb
J1BIUF9BVVRIX1BXJ119LiI7Ci0gIH0KLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9kaWdlc3QtYXV0aC9hdXRob3JpemUucGhwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1hdXRoL2F1dGhvcml6ZS5waHAJKHJl
dmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2Vz
dC1hdXRoL2F1dGhvcml6ZS5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxOSArMCwwIEBACi08P3Bo
cAotCi1yZXF1aXJlX29uY2UgImRpZ2VzdC5waHAiOwotCi1pZiAoZW1wdHkoJF9TRVJWRVJbJ1BI
UF9BVVRIX0RJR0VTVCddKSkgewotICAgIGhlYWRlcignSFRUUC8xLjAgNDAxIFVuYXV0aG9yaXpl
ZCcpOwotICAgIGhlYWRlcigiV1dXLUF1dGhlbnRpY2F0ZTogRGlnZXN0IHJlYWxtPVwieyRyZWFs
bX1cIixxb3A9XCJhdXRoXCIsbm9uY2U9XCJ7JG5vbmNlfVwiLG9wYXF1ZT1cInskb3BhcXVlfVwi
Iik7Ci0KLSAgICBlY2hvICI8aDE+WW91IGFyZSBub3QgYWxsb3dlZCB0byBzZWUgdGhpcyBzZWNy
ZXQuPC9oMT4iOwotfSBlbHNlaWYgKCEoJGRhdGEgPSBodHRwX2RpZ2VzdF9wYXJzZSgkX1NFUlZF
UlsnUEhQX0FVVEhfRElHRVNUJ10pKSkgewotICAgIGhlYWRlcignSFRUUC8xLjAgNDAxIFVuYXV0
aG9yaXplZCcpOwotICAgIGVjaG8gIjxoMT5JbnZhbGlkIGNyZWRlbnRpYWxzLjwvaDE+IjsKLX0g
ZWxzZWlmICghKCR1c2VybmFtZSA9IHZhbGlkYXRlX2RpZ2VzdCgkZGF0YSkpKSB7Ci0gICAgaGVh
ZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJyk7Ci0gICAgZWNobyAiPGgxPldyb25nIGNy
ZWRlbnRpYWxzLjwvaDE+IjsKLX0gZWxzZSB7Ci0gICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IHRl
eHQvcGxhaW4nKTsKLSAgICBlY2hvICdVc2VyOiAnIC4gJHVzZXJuYW1lIC4gIlxuIjsKLX0KSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2RpZ2VzdC1hdXRoL2RpZ2VzdC5w
aHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZGlnZXN0
LWF1dGgvZGlnZXN0LnBocAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvZGlnZXN0LWF1dGgvZGlnZXN0LnBocAkobm9uZXhpc3RlbnQpCkBAIC0x
LDUyICswLDAgQEAKLTw/cGhwCi0KLSRyZWFsbSA9ICdEaWdlc3QgQXV0aCBQcm90ZWN0ZWQgQXJl
YSc7Ci0kbm9uY2UgPSB1bmlxaWQoKTsKLSRvcGFxdWUgPSBtZDUoJHJlYWxtKTsKLQotJHVzZXJu
YW1lID0gJ2V2ZXJ5Ym9keSc7Ci0kcGFzc3dvcmQgPSAnbG92ZXNiZWVyJzsKLQotZnVuY3Rpb24g
aHR0cF9kaWdlc3RfcGFyc2UoJHR4dCkKLXsKLSAgICAvLyBwcm90ZWN0IGFnYWluc3QgbWlzc2lu
ZyBkYXRhCi0gICAgJG5lZWRlZF9wYXJ0cyA9IFsKLSAgICAgICAgJ25vbmNlJyA9PiAxLAotICAg
ICAgICAnbmMnID0+IDEsCi0gICAgICAgICdjbm9uY2UnID0+IDEsCi0gICAgICAgICdxb3AnID0+
IDEsCi0gICAgICAgICd1c2VybmFtZScgPT4gMSwKLSAgICAgICAgJ3VyaScgPT4gMSwKLSAgICAg
ICAgJ3Jlc3BvbnNlJyA9PiAxCi0gICAgXTsKLSAgICAkZGF0YSA9IFtdOwotICAgICRrZXlzID0g
aW1wbG9kZSgnfCcsIGFycmF5X2tleXMoJG5lZWRlZF9wYXJ0cykpOwotCi0gICAgcHJlZ19tYXRj
aF9hbGwoJ0AoJyAuICRrZXlzIC4gJyk9KD86KFtcJyJdKShbXlwyXSs/KVwyfChbXlxzLF0rKSlA
JywgJHR4dCwgJG1hdGNoZXMsIFBSRUdfU0VUX09SREVSKTsKLQotICAgIGZvcmVhY2ggKCRtYXRj
aGVzIGFzICRtKSB7Ci0gICAgICAgICRkYXRhWyRtWzFdXSA9ICRtWzNdID8gJG1bM10gOiAkbVs0
XTsKLSAgICAgICAgdW5zZXQoJG5lZWRlZF9wYXJ0c1skbVsxXV0pOwotICAgIH0KLQotICAgIHJl
dHVybiAkbmVlZGVkX3BhcnRzID8gZmFsc2UgOiAkZGF0YTsKLX0KLQotZnVuY3Rpb24gdmFsaWRh
dGVfZGlnZXN0KCRkYXRhKQotewotICAgIGdsb2JhbCAkcmVhbG0sICR1c2VybmFtZSwgJHBhc3N3
b3JkOwotCi0gICAgaWYgKCRkYXRhWyd1c2VybmFtZSddICE9PSAkdXNlcm5hbWUpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgICRBMSA9IGdldF9tZDVfb2YoJGRhdGFbJ3VzZXJuYW1lJ10s
ICRyZWFsbSwgJHBhc3N3b3JkKTsKLSAgICAkQTIgPSBnZXRfbWQ1X29mKCRfU0VSVkVSWydSRVFV
RVNUX01FVEhPRCddLCAkZGF0YVsndXJpJ10pOwotICAgICR2YWxpZF9yZXNwb25zZSA9IGdldF9t
ZDVfb2YoJEExLCAkZGF0YVsnbm9uY2UnXSwgJGRhdGFbJ25jJ10sICRkYXRhWydjbm9uY2UnXSwg
JGRhdGFbJ3FvcCddLCAkQTIpOwotCi0gICAgcmV0dXJuICRkYXRhWydyZXNwb25zZSddID09ICR2
YWxpZF9yZXNwb25zZSA/ICR1c2VybmFtZSA6IG51bGw7Ci19Ci0KLWZ1bmN0aW9uIGdldF9tZDVf
b2YoLi4uJGl0ZW1zKQotewotICAgIHJldHVybiBtZDUoaW1wbG9kZSgnOicsICRpdGVtcykpOwot
fQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpzb24td2l0aC1kZWxheS5waHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5
LnBocAkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDI5ICsw
LDAgQEAKLTw/cGhwCi1oZWFkZXIoIkV4cGlyZXM6IFRodSwgMDEgRGVjIDIwMDMgMTY6MDA6MDAg
R01UIik7Ci0KLWlmICgkX0dFVFsnYWxsb3dDYWNoZSddKSB7Ci0gICAgaGVhZGVyKCJDb250ZW50
LVR5cGU6IGFwcGxpY2F0aW9uL2pzb24iKTsKLX0gZWxzZSB7Ci0gICAgaGVhZGVyKCJDb250ZW50
LVR5cGU6IGFwcGxpY2F0aW9uL3gtbm8tYnVmZmVyaW5nLXBsZWFzZSIpOwotICAgIGhlYWRlcigi
Q2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG5vLXN0b3JlLCBtdXN0LXJldmFsaWRhdGUiKTsKLSAg
ICBoZWFkZXIoIlByYWdtYTogbm8tY2FjaGUiKTsKLX0KLQotaWYgKCRfR0VUWydjb3JzJ10pIHsK
LSAgICBoZWFkZXIoIkFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbjogKiIpOwotfQotCi0kaXRl
cmF0aW9uID0gJF9HRVRbJ2l0ZXJhdGlvbiddOwotJGRlbGF5ID0gJF9HRVRbJ2RlbGF5J107Ci0K
LWVjaG8gIlskaXRlcmF0aW9uLCAkZGVsYXkgIjsKLQotZm9yICgkaSA9IDE7ICRpIDw9ICRpdGVy
YXRpb247ICsrJGkpIHsKLSAgICBlY2hvICIsICRpLCBcImZvb2JhclwiIjsKLSAgICAvLyBGb3Jj
ZSBjb250ZW50IHRvIGJlIHNlbnQgdG8gdGhlIGJyb3dzZXIgYXMgaXMuCi0gICAgb2JfZmx1c2go
KTsKLSAgICBmbHVzaCgpOwotICAgIHVzbGVlcCgkZGVsYXkgKiAxMDAwKTsKLX0KLWVjaG8gIl0i
OwotPz4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2Rvd25sb2FkLWpz
b24td2l0aC1kZWxheS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9kb3dubG9hZC1qc29uLXdpdGgtZGVsYXkucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxvYWQtanNvbi13aXRoLWRlbGF5LnB5
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMK
KworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdGltZQorZnJvbSB1cmxsaWIucGFyc2Ug
aW1wb3J0IHBhcnNlX3FzCisKK3F1ZXJ5ID0gcGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FVRVJZ
X1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkKK2FsbG93X2NhY2hlID0gcXVl
cnkuZ2V0KCdhbGxvd0NhY2hlJywgW05vbmVdKVswXQorY29ycyA9IHF1ZXJ5LmdldCgnY29ycycs
IFtOb25lXSlbMF0KKworc3lzLnN0ZG91dC53cml0ZSgnRXhwaXJlczogVGh1LCAwMSBEZWMgMjAw
MyAxNjowMDowMCBHTVRcclxuJykKKworaWYgYWxsb3dfY2FjaGUgaXMgbm90IE5vbmU6CisgICAg
c3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXHJcbicpCitl
bHNlOgorICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICdDb250ZW50LVR5cGU6IGFwcGxp
Y2F0aW9uL3gtbm8tYnVmZmVyaW5nLXBsZWFzZVxyXG4nCisgICAgICAgICdDYWNoZS1Db250cm9s
OiBuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZVxyXG4nCisgICAgICAgICdQcmFn
bWE6IG5vLWNhY2hlXHJcbicKKyAgICApCisKK2lmIGNvcnMgaXMgbm90IE5vbmU6CisgICAgc3lz
LnN0ZG91dC53cml0ZSgnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luOiAqXHJcbicpCisKK3N5
cy5zdGRvdXQud3JpdGUoJ1xyXG4nKQorCitpdGVyYXRpb24gPSBpbnQocXVlcnkuZ2V0KCdpdGVy
YXRpb24nLCBbMF0pWzBdKQorZGVsYXkgPSBpbnQocXVlcnkuZ2V0KCdkZWxheScsIFswXSlbMF0p
CisKK3N5cy5zdGRvdXQud3JpdGUoJ1t7fSwge30gJy5mb3JtYXQoaXRlcmF0aW9uLCBkZWxheSkp
CisKK2ZvciBpIGluIHJhbmdlKDEsIGl0ZXJhdGlvbiArIDEpOgorICAgIHN5cy5zdGRvdXQud3Jp
dGUoJywge30sICJmb29iYXIiJy5mb3JtYXQoaSkpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisg
ICAgdGltZS5zbGVlcChkZWxheSAvIDEwMDApCisKK3N5cy5zdGRvdXQud3JpdGUoJ10nKQoKUHJv
cGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZG93bmxv
YWQtanNvbi13aXRoLWRlbGF5LnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMj
IC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnBocAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMu
cGhwCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
cy9lY2hvLWlmcmFtZS1zcmMucGhwCShub25leGlzdGVudCkKQEAgLTEsMTUgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdD4KLWlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIuZHVt
cENoaWxkRnJhbWVzQXNUZXh0KCk7Ci0gICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci19
Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGlmcmFtZSBzcmM9Ijw/cGhwIGVjaG8gJF9H
RVRbJ3NyYyddOyA/PiI+PC9pZnJhbWU+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1zcmMucHkKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5CShu
b25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2VjaG8taWZy
YW1lLXNyYy5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI1IEBACisjIS91c3IvYmluL2Vu
diBweXRob24zCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSB1cmxsaWIucGFyc2UgaW1w
b3J0IHBhcnNlX3FzCisKK3NyYyA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdRVUVSWV9TVFJJ
TkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpLmdldCgnc3JjJywgWycnXSlbMF0KKwor
c3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisKK3By
aW50KCcnJzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHt7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVz
dFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKK319Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGlmcmFtZSBzcmM9Int9
Ij48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4nJycuZm9ybWF0KHNyYykpCgpQcm9wZXJ0eSBj
aGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9lY2hvLWlmcmFtZS1z
cmMucHkKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucGhwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5waHAJKHJldmlz
aW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFz
dC1tb2RpZmllZC5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3ICswLDAgQEAKLTw/cGhwCi1kYXRl
X2RlZmF1bHRfdGltZXpvbmVfc2V0KCdVVEMnKTsKLSRmaWxlUGF0aCA9ICRfR0VUWydwYXRoJ107
Ci1pZiAoZmlsZV9leGlzdHMoJGZpbGVQYXRoKSkgewotICAgIGVjaG8gZGF0ZSgiVSIsIGZpbGVt
dGltZSgkZmlsZVBhdGgpKTsKLX0KLT8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlcy9maWxlLWxhc3QtbW9kaWZpZWQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1vZGlmaWVkLnB5CShub25leGlzdGVudCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2ZpbGUtbGFzdC1tb2RpZmllZC5w
eQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEyIEBACisjIS91c3IvYmluL2VudiBweXRob24z
CisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNl
X3FzCisKK3BhdGggPSBvcy5wYXRoLmFic3BhdGgocGFyc2VfcXMob3MuZW52aXJvbi5nZXQoJ1FV
RVJZX1NUUklORycsICcnKSwga2VlcF9ibGFua192YWx1ZXM9VHJ1ZSkuZ2V0KCdwYXRoJywgW19f
ZmlsZV9fXSlbMF0pCisKK3N5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1s
XHJcblxyXG4nKQorCitpZiBvcy5wYXRoLmlzZmlsZShwYXRoKToKKyAgICBzeXMuc3Rkb3V0Lndy
aXRlKHN0cihvcy5zdGF0KHBhdGgpLnN0X210aW1lKS5zcGxpdCgnLicpWzBdKQoKUHJvcGVydHkg
Y2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvZmlsZS1sYXN0LW1v
ZGlmaWVkLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMK
KyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwucGhwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxsLnBocAkocmV2aXNpb24g
Mjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3Rh
bGwucGhwCShub25leGlzdGVudCkKQEAgLTEsNTAgKzAsMCBAQAotPD9waHAKLSRuYW1lID0gJF9H
RVRbJ25hbWUnXTsKLSRzdGFsbEF0ID0gJF9HRVRbJ3N0YWxsQXQnXTsKLSRzdGFsbEZvciA9ICRf
R0VUWydzdGFsbEZvciddOwotJHN0YWxsUmVwZWF0ID0gJF9HRVRbJ3N0YWxsUmVwZWF0J107Ci0k
bWltZVR5cGUgPSAkX0dFVFsnbWltZVR5cGUnXTsKLQotJGZpbGUgPSBmb3BlbigkbmFtZSwgInJi
Iik7Ci1pZiAoISRmaWxlKQotICAgIGRpZSgiQ2Fubm90IG9wZW4gZmlsZS4iKTsKLQotaGVhZGVy
KCJDb250ZW50LVR5cGU6ICIgLiAkbWltZVR5cGUpOwotaGVhZGVyKCJDb250ZW50LUxlbmd0aDog
IiAuIGZpbGVzaXplKCRuYW1lKSk7Ci0KLWlmIChpc3NldCgkc3RhbGxBdCkgJiYgaXNzZXQoJHN0
YWxsRm9yKSkgewotICAgICRzdGFsbEF0ID0gKGludCkkc3RhbGxBdDsKLSAgICBpZiAoJHN0YWxs
QXQgPiBmaWxlc2l6ZSgkbmFtZSkpCi0gICAgICAgIGRpZSgiSW5jb3JyZWN0IHZhbHVlIGZvciBz
dGFsbEF0LiIpOwotCi0gICAgJHdyaXR0ZW5Ub3RhbCA9IDA7Ci0gICAgJGZpbGVTaXplID0gZmls
ZXNpemUoJG5hbWUpOwotCi0gICAgd2hpbGUgKCR3cml0dGVuVG90YWwgPCAkZmlsZVNpemUpIHsK
LSAgICAgICAgJHN0YWxsQXQgPSBtaW4oJHN0YWxsQXQsICRmaWxlU2l6ZSAtICR3cml0dGVuVG90
YWwpOwotICAgICAgICAkd3JpdHRlbiA9IDA7Ci0KLSAgICAgICAgd2hpbGUgKCR3cml0dGVuIDwg
JHN0YWxsQXQpIHsKLSAgICAgICAgICAgICR3cml0ZSA9IG1pbigxMDI0LCAkc3RhbGxBdCAtICR3
cml0dGVuKTsKLSAgICAgICAgICAgIGVjaG8oZnJlYWQoJGZpbGUsICR3cml0ZSkpOwotICAgICAg
ICAgICAgJHdyaXR0ZW4gKz0gJHdyaXRlOwotICAgICAgICAgICAgZmx1c2goKTsKLSAgICAgICAg
ICAgIG9iX2ZsdXNoKCk7Ci0gICAgICAgIH0KLQotICAgICAgICAkd3JpdHRlblRvdGFsICs9ICR3
cml0dGVuOwotICAgICAgICAkcmVtYWluaW5nID0gJGZpbGVTaXplIC0gJHdyaXR0ZW5Ub3RhbDsK
LSAgICAgICAgaWYgKCEkcmVtYWluaW5nKQotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAg
dXNsZWVwKCRzdGFsbEZvciAqIDEwMDAwMDApOwotICAgICAgICBpZiAoIWlzc2V0KCRzdGFsbFJl
cGVhdCkgfHwgISRzdGFsbFJlcGVhdCkKLSAgICAgICAgICAgICRzdGFsbEF0ID0gJHJlbWFpbmlu
ZzsKLSAgICB9Ci19IGVsc2UgewotICAgIGVjaG8oZnJlYWQoJGZpbGUsIGZpbGVzaXplKCRuYW1l
KSkpOwotICAgIGZsdXNoKCk7Ci0gICAgb2JfZmx1c2goKTsKLX0KLWZjbG9zZSgkZmlsZSk7Ci0/
PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1hbmQtc3RhbGwu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbG9hZC1h
bmQtc3RhbGwucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvbG9hZC1hbmQtc3RhbGwucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw2NiBAQAor
IyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0
aW1lCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFyc2VfcXMKKworcXVlcnkgPSBwYXJzZV9x
cyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1U
cnVlKQorbmFtZSA9IHF1ZXJ5LmdldCgnbmFtZScsIFsnJ10pWzBdCitzdGFsbF9hdCA9IHF1ZXJ5
LmdldCgnc3RhbGxBdCcsIFtOb25lXSlbMF0KK3N0YWxsX2ZvciA9IHF1ZXJ5LmdldCgnc3RhbGxG
b3InLCBbTm9uZV0pWzBdCitzdGFsbF9yZXBlYXQgPSBxdWVyeS5nZXQoJ3N0YWxsUmVwZWF0Jywg
W05vbmVdKVswXQorbWltZV90eXBlID0gcXVlcnkuZ2V0KCdtaW1lVHlwZScsIFsnJ10pWzBdCisK
K2lmIG5vdCBvcy5wYXRoLmlzZmlsZShuYW1lKToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250
ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKKyAgICBzeXMuZXhpdCgwKQorCituYW1lID0g
b3MucGF0aC5hYnNwYXRoKG5hbWUpCisKK29wZW5fZmlsZSA9IG9wZW4obmFtZSwgJ3JiJykKK2Zp
bGVfc2l6ZSA9IG9zLnBhdGguZ2V0c2l6ZShuYW1lKQorY29udGVudCA9IG9wZW5fZmlsZS5yZWFk
KCkKKworc3lzLnN0ZG91dC53cml0ZSgKKyAgICAnQ29udGVudC1UeXBlOiB7fVxyXG4nCisgICAg
J0NvbnRlbnQtTGVuZ3RoOiB7fVxyXG5cclxuJy5mb3JtYXQobWltZV90eXBlLCBmaWxlX3NpemUp
CispCisKK2lmIHN0YWxsX2F0IGlzIG5vdCBOb25lIGFuZCBzdGFsbF9mb3IgaXMgbm90IE5vbmU6
CisgICAgc3RhbGxfYXQgPSBpbnQoc3RhbGxfYXQpCisgICAgc3RhbGxfZm9yID0gZmxvYXQoc3Rh
bGxfZm9yKQorCisgICAgaWYgc3RhbGxfYXQgPiBmaWxlX3NpemU6CisgICAgICAgIHN5cy5zdGRv
dXQud3JpdGUoJ0luY29ycmVjdCB2YWx1ZSBmb3Igc3RhbGxBdC4nKQorICAgICAgICBzeXMuZXhp
dCgwKQorCisgICAgd3JpdHRlbl90b3RhbCA9IDAKKyAgICB3aGlsZSB3cml0dGVuX3RvdGFsIDwg
ZmlsZV9zaXplOgorICAgICAgICBzdGFsbF9hdCA9IG1pbihzdGFsbF9hdCwgZmlsZV9zaXplIC0g
d3JpdHRlbl90b3RhbCkKKyAgICAgICAgd3JpdHRlbiA9IDAKKworICAgICAgICB3aGlsZSB3cml0
dGVuIDwgc3RhbGxfYXQ6CisgICAgICAgICAgICB3cml0ZSA9IG1pbigxMDI0LCBzdGFsbF9hdCAt
IHdyaXR0ZW4pCisKKyAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQorICAgICAgICAgICAg
c3lzLnN0ZG91dC5idWZmZXIud3JpdGUoY29udGVudFt3cml0dGVuX3RvdGFsICsgd3JpdHRlbjp3
cml0dGVuX3RvdGFsICsgd3JpdHRlbiArIHdyaXRlXSkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQu
Zmx1c2goKQorCisgICAgICAgICAgICB3cml0dGVuICs9IHdyaXRlCisKKyAgICAgICAgd3JpdHRl
bl90b3RhbCArPSB3cml0dGVuCisgICAgICAgIHJlbWFpbmluZyA9IGZpbGVfc2l6ZSAtIHdyaXR0
ZW5fdG90YWwKKworICAgICAgICBpZiByZW1haW5pbmcgPT0gMDoKKyAgICAgICAgICAgIGJyZWFr
CisKKyAgICAgICAgdGltZS5zbGVlcChzdGFsbF9mb3IpCisgICAgICAgIGlmIHN0YWxsX3JlcGVh
dCBpcyBOb25lOgorICAgICAgICAgICAgc3RhbGxfYXQgPSByZW1haW5pbmcKK2Vsc2U6CisgICAg
c3lzLnN0ZG91dC5mbHVzaCgpCisgICAgc3lzLnN0ZG91dC5idWZmZXIud3JpdGUoY29udGVudCkK
KyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKworb3Blbl9maWxlLmNsb3NlKCkKClByb3BlcnR5IGNo
YW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL2xvYWQtYW5kLXN0YWxs
LnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvbmV0d29yay1zaW11bGF0b3IucGhwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL25ldHdvcmstc2ltdWxhdG9yLnBocAkocmV2aXNpb24g
Mjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvbmV0d29yay1zaW11
bGF0b3IucGhwCShub25leGlzdGVudCkKQEAgLTEsMTk4ICswLDAgQEAKLTw/cGhwCi1yZXF1aXJl
X29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotLy8gVGhpcyBzY3JpcHQgYWN0cyBhcyBh
IHN0YXRlZnVsIHByb3h5IGZvciByZXRyaWV2aW5nIGZpbGVzLiBXaGVuIHRoZSBzdGF0ZSBpcyBz
ZXQgdG8KLS8vIG9mZmxpbmUsIGl0IHNpbXVsYXRlcyBhIG5ldHdvcmsgZXJyb3Igd2l0aCBhIG5v
bnNlbnNlIHJlc3BvbnNlLgotCi1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewotICAgIGhlYWRl
cigiSFRUUC8xLjEgNTAwIEludGVybmFsIFNlcnZlciBFcnJvciIpOwotICAgIGVjaG8gIkZBSUw6
IE5vIHRlbXAgZGlyIHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgpOwotfQotCi1pZiAoIWlz
c2V0KCRfR0VUWyd0ZXN0J10pKSB7Ci0gICAgaGVhZGVyKCJIVFRQLzEuMSA1MDAgSW50ZXJuYWwg
U2VydmVyIEVycm9yIik7Ci0gICAgZWNobyAidGVzdCBwYXJhbWV0ZXIgbXVzdCBiZSBzcGVjaWZp
ZWQgZm9yIGEgdW5pcXVlIHRlc3QgbmFtZVxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLWZ1bmN0aW9u
IHRlbXBQYXRoQmFzZSgpCi17Ci0gICAgcmV0dXJuIHN5c19nZXRfdGVtcF9kaXIoKSAuICIvIiAu
ICRfR0VUWyd0ZXN0J107Ci19Ci0KLWZ1bmN0aW9uIHNldFN0YXRlKCRuZXdTdGF0ZSwgJGZpbGUp
Ci17Ci0gICAgZmlsZV9wdXRfY29udGVudHMoJGZpbGUsICRuZXdTdGF0ZSk7Ci19Ci0KLWZ1bmN0
aW9uIGdldFN0YXRlKCRmaWxlKQotewotICAgIGlmICghZmlsZV9leGlzdHMoJGZpbGUpKSB7Ci0g
ICAgICAgIHJldHVybiAiVW5pbml0aWFsaXplZCI7Ci0gICAgfQotICAgIHJldHVybiBmaWxlX2dl
dF9jb250ZW50cygkZmlsZSk7Ci19Ci0KLWZ1bmN0aW9uIGNvbnRlbnRUeXBlKCRwYXRoKQotewot
ICAgIGlmIChwcmVnX21hdGNoKCIvXC5odG1sJC8iLCAkcGF0aCkpCi0gICAgICAgIHJldHVybiAi
dGV4dC9odG1sIjsKLSAgICBpZiAocHJlZ19tYXRjaCgiL1wubWFuaWZlc3QkLyIsICRwYXRoKSkK
LSAgICAgICAgcmV0dXJuICJ0ZXh0L2NhY2hlLW1hbmlmZXN0IjsKLSAgICBpZiAocHJlZ19tYXRj
aCgiL1wuanMkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJ0ZXh0L2phdmFzY3JpcHQiOwot
ICAgIGlmIChwcmVnX21hdGNoKCIvXC54bWwkLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJh
cHBsaWNhdGlvbi94bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC54aHRtbCQvIiwgJHBhdGgp
KQotICAgICAgICByZXR1cm4gImFwcGxpY2F0aW9uL3hodG1sK3htbCI7Ci0gICAgaWYgKHByZWdf
bWF0Y2goIi9cLnN2ZyQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gImFwcGxpY2F0aW9uL3N2
Zyt4bWwiOwotICAgIGlmIChwcmVnX21hdGNoKCIvXC54c2wkLyIsICRwYXRoKSkKLSAgICAgICAg
cmV0dXJuICJhcHBsaWNhdGlvbi94c2x0K3htbCI7Ci0gICAgaWYgKHByZWdfbWF0Y2goIi9cLmdp
ZiQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gImltYWdlL2dpZiI7Ci0gICAgaWYgKHByZWdf
bWF0Y2goIi9cLmpwZyQvIiwgJHBhdGgpKQotICAgICAgICByZXR1cm4gImltYWdlL2pwZWciOwot
ICAgIGlmIChwcmVnX21hdGNoKCIvXC5wbmckLyIsICRwYXRoKSkKLSAgICAgICAgcmV0dXJuICJp
bWFnZS9wbmciOwotICAgIHJldHVybiAidGV4dC9wbGFpbiI7Ci19Ci0KLWZ1bmN0aW9uIGdlbmVy
YXRlTm9DYWNoZUhUVFBIZWFkZXIoKQotewotICAgIGhlYWRlcigiRXhwaXJlczogVGh1LCAwMSBE
ZWMgMjAwMyAxNjowMDowMCBHTVQiKTsKLSAgICBoZWFkZXIoIkNhY2hlLUNvbnRyb2w6IG5vLWNh
Y2hlLCBuby1zdG9yZSwgbXVzdC1yZXZhbGlkYXRlIik7Ci0gICAgaGVhZGVyKCJQcmFnbWE6IG5v
LWNhY2hlIik7Ci19Ci0KLWZ1bmN0aW9uIGdlbmVyYXRlUmVzcG9uc2UoJHBhdGgpCi17Ci0gICAg
Z2xvYmFsICRzdGF0ZUZpbGU7Ci0gICAgJHN0YXRlID0gZ2V0U3RhdGUoJHN0YXRlRmlsZSk7Ci0g
ICAgaWYgKCRzdGF0ZSA9PSAiT2ZmbGluZSIpIHsKLSAgICAgICAgIyBTaW11bGF0ZSBhIG5ldHdv
cmsgZXJyb3IgYnkgcmVwbHlpbmcgd2l0aCBhIG5vbnNlbnNlIHJlc3BvbnNlLgotICAgICAgICBo
ZWFkZXIoJ0hUVFAvMS4xIDMwNyBUZW1wb3JhcnkgUmVkaXJlY3QnKTsKLSAgICAgICAgaGVhZGVy
KCdMb2NhdGlvbjogJyAuICRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTsgIyBSZWRpcmVjdCB0byBz
ZWxmLgotICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAxJyk7Ci0gICAgICAgIGhlYWRl
cignQ29udGVudC1MZW5ndGg6IDUnLCBmYWxzZSk7ICMgTXVsdGlwbGUgY29udGVudC1sZW5ndGgg
aGVhZGVycywgc29tZSBuZXR3b3JrIHN0YWNrcyBjYW4gZGV0ZWN0IHRoaXMgY29uZGl0aW9uIGZh
c3Rlci4KLSAgICAgICAgZWNobyAiSW50ZW50aW9uYWxseSBpbmNvcnJlY3QgcmVzcG9uc2UuIjsK
LSAgICB9IGVsc2UgewotICAgICAgICAvLyBBIGxpdHRsZSBzZWN1cnV0eSBjaGVja2luZyBjYW4n
dCBodXJ0LgotICAgICAgICBpZiAoc3Ryc3RyKCRwYXRoLCAiLi4iKSkKLSAgICAgICAgICAgIGV4
aXQ7Ci0KLSAgICAgICAgaWYgKCRwYXRoWzBdID09ICcvJykKLSAgICAgICAgICAgICRwYXRoID0g
Jy4uJyAuICRwYXRoOwotCi0gICAgICAgIGlmICghJF9HRVRbJ2FsbG93LWNhY2hpbmcnXSkKLSAg
ICAgICAgICAgIGdlbmVyYXRlTm9DYWNoZUhUVFBIZWFkZXIoKTsKLQotICAgICAgICBpZiAoZmls
ZV9leGlzdHMoJHBhdGgpKSB7Ci0gICAgICAgICAgICBoZWFkZXIoIkxhc3QtTW9kaWZpZWQ6ICIg
LiBnbWRhdGUoIkQsIGQgTSBZIEg6aTpzIFQiLCBmaWxlbXRpbWUoJHBhdGgpKSk7Ci0gICAgICAg
ICAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogIiAuIGNvbnRlbnRUeXBlKCRwYXRoKSk7Ci0gICAg
ICAgIAotICAgICAgICAgICAgcHJpbnQgZmlsZV9nZXRfY29udGVudHMoJHBhdGgpOwotICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgaGVhZGVyKCdIVFRQLzEuMSA0MDQgTm90IEZvdW5kJyk7
Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUluY3JlYXNlUmVzb3VyY2VD
b3VudENvbW1hbmQoJHBhdGgpCi17Ci0gICAgJHJlc291cmNlQ291bnRGaWxlID0gdGVtcFBhdGhC
YXNlKCkgLiAiLWNvdW50IjsKLSAgICAkcmVzb3VyY2VDb3VudCA9IGdldFN0YXRlKCRyZXNvdXJj
ZUNvdW50RmlsZSk7Ci0gICAgJHBpZWNlcyA9IGV4cGxvZGUoIiAiLCAkcmVzb3VyY2VDb3VudCk7
Ci0gICAgJGNvdW50ID0gMDsKLSAgICBpZiAoY291bnQoJHBpZWNlcykgPT0gMiAmJiAkcGllY2Vz
WzBdID09ICRwYXRoKSB7Ci0gICAgICAgICRjb3VudCA9IDEgKyAkcGllY2VzWzFdOwotICAgIH0g
ZWxzZSB7Ci0gICAgICAgICRjb3VudCA9IDE7Ci0gICAgfQotICAgIGZpbGVfcHV0X2NvbnRlbnRz
KCRyZXNvdXJjZUNvdW50RmlsZSwgJHBhdGggLiAiICIgLiAkY291bnQpOwotICAgIGdlbmVyYXRl
UmVzcG9uc2UoJHBhdGgpOwotfQotCi1mdW5jdGlvbiBoYW5kbGVSZXNldFJlc291cmNlQ291bnRD
b21tYW5kKCkKLXsKLSAgICAkcmVzb3VyY2VDb3VudEZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICIt
Y291bnQiOwotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUNvdW50RmlsZSwgMCk7Ci0g
ICAgZ2VuZXJhdGVOb0NhY2hlSFRUUEhlYWRlcigpOwotICAgIGhlYWRlcignSFRUUC8xLjEgMjAw
IE9LJyk7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUdldFJlc291cmNlQ291bnRDb21tYW5kKCRwYXRo
KQotewotICAgICRyZXNvdXJjZUNvdW50RmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1jb3VudCI7
Ci0gICAgJHJlc291cmNlQ291bnQgPSBnZXRTdGF0ZSgkcmVzb3VyY2VDb3VudEZpbGUpOwotICAg
ICRwaWVjZXMgPSBleHBsb2RlKCIgIiwgJHJlc291cmNlQ291bnQpOwotICAgIGdlbmVyYXRlTm9D
YWNoZUhUVFBIZWFkZXIoKTsKLSAgICBoZWFkZXIoJ0hUVFAvMS4xIDIwMCBPSycpOwotICAgIGlm
IChjb3VudCgkcGllY2VzKSA9PSAyICYmICRwaWVjZXNbMF0gPT0gJHBhdGgpIHsKLSAgICAgICAg
ZWNobyAkcGllY2VzWzFdOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGVjaG8gMDsKLSAgICB9Ci19
Ci0KLWZ1bmN0aW9uIGhhbmRsZVN0YXJ0UmVzb3VyY2VSZXF1ZXN0c0xvZygpCi17Ci0gICAgJHJl
c291cmNlTG9nRmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1sb2ciOwotICAgIGZpbGVfcHV0X2Nv
bnRlbnRzKCRyZXNvdXJjZUxvZ0ZpbGUsICAiIik7Ci19Ci0KLWZ1bmN0aW9uIGhhbmRsZUNsZWFy
UmVzb3VyY2VSZXF1ZXN0c0xvZygpCi17Ci0gICAgJHJlc291cmNlTG9nRmlsZSA9IHRlbXBQYXRo
QmFzZSgpIC4gIi1sb2ciOwotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUxvZ0ZpbGUs
ICIiKTsKLX0KLQotZnVuY3Rpb24gaGFuZGxlR2V0UmVzb3VyY2VSZXF1ZXN0c0xvZygpCi17Ci0g
ICAgJHJlc291cmNlTG9nRmlsZSA9IHRlbXBQYXRoQmFzZSgpIC4gIi1sb2ciOwotCi0gICAgZ2Vu
ZXJhdGVOb0NhY2hlSFRUUEhlYWRlcigpOwotICAgIGhlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0
L3BsYWluIik7Ci0KLSAgICBwcmludCBmaWxlX2dldF9jb250ZW50cygkcmVzb3VyY2VMb2dGaWxl
KTsKLX0KLQotZnVuY3Rpb24gaGFuZGxlTG9nUmVzb3VyY2VSZXF1ZXN0KCRwYXRoKQotewotICAg
ICRyZXNvdXJjZUxvZ0ZpbGUgPSB0ZW1wUGF0aEJhc2UoKSAuICItbG9nIjsKLSAgICAKLSAgICAk
bmV3RGF0YSA9ICJcbiIuJHBhdGg7Ci0gICAgLy8gRG9jdW1lbnRhdGlvbiBzYXlzIHRoYXQgYXBw
ZW5kcyBhcmUgYXRvbWljLgotICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRyZXNvdXJjZUxvZ0ZpbGUs
ICRuZXdEYXRhLCBGSUxFX0FQUEVORCk7Ci19Ci0KLSRzdGF0ZUZpbGUgPSB0ZW1wUGF0aEJhc2Uo
KSAuICItc3RhdGUiOwotJGNvbW1hbmQgPSAkX0dFVFsnY29tbWFuZCddOwotaWYgKCRjb21tYW5k
KSB7Ci0gICAgaWYgKCRjb21tYW5kID09ICJjb25uZWN0IikKLSAgICAgICAgc2V0U3RhdGUoIk9u
bGluZSIsICRzdGF0ZUZpbGUpOwotICAgIGVsc2UgaWYgKCRjb21tYW5kID09ICJkaXNjb25uZWN0
IikKLSAgICAgICAgc2V0U3RhdGUoIk9mZmxpbmUiLCAkc3RhdGVGaWxlKTsKLSAgICBlbHNlIGlm
ICgkY29tbWFuZCA9PSAiaW5jcmVhc2UtcmVzb3VyY2UtY291bnQiKQotICAgICAgICBoYW5kbGVJ
bmNyZWFzZVJlc291cmNlQ291bnRDb21tYW5kKCRfR0VUWydwYXRoJ10pOwotICAgIGVsc2UgaWYg
KCRjb21tYW5kID09ICJyZXNldC1yZXNvdXJjZS1jb3VudCIpCi0gICAgICAgIGhhbmRsZVJlc2V0
UmVzb3VyY2VDb3VudENvbW1hbmQoKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAiZ2V0LXJl
c291cmNlLWNvdW50IikKLSAgICAgICAgaGFuZGxlR2V0UmVzb3VyY2VDb3VudENvbW1hbmQoJF9H
RVRbJ3BhdGgnXSk7Ci0gICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gInN0YXJ0LXJlc291cmNlLXJl
cXVlc3QtbG9nIikKLSAgICAgICAgaGFuZGxlU3RhcnRSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0g
ICAgZWxzZSBpZiAoJGNvbW1hbmQgPT0gImNsZWFyLXJlc291cmNlLXJlcXVlc3QtbG9nIikKLSAg
ICAgICAgaGFuZGxlQ2xlYXJSZXNvdXJjZVJlcXVlc3RzTG9nKCk7Ci0gICAgZWxzZSBpZiAoJGNv
bW1hbmQgPT0gImdldC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyIpCi0gICAgICAgIGhhbmRsZUdldFJl
c291cmNlUmVxdWVzdHNMb2coKTsKLSAgICBlbHNlIGlmICgkY29tbWFuZCA9PSAibG9nLXJlc291
cmNlLXJlcXVlc3QiKQotICAgICAgICBoYW5kbGVMb2dSZXNvdXJjZVJlcXVlc3QoJF9HRVRbJ3Bh
dGgnXSk7Ci0gICAgZWxzZQotICAgICAgICBlY2hvICJVbmtub3duIGNvbW1hbmQ6ICIgLiAkY29t
bWFuZCAuICJcbiI7Ci0gICAgZXhpdCgpOwotfQotCi0kcmVxdWVzdGVkUGF0aCA9ICRfR0VUWydw
YXRoJ107Ci1nZW5lcmF0ZVJlc3BvbnNlKCRyZXF1ZXN0ZWRQYXRoKTsKLT8+CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRv
ci5weQkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9u
ZXR3b3JrLXNpbXVsYXRvci5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE3OCBAQAorIyEv
dXNyL2Jpbi9lbnYgcHl0aG9uMworCisjIFRoaXMgc2NyaXB0IGFjdHMgYXMgYSBzdGF0ZWZ1bCBw
cm94eSBmb3IgcmV0cmlldmluZyBmaWxlcy4gV2hlbiB0aGUgc3RhdGUgaXMgc2V0IHRvCisjIG9m
ZmxpbmUsIGl0IHNpbXVsYXRlcyBhIG5ldHdvcmsgZXJyb3Igd2l0aCBhIG5vbnNlbnNlIHJlc3Bv
bnNlLgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBkYXRl
dGltZSBpbXBvcnQgZGF0ZXRpbWUKK2Zyb20gcG9ydGFiaWxpdHlMYXllciBpbXBvcnQgZ2V0X3N0
YXRlLCBzZXRfc3RhdGUKK2Zyb20gdXJsbGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcworCitxdWVy
eSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxh
bmtfdmFsdWVzPVRydWUpCit0ZXN0ID0gcXVlcnkuZ2V0KCd0ZXN0JywgW05vbmVdKVswXQorY29t
bWFuZCA9IHF1ZXJ5LmdldCgnY29tbWFuZCcsIFtOb25lXSlbMF0KKworaWYgdGVzdCBpcyBOb25l
OgorICAgIHN5cy5zdGRvdXQud3JpdGUoCisgICAgICAgICdzdGF0dXM6IDUwMFxyXG4nCisgICAg
ICAgICdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJworICAgICAgICAndGVzdCBwYXJh
bWV0ZXIgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgdW5pcXVlIHRlc3QgbmFtZVxuJworICAgICkK
KyAgICBzeXMuZXhpdCgwKQorCisKK2RlZiB0ZW1wX3BhdGhfYmFzZSgpOgorICAgIHJldHVybiBv
cy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCB0ZXN0KQorCisKK3N0YXRlX2ZpbGUg
PSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1zdGF0ZScKKworCitkZWYgZ2VuZXJhdGVfbm9fY2FjaGVf
aHR0cF9oZWFkZXIoKToKKyAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAnRXhwaXJlczog
VGh1LCAwMSBEZWMgMjAwMyAxNjowMDowMCBHTVRcclxuJworICAgICAgICAnQ2FjaGUtQ29udHJv
bDogbm8tY2FjaGUsIG5vLXN0b3JlLCBtdXN0LXJldmFsaWRhdGVcclxuJworICAgICAgICAnUHJh
Z21hOiBuby1jYWNoZVxyXG4nCisgICAgKQorCisKK2RlZiBjb250ZW50X3R5cGUocGF0aCk6Cisg
ICAgcmV0dXJuIHsKKyAgICAgICAgJ2h0bWwnOiAndGV4dC9odG1sJywKKyAgICAgICAgJ21hbmlm
ZXN0JzogJ3RleHQvY2FjaGUtbWFuaWZlc3QnLAorICAgICAgICAnanMnOiAndGV4dC9qYXZhc2Ny
aXB0JywKKyAgICAgICAgJ3htbCc6ICdhcHBsaWNhdGlvbi94bWwnLAorICAgICAgICAneGh0bWwn
OiAnYXBwbGljYXRpb24veGh0bWwreG1sJywKKyAgICAgICAgJ3N2Zyc6ICdhcHBsaWNhdGlvbi9z
dmcreG1sJywKKyAgICAgICAgJ3hzbCc6ICdhcHBsaWNhdGlvbi94c2x0K3htbCcsCisgICAgICAg
ICdnaWYnOiAnaW1hZ2UvZ2lmJywKKyAgICAgICAgJ2pwZyc6ICdpbWFnZS9qcGVnJywKKyAgICAg
ICAgJ3BuZyc6ICdpbWFnZS9wbmcnCisgICAgfS5nZXQocGF0aC5zcGxpdCgnLicpWy0xXSwgJ3Rl
eHQvcGxhaW4nKQorCisKK2RlZiBnZW5lcmF0ZV9yZXNwb25zZShwYXRoKToKKyAgICBzdGF0ZSA9
IGdldF9zdGF0ZShzdGF0ZV9maWxlKQorICAgIGlmIHN0YXRlID09ICdPZmZsaW5lJzoKKyAgICAg
ICAgIyBTaW11bGF0ZSBhIG5ldHdvcmsgZXJyb3IgYnkgcmVwbHlpbmcgd2l0aCBhIG5vbnNlbnNl
IHJlc3BvbnNlLgorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKAorICAgICAgICAgICAgJ3N0YXR1
czogMzA3XHJcbicKKyAgICAgICAgICAgICdMb2NhdGlvbjoge31cclxuXHJcbicgICMgUmVkaXJl
Y3QgdG8gc2VsZi4KKyAgICAgICAgICAgICdJbnRlbnRpb25hbGx5IGluY29ycmVjdCByZXNwb25z
ZS4nLmZvcm1hdChvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9VUkknLCAnJykpCisgICAgICAgICkK
KyAgICBlbHNlOgorICAgICAgICAjIEEgbGl0dGxlIHNlY3VydXR5IGNoZWNraW5nIGNhbid0IGh1
cnQuCisgICAgICAgIGlmICcuLicgaW4gcGF0aDoKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3Jp
dGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorICAgICAgICAgICAgc3lzLmV4
aXQoMCkKKworICAgICAgICBpZiBsZW4ocGF0aCkgPiAwIGFuZCBwYXRoWzBdID09ICcvJzoKKyAg
ICAgICAgICAgIHBhdGggPSAnLi4nICsgcGF0aAorCisgICAgICAgIGlmICdhbGxvdy1jYWNoaW5n
JyBub3QgaW4gcXVlcnkua2V5cygpOgorICAgICAgICAgICAgZ2VuZXJhdGVfbm9fY2FjaGVfaHR0
cF9oZWFkZXIoKQorCisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAg
ICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgICAgICAgICAnTGFzdC1Nb2RpZmllZDoge30g
R01UXHJcbicKKyAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlOiB7fVxyXG5cclxuJy5mb3Jt
YXQoZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChvcy5zdGF0KHBhdGgpLnN0X210aW1lKS5zdHJm
dGltZSgnJWEsICVkICViICVZICVIOiVNOiVTJyksIGNvbnRlbnRfdHlwZShwYXRoKSkKKyAgICAg
ICAgICAgICkKKworICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICdyYicpIGFzIG9wZW5fZmls
ZToKKyAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICAgICAgICAgICAgICBz
eXMuc3Rkb3V0LmJ1ZmZlci53cml0ZShvcGVuX2ZpbGUucmVhZCgpKQorICAgICAgICBlbHNlOgor
ICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgnc3RhdHVzOiA0MDRcclxuXHJcbicpCisKKwor
ZGVmIGhhbmRsZV9pbmNyZWF0ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHBhdGgpOgorICAgIHJl
c291cmNlX2NvdW50X2ZpbGUgPSB0ZW1wX3BhdGhfYmFzZSgpICsgJy1jb3VudCcKKyAgICByZXNv
dXJjZV9jb3VudCA9IGdldF9zdGF0ZShyZXNvdXJjZV9jb3VudF9maWxlKQorICAgIHBpZWNlcyA9
IHJlc291cmNlX2NvdW50LnNwbGl0KCcgJykKKyAgICBjb3VudCA9IDAKKyAgICBpZiBsZW4ocGll
Y2VzKSA9PSAyIGFuZCBwaWVjZXNbMF0gPT0gcGF0aDoKKyAgICAgICAgY291bnQgPSAxICsgaW50
KHBpZWNlc1sxXSkKKyAgICBlbHNlOgorICAgICAgICBjb3VudCA9IDEKKworICAgIHNldF9zdGF0
ZShyZXNvdXJjZV9jb3VudF9maWxlLCAne30ge30nLmZvcm1hdChwYXRoLCBjb3VudCkpCisgICAg
Z2VuZXJhdGVfcmVzcG9uc2UocGF0aCkKKworCitkZWYgaGFuZGxlX3Jlc2V0X3Jlc291cmNlX2Nv
dW50X2NvbW1hbmQoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2Uo
KSArICctY291bnQnCisgICAgc2V0X3N0YXRlKHJlc291cmNlX2NvdW50X2ZpbGUsICcwJykKKyAg
ICBnZW5lcmF0ZV9ub19jYWNoZV9odHRwX2hlYWRlcigpCisgICAgc3lzLnN0ZG91dC53cml0ZSgn
c3RhdHVzOiAyMDBcclxuXHJcbicpCisKKworZGVmIGhhbmRsZV9nZXRfcmVzb3VyY2VfY291bnRf
Y29tbWFuZChwYXRoKToKKyAgICByZXNvdXJjZV9jb3VudF9maWxlID0gdGVtcF9wYXRoX2Jhc2Uo
KSArICctY291bnQnCisgICAgcmVzb3VyY2VfY291bnQgPSBnZXRfc3RhdGUocmVzb3VyY2VfY291
bnRfZmlsZSkKKyAgICBwaWVjZXMgPSByZXNvdXJjZV9jb3VudC5zcGxpdCgnICcpCisgICAgZ2Vu
ZXJhdGVfbm9fY2FjaGVfaHR0cF9oZWFkZXIoKQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ3N0YXR1
czogMjAwXHJcblxyXG4nKQorCisgICAgaWYgbGVuKHBpZWNlcykgPT0gMiBhbmQgcGllY2VzWzBd
ID09IHBhdGg6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoc3RyKHBpZWNlc1sxXSkpCisgICAg
ZWxzZToKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgnMCcpCisKKworZGVmIGhhbmRsZV9zdGFy
dF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKToKKyAgICByZXNvdXJjZV9sb2dfZmlsZSA9IHRlbXBf
cGF0aF9iYXNlKCkgKyAnLWxvZycKKyAgICBzZXRfc3RhdGUocmVzb3VyY2VfbG9nX2ZpbGUsICcn
KQorICAgIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4n
KQorCisKK2RlZiBoYW5kbGVfZ2V0X3Jlc291cmNlX3JlcXVlc3RzX2xvZygpOgorICAgIHJlc291
cmNlX2xvZ19maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctbG9nJworICAgIGdlbmVyYXRlX25v
X2NhY2hlX2h0dHBfaGVhZGVyKCkKKyAgICBzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6
IHRleHQvaHRtbFxyXG5cclxuJykKKworICAgIHdpdGggb3BlbihyZXNvdXJjZV9sb2dfZmlsZSwg
J3InKSBhcyBvcGVuX2ZpbGU6CisgICAgICAgIHN5cy5zdGRvdXQud3JpdGUob3Blbl9maWxlLnJl
YWQoKSkKKworCitkZWYgaGFuZGxlX2xvZ19yZXNvdXJjZV9yZXF1ZXN0KHBhdGgpOgorICAgIHJl
c291cmNlX2xvZ19maWxlID0gdGVtcF9wYXRoX2Jhc2UoKSArICctbG9nJworICAgIG5ld19kYXRh
ID0gJ1xuJyArIHBhdGgKKworICAgIHdpdGggb3BlbihyZXNvdXJjZV9sb2dfZmlsZSwgJ2EnKSBh
cyBvcGVuX2ZpbGU6CisgICAgICAgIG9wZW5fZmlsZS53cml0ZShuZXdfZGF0YSkKKworICAgIHN5
cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxyXG4nKQorCisKK2lm
IGNvbW1hbmQgaXMgbm90IE5vbmU6CisgICAgaWYgY29tbWFuZCA9PSAnY29ubmVjdCc6CisgICAg
ICAgIHNldF9zdGF0ZShzdGF0ZV9maWxlLCAnT25saW5lJykKKyAgICAgICAgc3lzLnN0ZG91dC53
cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuXHJcbicpCisgICAgZWxpZiBjb21tYW5k
ID09ICdkaXNjb25uZWN0JzoKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlX2ZpbGUsICdPZmZsaW5l
JykKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxu
XHJcbicpCisgICAgZWxpZiBjb21tYW5kID09ICdpbmNyZWFzZS1yZXNvdXJjZS1jb3VudCc6Cisg
ICAgICAgIGhhbmRsZV9pbmNyZWF0ZV9yZXNvdXJjZV9jb3VudF9jb21tYW5kKHF1ZXJ5LmdldCgn
cGF0aCcsIFsnJ10pWzBdKQorICAgIGVsaWYgY29tbWFuZCA9PSAncmVzZXQtcmVzb3VyY2UtY291
bnQnOgorICAgICAgICBoYW5kbGVfcmVzZXRfcmVzb3VyY2VfY291bnRfY29tbWFuZCgpCisgICAg
ZWxpZiBjb21tYW5kID09ICdnZXQtcmVzb3VyY2UtY291bnQnOgorICAgICAgICBoYW5kbGVfZ2V0
X3Jlc291cmNlX2NvdW50X2NvbW1hbmQocXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0pCisgICAg
ZWxpZiBjb21tYW5kID09ICdzdGFydC1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhh
bmRsZV9zdGFydF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKQorICAgIGVsaWYgY29tbWFuZCA9PSAn
bGVhci1yZXNvdXJjZS1yZXF1ZXN0LWxvZyc6CisgICAgICAgIGhhbmRsZV9zdGFydF9yZXNvdXJj
ZV9yZXF1ZXN0c19sb2coKQorICAgIGVsaWYgY29tbWFuZCA9PSAnZ2V0LXJlc291cmNlLXJlcXVl
c3QtbG9nJzoKKyAgICAgICAgaGFuZGxlX2dldF9yZXNvdXJjZV9yZXF1ZXN0c19sb2coKQorICAg
IGVsaWYgY29tbWFuZCA9PSAnbG9nLXJlc291cmNlLXJlcXVlc3QnOgorICAgICAgICBoYW5kbGVf
bG9nX3Jlc291cmNlX3JlcXVlc3QocXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0pCisgICAgZWxz
ZToKKyAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgKKyAgICAgICAgICAgICdDb250ZW50LVR5cGU6
IHRleHQvaHRtbFxyXG5cclxuJworICAgICAgICAgICAgJ1Vua25vd24gY29tbWFuZDoge31cbicu
Zm9ybWF0KGNvbW1hbmQpCisgICAgICAgICkKKyAgICAgICAgc3lzLmV4aXQoMCkKK2Vsc2U6Cisg
ICAgcmVxdWVzdF9wYXRoID0gcXVlcnkuZ2V0KCdwYXRoJywgWycnXSlbMF0KKyAgICBnZW5lcmF0
ZV9yZXNwb25zZShyZXF1ZXN0X3BhdGgpCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5weQpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFk
ZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3BvcnRh
YmlsaXR5TGF5ZXIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZXMvcG9ydGFiaWxpdHlMYXllci5weQkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcG9ydGFiaWxpdHlMYXllci5weQkod29ya2luZyBjb3B5
KQpAQCAtNzksNyArNzksNyBAQCBkZWYgZ2V0X3N0YXRlKGZpbGUsIGRlZmF1bHQ9J1VuaW5pdGlh
bGl6CiAgICAgICAgIHJldHVybiBmaWxlLnJlYWQoKQogCiAKLWRlZiBzZXRfc3RhdGUoc3RhdGUs
IGZpbGUpOgorZGVmIHNldF9zdGF0ZShmaWxlLCBzdGF0ZSk6CiAgICAgd2l0aCBvcGVuKGZpbGUs
ICd3JykgYXMgb3Blbl9maWxlOgogICAgICAgICBvcGVuX2ZpbGUud3JpdGUoc3RhdGUpCiAgICAg
cmV0dXJuIHN0YXRlCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRp
cmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVkaXJlY3QtdG8tdmlkZW8taWYtYWNjZXB0ZWQucGhwCShy
ZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZWRp
cmVjdC10by12aWRlby1pZi1hY2NlcHRlZC5waHAJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMCArMCww
IEBACi08P3BocAotaWYgKHN0cnBvcygkX1NFUlZFUlsnSFRUUF9BQ0NFUFQnXSwgJ3ZpZGVvLyon
KSAhPT0gZmFsc2UpIHsKLSAgICBoZWFkZXIoJ0hUVFAvMS4xIDMwMSBNb3ZlZCBQZXJtYW5lbnRs
eScpOwotICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkX0dFVFsndmlkZW8nXSk7Ci0gICAgaGVh
ZGVyKCdDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlJyk7Ci0gICAgcmV0
dXJuOwotfQotCi1oZWFkZXIoJ0hUVFAvMS4xIDQwMCBCYWQgUmVxdWVzdCcpOwotPz4KSW5kZXg6
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFj
Y2VwdGVkLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVkLnB5CShub25leGlzdGVudCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2VwdGVk
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTkgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhv
bjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgcGFy
c2VfcXMKKwordmlkZW8gPSBwYXJzZV9xcyhvcy5lbnZpcm9uLmdldCgnUVVFUllfU1RSSU5HJywg
JycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ3ZpZGVvJywgWycnXSlbMF0KKworc3lz
LnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWxcclxuJykKKworaWYgJ3ZpZGVv
LyonIGluIG9zLmVudmlyb24uZ2V0KCdIVFRQX0FDQ0VQVCcsICcnKToKKyAgICBzeXMuc3Rkb3V0
LndyaXRlKAorICAgICAgICAnc3RhdHVzOiAzMDFcclxuJworICAgICAgICAnTG9jYXRpb246IHt9
XHJcbicKKyAgICAgICAgJ0NhY2hlLUNvbnRyb2w6IG5vLWNhY2hlLCBtdXN0LXJldmFsaWRhdGVc
clxuXHJcbicuZm9ybWF0KHZpZGVvKQorICAgICkKKyAgICBzeXMuZXhpdCgwKQorCitzeXMuc3Rk
b3V0LndyaXRlKCdzdGF0dXM6IDQwMFxyXG5cclxuJykKClByb3BlcnR5IGNoYW5nZXMgb246IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3JlZGlyZWN0LXRvLXZpZGVvLWlmLWFjY2Vw
dGVkLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvcmVzZXQtdGVtcC1maWxlLnBocAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwCShyZXZpc2lvbiAy
NzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZp
bGUucGhwCShub25leGlzdGVudCkKQEAgLTEsMTkgKzAsMCBAQAotPD9waHAKLXJlcXVpcmVfb25j
ZSAncG9ydGFiaWxpdHlMYXllci5waHAnOwotCi1pZiAoIXN5c19nZXRfdGVtcF9kaXIoKSkgewot
ICAgIGVjaG8gIkZBSUw6IE5vIHRlbXAgZGlyIHdhcyByZXR1cm5lZC5cbiI7Ci0gICAgZXhpdCgp
OwotfQotCi0kdG1wRmlsZSA9IHN5c19nZXRfdGVtcF9kaXIoKSAuICIvIiAuICRfR0VUWydmaWxl
bmFtZSddOwotCi1pZiAoIWZpbGVfcHV0X2NvbnRlbnRzKCR0bXBGaWxlLCAidGVzdCIpKSB7Ci0g
ICAgZWNobyAiRkFJTDogdW5hYmxlIHRvIHdyaXRlIHRvIGZpbGU6ICIgLiAkdG1wRmlsZSAuICJc
biI7Ci0gICAgZXhpdCgpOwotfQotaWYgKCF1bmxpbmsoJHRtcEZpbGUpKSB7Ci0gICAgZWNobyAi
RkFJTDogVW5hYmxlIHRvIGRlbGV0ZSBmaWxlOiAiIC4gJHRtcEZpbGUgLiAiXG4iOwotICAgIGV4
aXQoKTsKLX0KLT8+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucGhwCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRGVsZXRlZDogc3ZuOmV4
ZWN1dGFibGUKIyMgLTEgKzAsMCAjIwotKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvcmVzZXQt
dGVtcC1maWxlLnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9yZXNldC10ZW1wLWZpbGUucHkJKHdvcmtpbmcgY29weSkKQEAgLTIsMTcgKzIs
MTIgQEAKIGltcG9ydCBvcwogaW1wb3J0IHN5cwogaW1wb3J0IHRlbXBmaWxlCi0KIGZyb20gdXJs
bGliLnBhcnNlIGltcG9ydCBwYXJzZV9xcwogCi1xdWVyeSA9IHBhcnNlX3FzKG9zLmVudmlyb24u
Z2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpCi1zdGF0ZUZp
bGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBxdWVyeS5nZXQoJ2ZpbGVu
YW1lJywgWydzdGF0ZS50eHQnXSlbMF0pCitmaWxlbmFtZSA9IHBhcnNlX3FzKG9zLmVudmlyb24u
Z2V0KCdRVUVSWV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpLmdldCgnZmls
ZW5hbWUnLCBbJ3N0YXRlLnR4dCddKVswXQorc3RhdGVfZmlsZSA9IG9zLnBhdGguam9pbih0ZW1w
ZmlsZS5nZXR0ZW1wZGlyKCksIGZpbGVuYW1lKQogCi1zeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50
LVR5cGU6IHRleHQvaHRtbFxyXG4nKQotc3lzLnN0ZG91dC53cml0ZSgnXHJcbicpCitzeXMuc3Rk
b3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQvaHRtbFxyXG5cclxuJykKIAotdHJ5OgotICAg
IGlmIG9zLnBhdGguZXhpc3RzKHN0YXRlRmlsZSk6Ci0gICAgICAgIG9zLnJlbW92ZShzdGF0ZUZp
bGUpCi1leGNlcHQgT1NFcnJvcjoKLSAgICBwcmludCgnRkFJTDogdW5hYmxlIHRvIHdyaXRlIHRv
IGZpbGU6IHt9Jy5mb3JtYXQoc3RhdGVGaWxlKSkKK2lmIG9zLnBhdGguZXhpc3RzKHN0YXRlX2Zp
bGUpOgorICAgIG9zLnJlbW92ZShzdGF0ZV9maWxlKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5waHAJKHJldmlzaW9uIDI3NjQzNikKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhwCShub25leGlz
dGVudCkKQEAgLTEsNyArMCwwIEBACi08P3BocAotdXNsZWVwKDQwMDAwMCk7Ci1oZWFkZXIoIkNv
bnRlbnQtVHlwZTogaW1hZ2UvcG5nIik7Ci1AcmVhZGZpbGUoInNxdWFyZTEwMC5wbmciKTsKLT8+
Ci0KLQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LWlt
YWdlLnB5CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2Vz
L3Nsb3ctaW1hZ2UucHkJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMiBAQAorIyEvdXNyL2Jp
bi9lbnYgcHl0aG9uMworCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCisKK3Rp
bWUuc2xlZXAoMC40KQorCitzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IGltYWdlL3Bu
Z1xyXG5cclxuJykKK3dpdGggb3Blbignc3F1YXJlMTAwLnBuZycsICdyYicpIGFzIG9wZW5fZmls
ZToKKyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICBzeXMuc3Rkb3V0LmJ1ZmZlci53cml0ZShv
cGVuX2ZpbGUucmVhZCgpKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0
YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5k
ZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90aWZ5LWRvbmUucGhw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ctbm90
aWZ5LWRvbmUucGhwCShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25lLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDggKzAs
MCBAQAotPD9waHAKLXVzbGVlcCgxMDAwMDApOwotPz4KLURPTkUhCi08c2NyaXB0PgotaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQotICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotPC9zY3JpcHQ+
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlcy9zbG93LW5vdGlmeS1kb25l
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3Nsb3ct
bm90aWZ5LWRvbmUucHkJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZXMvc2xvdy1ub3RpZnktZG9uZS5weQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEz
IEBACisjIS91c3IvYmluL2VudiBweXRob24zCisKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCisK
K3RpbWUuc2xlZXAoMC4xKQorCitzeXMuc3Rkb3V0LndyaXRlKCdDb250ZW50LVR5cGU6IHRleHQv
aHRtbFxyXG5cclxuJykKK3ByaW50KCcnJ0RPTkUhCis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworPC9zY3JpcHQ+JycnKQoKUHJv
cGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvc2xvdy1u
b3RpZnktZG9uZS5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsx
ICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNoLXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnBocAkocmV2
aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gt
dGVtcC1maWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDIyICswLDAgQEAKLTw/cGhwCi1yZXF1
aXJlX29uY2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGly
KCkpIHsKLSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAg
IGV4aXQoKTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dF
VFsnZmlsZW5hbWUnXTsKLQotJHN0YXQgPSBzdGF0KCR0bXBGaWxlKTsKLWlmICghJHN0YXQpIHsK
LSAgICBlY2hvICJGQUlMOiBzdGF0KCkgY2FsbCBmYWlsZWQuXG4iOwotICAgIGV4aXQoKTsKLX0K
LQotJG10aW1lID0gJHN0YXRbJ210aW1lJ10gKyAxOwotCi1pZiAoIXRvdWNoKCR0bXBGaWxlLCAk
bXRpbWUpKSB7Ci0gICAgZWNobyAiRkFJTDogdG91Y2goKSBjYWxsIGZhaWxlZC5cbiI7Ci19Ci0/
PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxl
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3RvdWNo
LXRlbXAtZmlsZS5weQkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZXMvdG91Y2gtdGVtcC1maWxlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC01LDkgKzUs
NiBAQCBpbXBvcnQgc3lzCiBpbXBvcnQgdGVtcGZpbGUKIGZyb20gdXJsbGliLnBhcnNlIGltcG9y
dCBwYXJzZV9xcwogCi1maWxlID0gX19maWxlX18uc3BsaXQoJzovY3lnd2luJylbLTFdCi1odHRw
X3Jvb3QgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChv
cy5wYXRoLmRpcm5hbWUoZmlsZSkpKSkKLQogZmlsZW5hbWUgPSBwYXJzZV9xcyhvcy5lbnZpcm9u
LmdldCgnUVVFUllfU1RSSU5HJywgJycpLCBrZWVwX2JsYW5rX3ZhbHVlcz1UcnVlKS5nZXQoJ2Zp
bGVuYW1lJywgWydzdGF0ZS50eHQnXSlbMF0KIHRtcEZpbGVQYXRoID0gb3MucGF0aC5qb2luKHRl
bXBmaWxlLmdldHRlbXBkaXIoKSwgZmlsZW5hbWUpCiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmlsZS5waHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnBocAkocmV2aXNpb24g
Mjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1m
aWxlLnBocAkobm9uZXhpc3RlbnQpCkBAIC0xLDE3ICswLDAgQEAKLTw/cGhwCi1yZXF1aXJlX29u
Y2UgJ3BvcnRhYmlsaXR5TGF5ZXIucGhwJzsKLQotaWYgKCFzeXNfZ2V0X3RlbXBfZGlyKCkpIHsK
LSAgICBlY2hvICJGQUlMOiBObyB0ZW1wIGRpciB3YXMgcmV0dXJuZWQuXG4iOwotICAgIGV4aXQo
KTsKLX0KLQotJHRtcEZpbGUgPSBzeXNfZ2V0X3RlbXBfZGlyKCkgLiAiLyIgLiAkX0dFVFsnZmls
ZW5hbWUnXTsKLQotaWYgKCFmaWxlX3B1dF9jb250ZW50cygkdG1wRmlsZSwgJF9HRVRbJ2RhdGEn
XSkpIHsKLSAgICBlY2hvICJGQUlMOiB1bmFibGUgdG8gd3JpdGUgdG8gZmlsZTogIiAuICR0bXBG
aWxlIC4gIlxuIjsKLSAgICBleGl0KCk7Ci19Ci0KLWVjaG8gJHRtcEZpbGU7Ci0/PgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZXMvd3JpdGUtdGVtcC1maWxlLnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VzL3dyaXRlLXRlbXAtZmls
ZS5weQkocmV2aXNpb24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZXMvd3JpdGUtdGVtcC1maWxlLnB5CSh3b3JraW5nIGNvcHkpCkBAIC01LDIyICs1LDE0IEBAIGlt
cG9ydCBzeXMKIGltcG9ydCB0ZW1wZmlsZQogZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNl
X3FzCiAKLWZpbGUgPSBfX2ZpbGVfXy5zcGxpdCgnOi9jeWd3aW4nKVstMV0KLWh0dHBfcm9vdCA9
IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKG9zLnBhdGgu
ZGlybmFtZShmaWxlKSkpKQotCiBxdWVyeSA9IHBhcnNlX3FzKG9zLmVudmlyb24uZ2V0KCdRVUVS
WV9TVFJJTkcnLCAnJyksIGtlZXBfYmxhbmtfdmFsdWVzPVRydWUpCi1maWxlbmFtZSA9IHF1ZXJ5
LmdldCgnZmlsZW5hbWUnLCBbJ3N0YXRlLnR4dCddKVswXQorZmlsZW5hbWUgPSBxdWVyeS5nZXQo
J2ZpbGVuYW1lJywgWyc0MDQudHh0J10pWzBdCiBkYXRhID0gcXVlcnkuZ2V0KCdkYXRhJywgWycn
XSlbMF0KIAotdG1wRmlsZSA9IG9zLnBhdGguam9pbih0ZW1wZmlsZS5nZXR0ZW1wZGlyKCksIGZp
bGVuYW1lKQordG1wX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUuZ2V0dGVtcGRpcigpLCBm
aWxlbmFtZSkKIHN5cy5zdGRvdXQud3JpdGUoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sXHJcblxy
XG4nKQogCi10cnk6Ci0gICAgZmlsZSA9IG9wZW4odG1wRmlsZSwgJ3cnKQotICAgIGZpbGUud3Jp
dGUoZGF0YSkKLSAgICBmaWxlLmNsb3NlKCkKLWV4Y2VwdDoKLSAgICBzeXMuc3Rkb3V0LndyaXRl
KGYnRkFJTDogdW5hYmxlIHRvIHdyaXRlIHRvIGZpbGU6IHt0bXBGaWxlfVxuJykKLSAgICBzeXMu
ZXhpdCgwKQord2l0aCBvcGVuKHRtcF9maWxlLCAndycpIGFzIG9wZW5fZmlsZToKKyAgICBvcGVu
X2ZpbGUud3JpdGUoZGF0YSkKIAotc3lzLnN0ZG91dC53cml0ZShmJ3t0bXBGaWxlfVxuJykKXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitzeXMuc3Rkb3V0LndyaXRlKHRtcF9maWxlKQpJbmRl
eDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUt
b3B0aW9ucy1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRp
b25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1sCShyZXZpc2lvbiAyNzY0MzYpCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1v
cHRpb25zLWFuY2VzdG9ycy1zYW1lLW9yaWdpbi1hbGxvdy5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xMCw2ICsxMCw2IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogPC9zY3JpcHQ+CiA8L2hl
YWQ+CiA8aGVhZD4KLTxpZnJhbWUgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvcmVzb3VyY2Vz
L2VjaG8taWZyYW1lLXNyYy5waHA/c3JjPWh0dHAlM0EvLzEyNy4wLjAuMSUzQTgwMDAvc2VjdXJp
dHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLWZyYW1lLWFuY2VzdG9y
cy1zYW1lLW9yaWdpbi1hbGxvdy5jZ2kiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9Imh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9yZXNvdXJjZXMvZWNoby1pZnJhbWUtc3JjLnB5P3NyYz1odHRwJTNBLy8x
MjcuMC4wLjElM0E4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUt
b3B0aW9ucy1mcmFtZS1hbmNlc3RvcnMtc2FtZS1vcmlnaW4tYWxsb3cuY2dpIj48L2lmcmFtZT4K
IDwvaGVhZD4KIDwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
cmVzb3VyY2VzL2FsbG93LWlmLW9yaWdpbi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L3Jlc291cmNlcy9hbGxvdy1pZi1vcmlnaW4ucHkJKHJldmlzaW9u
IDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvcmVzb3VyY2VzL2Fs
bG93LWlmLW9yaWdpbi5weQkod29ya2luZyBjb3B5KQpAQCAtMzMsNyArMzMsMTAgQEAgaWYgYWxs
b3dDcmVkczoKIGlmIGFsbG93Q2FjaGU6CiAgICAgc3lzLnN0ZG91dC53cml0ZSgnQ2FjaGUtQ29u
dHJvbDogbWF4LWFnZT0xMDBcclxuJykKIAotc3lzLnN0ZG91dC53cml0ZSgnQ29udGVudC1UeXBl
OiB7fVxyXG5cclxuJy5mb3JtYXQoY29udGVudFR5cGUpKQorc3lzLnN0ZG91dC53cml0ZSgKKyAg
ICAnQ29udGVudC1MZW5ndGg6IHt9XHJcbicKKyAgICAnQ29udGVudC1UeXBlOiB7fVxyXG5cclxu
Jy5mb3JtYXQob3MucGF0aC5nZXRzaXplKG9zLnBhdGguam9pbignLycuam9pbihfX2ZpbGVfXy5z
cGxpdCgnLycpWzA6LTFdKSwgbmFtZSkpLCBjb250ZW50VHlwZSkKKykKIHN5cy5zdGRvdXQuZmx1
c2goKQogd2l0aCBvcGVuKG9zLnBhdGguam9pbignLycuam9pbihfX2ZpbGVfXy5zcGxpdCgnLycp
WzA6LTFdKSwgbmFtZSksICdyYicpIGFzIGZpbGU6CiAgICAgc3lzLnN0ZG91dC5idWZmZXIud3Jp
dGUoZmlsZS5yZWFkKCkpClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zd2lwZS9zd2lwZS1iYWNrLXdpdGgtb3V0c3RhbmRpbmctbG9hZC1j
YW5jZWxsYXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3N3
aXBlL3N3aXBlLWJhY2std2l0aC1vdXRzdGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sCShy
ZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3N3aXBlL3N3aXBlLWJh
Y2std2l0aC1vdXRzdGFuZGluZy1sb2FkLWNhbmNlbGxhdGlvbi5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC01MSw3ICs1MSw3IEBAIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGlzRmlyc3RQ
YWdlKCkgPyAiZmlyc3QiIDogIjxpZnJhbWUgc3JjPScvcmVzb3VyY2VzL3Nsb3ctaW1hZ2UucGhw
Jz4iOworICAgIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gaXNGaXJzdFBhZ2UoKSA/ICJmaXJz
dCIgOiAiPGlmcmFtZSBzcmM9Jy9yZXNvdXJjZXMvc2xvdy1pbWFnZS5weSc+IjsKIAogICAgIGlm
IChpc0ZpcnN0UGFnZSgpKSB7CiAgICAgICAgIGlmIChoYXNJbml0aWFsaXplZFN3aXBlVGVzdCgp
KSB7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N0YXRlLWFm
dGVyLW5ldHdvcmstZXJyb3IuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3N0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3IuaHRtbAkocmV2aXNp
b24gMjc2NDM2KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9zdGF0
ZS1hZnRlci1uZXR3b3JrLWVycm9yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcg
QEAgZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCiBmdW5jdGlvbiBzZXROZXR3b3JrRW5hYmxlZChzdGF0
ZSkKIHsKICAgICB2YXIgcmVxID0gbmV3IFhNTEh0dHBSZXF1ZXN0OwotICAgIHJlcS5vcGVuKCJH
RVQiLCAiL3Jlc291cmNlcy9uZXR3b3JrLXNpbXVsYXRvci5waHA/dGVzdD14bWxodHRwcmVxdWVz
dC1zdGF0ZS1hZnRlci1uZXR3b3JrLWVycm9yJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0
IiA6ICJkaXNjb25uZWN0IiksIGZhbHNlKTsKKyAgICByZXEub3BlbigiR0VUIiwgIi9yZXNvdXJj
ZXMvbmV0d29yay1zaW11bGF0b3IucHk/dGVzdD14bWxodHRwcmVxdWVzdC1zdGF0ZS1hZnRlci1u
ZXR3b3JrLWVycm9yJmNvbW1hbmQ9IiArIChzdGF0ZSA/ICJjb25uZWN0IiA6ICJkaXNjb25uZWN0
IiksIGZhbHNlKTsKICAgICByZXEuc2VuZCgiIik7CiB9CiAKQEAgLTM0LDcgKzM0LDcgQEAgZnVu
Y3Rpb24gb25SZWFkeVN0YXRlQ2hhbmdlKCkKIHNldE5ldHdvcmtFbmFibGVkKGZhbHNlKTsKIHZh
ciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBv
blJlYWR5U3RhdGVDaGFuZ2U7Ci14aHIub3BlbignR0VUJywgJy9yZXNvdXJjZXMvbmV0d29yay1z
aW11bGF0b3IucGhwP3Rlc3Q9eG1saHR0cHJlcXVlc3Qtc3RhdGUtYWZ0ZXItbmV0d29yay1lcnJv
ciZwYXRoPS8nLCB0cnVlKTsKK3hoci5vcGVuKCdHRVQnLCAnL3Jlc291cmNlcy9uZXR3b3JrLXNp
bXVsYXRvci5weT90ZXN0PXhtbGh0dHByZXF1ZXN0LXN0YXRlLWFmdGVyLW5ldHdvcmstZXJyb3Im
cGF0aD0vJywgdHJ1ZSk7CiB4aHIuc2VuZChudWxsKTsKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJv
bC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUtaW52YWxpZGF0aW9uLnB5Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250
cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkJKHJldmlzaW9uIDI3NjQz
NikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2Fj
Y2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1jYWNoZS1pbnZhbGlkYXRpb24ucHkJKHdvcmtp
bmcgY29weSkKQEAgLTM2LDcgKzM2LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlhbGl6ZWQnOgog
ICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDEwXHJcbicKICAgICAgICAgICAg
ICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnT3B0aW9uc1NlbnQnLCBzdGF0
ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdPcHRpb25zU2VudCcpCiAgICAg
ZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTQ4LDcgKzQ4LDcgQEAgZWxpZiBzdGF0ZSA9PSAn
T3B0aW9uc1NlbnQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAnUEFTUzogRmly
c3QgUFVUIHJlcXVlc3QuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnRmlyc3RQVVRT
ZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAnRmlyc3RQVVRT
ZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNjEsNyArNjEsNyBAQCBlbGlm
IHN0YXRlID09ICdGaXJzdFBVVFNlbnQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFs
bG93LUhlYWRlcnM6IHgtd2Via2l0LXRlc3RcclxuJwogICAgICAgICAgICAgJ1xyXG4nCiAgICAg
ICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdTZWNvbmRPUFRJT05TU2VudCcsIHN0YXRlRmlsZSkK
KyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ1NlY29uZE9QVElPTlNTZW50JykKICAgICBl
bGlmIG9zLmVudmlyb24uZ2V0KCdSRVFVRVNUX01FVEhPRCcpID09ICdQVVQnOgogICAgICAgICBz
eXMuc3Rkb3V0LndyaXRlKAogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdp
bjogaHR0cDovLzEyNy4wLjAuMTo4MDAwXHJcbicKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdo
dC1jYWNoZS10aW1lb3V0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL2FjY2Vzcy1jb250cm9sLWJhc2ljLXByZWZsaWdodC1j
YWNoZS10aW1lb3V0LnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGln
aHQtY2FjaGUtdGltZW91dC5weQkod29ya2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQCBpZiBz
dGF0ZSA9PSAnVW5pbml0aWFsaXplZCc6CiAgICAgICAgICAgICAnQWNjZXNzLUNvbnRyb2wtTWF4
LUFnZTogMVxyXG4nCiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgKQotICAgICAgICBzZXRf
c3RhdGUoJ09wdGlvbnNTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVG
aWxlLCAnT3B0aW9uc1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkBAIC00OSw3
ICs0OSw3IEBAIGVsaWYgc3RhdGUgPT0gJ09wdGlvbnNTZW50JzoKICAgICAgICAgICAgICdcclxu
JwogICAgICAgICAgICAgJ1BBU1M6IEZpcnN0IFBVVCByZXF1ZXN0LicKICAgICAgICAgKQotICAg
ICAgICBzZXRfc3RhdGUoJ0ZpcnN0UFVUU2VudCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0
YXRlKHN0YXRlRmlsZSwgJ0ZpcnN0UFVUU2VudCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgp
CiAKQEAgLTYzLDcgKzYzLDcgQEAgZWxpZiBzdGF0ZSA9PSAnRmlyc3RQVVRTZW50JzoKICAgICAg
ICAgICAgICdBY2Nlc3MtQ29udHJvbC1NYXgtQWdlOiAxXHJcbicKICAgICAgICAgICAgICdcclxu
JwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnU2Vjb25kT1BUSU9OU1NlbnQnLCBzdGF0
ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdTZWNvbmRPUFRJT05TU2VudCcp
CiAgICAgZWxpZiBvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnUFVUJzoKICAg
ICAgICAgc3lzLnN0ZG91dC53cml0ZSgKICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxv
dy1PcmlnaW46IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMFxyXG4nCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1w
cmVmbGlnaHQtY2FjaGUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtYmFzaWMtcHJlZmxpZ2h0LWNh
Y2hlLnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0
dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1iYXNpYy1wcmVmbGlnaHQtY2FjaGUu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTM3LDcgKzM3LDcgQEAgaWYgc3RhdGUgPT0gJ1VuaW5pdGlh
bGl6ZWQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2U6IDEwXHJcbicKICAg
ICAgICAgICAgICdcclxuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgnT3B0aW9uc1Nl
bnQnLCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdPcHRpb25zU2Vu
dCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbCgpCiAKQEAgLTQ5LDcgKzQ5LDcgQEAgZWxpZiBz
dGF0ZSA9PSAnT3B0aW9uc1NlbnQnOgogICAgICAgICAgICAgJ1xyXG4nCiAgICAgICAgICAgICAn
UEFTUzogRmlyc3QgUFVUIHJlcXVlc3QuJwogICAgICAgICApCi0gICAgICAgIHNldF9zdGF0ZSgn
Rmlyc3RQVVRTZW50Jywgc3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCAn
Rmlyc3RQVVRTZW50JykKICAgICBlbHNlOgogICAgICAgICBmYWlsKCkKIApAQCAtNjksNyArNjks
NyBAQCBlbGlmIHN0YXRlID09ICdGaXJzdFBVVFNlbnQnOgogICAgICAgICAgICAgJ0FjY2Vzcy1D
b250cm9sLUFsbG93LUhlYWRlcnM6IHgtd2Via2l0LXRlc3RcclxuJwogICAgICAgICAgICAgJ1xy
XG4nCiAgICAgICAgICkKLSAgICAgICAgc2V0X3N0YXRlKCdGQUlMU2Vjb25kT1BUSU9OU1NlbnQn
LCBzdGF0ZUZpbGUpCisgICAgICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdGQUlMU2Vjb25kT1BU
SU9OU1NlbnQnKQogICAgIGVsc2U6CiAgICAgICAgIGZhaWwoKQogCkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVm
bGlnaHQtZGVuaWVkLXhzcmYucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWRlbmll
ZC14c3JmLnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3Jlc291cmNlcy9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtZGVuaWVkLXhz
cmYucHkJKHdvcmtpbmcgY29weSkKQEAgLTUzLDcgKzUzLDcgQEAgZWxpZiBzdGF0ZSA9PSAnVW5p
bml0aWFsaXplZCc6CiAgICAgICAgICAgICAnXHJcbicKICAgICAgICAgICAgICdGQUlMOiBUaGlz
IHJlcXVlc3Qgc2hvdWxkIG5vdCBiZSBkaXNwbGF5ZWRcbicKICAgICAgICAgKQotICAgICAgICBz
ZXRfc3RhdGUoJ0RlbmllZCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmls
ZSwgJ0RlbmllZCcpCiAgICAgZWxzZToKICAgICAgICAgZmFpbChzdGF0ZSkKIApAQCAtNjcsNyAr
NjcsNyBAQCBlbGlmIHN0YXRlID09ICdEZW5pZWQnOgogICAgICAgICAgICAgJ1BBU1M6IFJlcXVl
c3Qgc3VjY2Vzc2Z1bGx5IGJsb2NrZWQuXG4nCiAgICAgICAgICkKICAgICBlbHNlOgotICAgICAg
ICBzZXRfc3RhdGUoJ0RlbnkgSWdub3JlZCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRl
KHN0YXRlRmlsZSwgJ0RlbnkgSWdub3JlZCcpCiAgICAgICAgIGZhaWwoc3RhdGUpCiAKIGVsaWYg
c3RhdGUgPT0gJ0RlbnkgSWdub3JlZCc6CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1jdXN0b20taGVhZGVyLnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWN1c3Rv
bS1oZWFkZXIucHkJKHJldmlzaW9uIDI3NjQzNikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWN1c3RvbS1oZWFkZXIucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDkgKzIzLDkgQEAgc3RhdGVGaWxlID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLmdl
dHRlbQogCiBpZiBvcy5lbnZpcm9uLmdldCgnUkVRVUVTVF9NRVRIT0QnKSA9PSAnT1BUSU9OUyc6
CiAgICAgaWYgb3MuZW52aXJvbi5nZXQoJ0hUVFBfWF9DVVNUT01fSEVBREVSJyk6Ci0gICAgICAg
IHNldF9zdGF0ZSgnRkFJTCcsIHN0YXRlRmlsZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmls
ZSwgJ0ZBSUwnKQogICAgIGVsc2U6Ci0gICAgICAgIHNldF9zdGF0ZSgnUEFTUycsIHN0YXRlRmls
ZSkKKyAgICAgICAgc2V0X3N0YXRlKHN0YXRlRmlsZSwgJ1BBU1MnKQogZWxzZToKICAgICBpZiBv
cy5lbnZpcm9uLmdldCgnSFRUUF9YX0NVU1RPTV9IRUFERVInKToKICAgICAgICAgc3lzLnN0ZG91
dC53cml0ZShnZXRfc3RhdGUoc3RhdGVGaWxlLCBkZWZhdWx0PSdGQUlMJykpCkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVjdC1jcm9z
cy1vcmlnaW4tdHJpcG1pbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVkaXJlY3QtY3Jvc3Mtb3JpZ2luLXRyaXBtaW5l
LnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3Jlc291cmNlcy9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tdHJpcG1pbmUucHkJKHdvcmtp
bmcgY29weSkKQEAgLTM3LDEzICszNywxMyBAQCBpZiBtZXRob2QgPT0gJ09QVElPTlMnOgogCiAj
IE9ubHkgYWxsb3cgc2ltcGxlIGNyb3NzLXNpdGUgcmVxdWVzdHMgLSBzaW5jZSB3ZSBkaWQgbm90
IGFsbG93IHByZWZsaWdodCwgdGhpcyBpcyBhbGwgd2Ugc2hvdWxkIGV2ZXIgZ2V0LgogaWYgbWV0
aG9kIG5vdCBpbiBbJ0dFVCcsICdIRUFEJywgJ1BPU1QnXToKLSAgICBzZXRfc3RhdGUoJ0ZBSUwu
IE5vbi1zaW1wbGUgbWV0aG9kIHt9LicuZm9ybWF0KG1ldGhvZCksIHN0YXRlRmlsZSkKKyAgICBz
ZXRfc3RhdGUoc3RhdGVGaWxlLCAnRkFJTC4gTm9uLXNpbXBsZSBtZXRob2Qge30uJy5mb3JtYXQo
bWV0aG9kKSkKICAgICBzeXMuZXhpdCgwKQogCiBpZiBjb250ZW50IGFuZCBub3QgcmUubWF0Y2go
cideYXBwbGljYXRpb25cL3hcLXd3d1wtZm9ybVwtdXJsZW5jb2RlZCg7LispPyQnLCBjb250ZW50
VHlwZSkgXAogICAgIGFuZCBub3QgcmUubWF0Y2gocidebXVsdGlwYXJ0XC9mb3JtXC1kYXRhKDsu
Kyk/JCcsIGNvbnRlbnRUeXBlKSBcCiAgICAgYW5kIG5vdCByZS5tYXRjaChyJ150ZXh0XC9wbGFp
big7LispPyQnLCBjb250ZW50VHlwZSk6Ci0gICAgc2V0X3N0YXRlKCdGQUlMLiBOb24tc2ltcGxl
IGNvbnRlbnQgdHlwZToge30uJy5mb3JtYXQoY29udGVudFR5cGUpLCBzdGF0ZUZpbGUpCisgICAg
c2V0X3N0YXRlKHN0YXRlRmlsZSwgJ0ZBSUwuIE5vbi1zaW1wbGUgY29udGVudCB0eXBlOiB7fS4n
LmZvcm1hdChjb250ZW50VHlwZSkpCiAKIGlmIG9zLmVudmlyb24uZ2V0KCdIVFRQX1hfV0VCS0lU
X1RFU1QnKToKLSAgICBzZXRfc3RhdGUoJ0ZBSUwuIEN1c3RvbSBoZWFkZXIgc2VudCB3aXRoIGEg
c2ltcGxlIHJlcXVlc3QuJywgc3RhdGVGaWxlKQorICAgIHNldF9zdGF0ZShzdGF0ZUZpbGUsICdG
QUlMLiBDdXN0b20gaGVhZGVyIHNlbnQgd2l0aCBhIHNpbXBsZSByZXF1ZXN0LicpCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1i
YWQtcGFzc3dvcmQvY291bnQtZmFpbHVyZXMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvcmVtZW1iZXItYmFkLXBhc3N3b3Jk
L2NvdW50LWZhaWx1cmVzLnB5CShyZXZpc2lvbiAyNzY0MzYpCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9yZW1lbWJlci1iYWQtcGFzc3dvcmQvY291
bnQtZmFpbHVyZXMucHkJKHdvcmtpbmcgY29weSkKQEAgLTM2LDcgKzM2LDcgQEAgaWYgY29tbWFu
ZDoKICAgICBpZiBjb21tYW5kID09ICdzdGF0dXMnOgogICAgICAgICBzeXMuc3Rkb3V0LndyaXRl
KGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkKICAgICBlbGlmIGNvbW1hbmQgPT0g
J3Jlc2V0JzoKLSAgICAgICAgc3lzLnN0ZG91dC53cml0ZShzZXRfc3RhdGUoJzAnLCBzdGF0ZUZp
bGUpKQorICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKHNldF9zdGF0ZShzdGF0ZUZpbGUsICcwJykp
CiAgICAgc3lzLmV4aXQoMCkKIAogY3JlZGVudGlhbHMgPSBiYXNlNjQuYjY0ZGVjb2RlKG9zLmVu
dmlyb24uZ2V0KCdIVFRQX0FVVEhPUklaQVRJT04nLCAnIE9nPT0nKS5zcGxpdCgnICcpWzFdKS5k
ZWNvZGUoKS5zcGxpdCgnOicpCkBAIC01Nyw0ICs1Nyw0IEBAIGVsc2U6CiAgICAgICAgICdBdXRo
ZW50aWNhdGlvbiBjYW5jZWxlZCcKICAgICApCiAgICAgaWYgdXNlcm5hbWU6Ci0gICAgICAgIHNl
dF9zdGF0ZShzdHIoaW50KGdldF9zdGF0ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkgKyAxKSwg
c3RhdGVGaWxlKQorICAgICAgICBzZXRfc3RhdGUoc3RhdGVGaWxlLCBzdHIoaW50KGdldF9zdGF0
ZShzdGF0ZUZpbGUsIGRlZmF1bHQ9JzAnKSkgKyAxKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>